B 劇c@s:ddlZddlZeeZGdddZGdddZdS)Nc@s2eZdZdZd ddZddZddZd d ZdS) ResourceMetaz9 An object containing metadata about a resource. NcCs.||_|dkrg}||_||_||_||_dS)N) service_name identifiersclientdataresource_model)selfrrrrrr o/private/var/folders/8c/hx9_v10d5x38qmnzt13b7b8j1k3n5b/T/pip-target-x6xd5gna/lib/python/boto3/resources/base.py__init__s zResourceMeta.__init__cCsd|j|jS)Nz"ResourceMeta('{}', identifiers={}))formatrr)rr r r __repr__2szResourceMeta.__repr__cCs |jj|jjkrdS|j|jkS)NF) __class____name____dict__)rotherr r r __eq__7szResourceMeta.__eq__cCs |j}|d}t|f|S)z8 Create a copy of this metadata object. r)rcopypopr)rparamsrr r r r>s  zResourceMeta.copy)NNNN)r __module__ __qualname____doc__r r rrr r r r rs rc@s4eZdZdZdZddZddZddZd d ZdS) ServiceResourcez A base class for resources. :type client: botocore.client :param client: A low-level Botocore client instance NcOs|j|_|ddk r*|d|j_nt|jj|j_x,t|D] \}}t|d|jj||qFWxH| D]<\}}|dkrqt||jjkrt d|t|d||qtWx.|jjD]"}t ||dkrt d|dqWdS)Nr_zUnknown keyword argument: zRequired parameter z not set) metargetrboto3r enumeratesetattrritems ValueErrorgetattr)rargskwargsivaluename identifierr r r r _s  zServiceResource.__init__c CsJg}x.|jjD]"}||dtt||qWd|jjd|S)N=z{}({})z, ) rrappendreprr"r rrjoin)rrr(r r r r szServiceResource.__repr__cCsB|jj|jjkrdSx(|jjD]}t||t||krdSqWdS)NFT)rrrrr")rrr(r r r rs zServiceResource.__eq__cCs:g}x |jjD]}|t||qWt|jjt|fS)N)rrr*r"hashrrtuple)rrr(r r r __hash__szServiceResource.__hash__) rrrrrr r rr/r r r r rGs    r)loggingr getLoggerrloggerrrr r r r s 2