
                         6    S r SSKJr  SSKJr   " S S\5      rg)z3Database Migration Service connection profiles API.    )
list_pager)api_utilc                   0    \ rS rSrSrS rS rS rS rSr	g)	ObjectsClient   z4Client for migration job objects service in the API.c                    [         R                  " U5      U l        [         R                  " U5      U l        [         R
                  " U5      U l        U R                  R                  U l        [         R                  " U5      U l
        Xl        g )N)r   GetApiVersion_api_versionGetClientInstanceclientGetMessagesModulemessages(projects_locations_migrationJobs_objects_serviceGetResourceParserresource_parser_release_track)selfrelease_tracks     8lib/googlecloudsdk/api_lib/database_migration/objects.py__init__ObjectsClient.__init__   sc     ..}=D,,];DK..}=DMKKHHDM#55mDD'    c           	          U R                   R                  nU" UR                  5       S9n[        R                  " U R
                  UUR                  UR                  SSS9$ )zGet the list of objects in a migration job.

Args:
  migration_job_ref: The migration job for which to list objects.
  args: parsed command line arguments

Returns:
  An iterator over all the matching migration job objects.
)parentmigrationJobObjectspageSize)servicerequestlimit
batch_sizefieldbatch_size_attribute)r   =DatamigrationProjectsLocationsMigrationJobsObjectsListRequestRelativeNamer   YieldFromListr   r    	page_size)r   migration_job_refargslist_req_typelist_reqs        r   ListObjectsClient.List!   s]     	SS  $5$B$B$DEH##jj>>#' r   c                 N   U R                   R                  UR                  UR                  UR                  U R                  U5      S9nU R                   R                  nU" U R                   R                  US9UR                  5       S9nU R                  R                  U5      $ )a  Lookup a migration job object.

Args:
  migration_job_ref: The migration job name to which the object belongs.
  args: argparse.Namespace, The arguments that this command was invoked
    with.

Returns:
  MigrationJobObject: the looked up  migration job object.
)databaseschematabletype)sourceObjectIdentifier)lookupMigrationJobObjectRequestr   )r   SourceObjectIdentifierr/   r0   r1   GetType?DatamigrationProjectsLocationsMigrationJobsObjectsLookupRequestLookupMigrationJobObjectRequestr%   r   Lookup)r   r(   r)   source_object_identifierlookup_req_type
lookup_reqs         r   r9   ObjectsClient.Lookup9   s      $}}CC{{jj\\$	  D   	UU  !(,(U(U#; )V )
 !--/	J ==
++r   c                     UR                  S5      (       a9  U R                  R                  R                  R	                  UR
                  5      $ U R                  R                  R                  R	                  S5      $ )Nr2   DATABASE)IsKnownAndSpecifiedr   r5   TypeValueValuesEnumlookup_by_namer2   )r   r)   s     r   r6   ObjectsClient.GetTypeV   sa      ((]]11EETT
))  MM00DD^J')r   )r
   r   r   r   r   r   N)
__name__
__module____qualname____firstlineno____doc__r   r,   r9   r6   __static_attributes__ r   r   r   r      s    <(0,:)r   r   N)rH   apitools.base.pyr   )googlecloudsdk.api_lib.database_migrationr   objectr   rJ   r   r   <module>rN      s     : ( >F)F F)r   