
                         T   S r SSKJr  SSKJr  SSKJr  SSKJr  SSKJ	r	  SSK
Jr  SSK
Jr  SSKJr  SS	KJr  SS
KJr  SSKJr  SrSrSrSrSrSr " S S\5      r\R4                  " \R6                  R8                  5      \R:                   " S S\R<                  5      5       5       rg)zSImplementation of gcloud managed kafka schema registries subjects describe command.    )absolute_import)division)unicode_literals)
exceptions)apis)base)	arguments)util)log)	resourcesz	projects/z
locations/zschemaRegistries/z
/subjects/z
/contexts/z|
    table(
      subject:format='yaml(compatibility, subject.compatibility, mode, subject.mode, name, subject.name)'
    )
c                       \ rS rSrSrS rSrg)_Results+   z@Encapsulate results into a single object to fit the Run() model.c                     Xl         g )Nsubject)selfr   s     @lib/surface/managed_kafka/schema_registries/subjects/describe.py__init___Results.__init__.   s    L    r   N)__name__
__module____qualname____firstlineno____doc__r   __static_attributes__ r   r   r   r   +   s
    Hr   r   c                   .    \ rS rSrSr\S 5       rS rSrg)Describe2   zDescribe a subject in a schema registry with all of its fields.

## EXAMPLES

 Describe the subject in a schema registry with all of its fields:

  $ {command} --project=PROJECT_ID --location=LOCATION_ID
  --registry=SCHEMA_REGISTRY_ID
c                     U R                   R                  [        5        U R                  S[        SS9  [
        R                  " U 5        g)z Register flags for this command.z	--contextzThe context of the subject.)typehelpN)display_info	AddFormatSUBJECT_FORMATadd_argumentstrr	   AddSubjectArgToParser)parsers    r   ArgsDescribe.Args?   sD     !!.1
*   ##F+r   c           	      R   [         R                  " SS5      nUR                  n[        R                  " UR
                  5      nUR                  nUR                  nUR                  R                  R                  5       R                  n[        R                  R                  UR                  SUUUUS.S9nUR                  5       R                  5       n	UR                  5       n
UR                   (       a4  U	 ["         UR                    [$         U 3n
U	 ["         UR                    3n	[&        R(                  R+                  SR-                  U5      S-   5        UR/                  U	 SU 3S	9nUR1                  U	 S
U 3S	9nSnSn UR2                  R5                  US9n[        R6                  " UR8                  5      n URF                  R5                  US9n[        RH                  " URJ                  5      nU
UUS.n[M        U5      $ ! [:        R<                   a  n[>        R@                  " U[        RB                  5      nSURD                  ;   a$  [>        R@                  " USR-                  U5      S9e UR/                  U	 S3S	9nUR2                  R5                  US9n[        R6                  " UR8                  5      nU S3n SnAGN! [:        R<                   a  n[>        R@                  " U5      eSnAff = fSnAff = f! [:        R<                   a     UR1                  U	 S3S	9nURF                  R5                  US9n[        RH                  " URJ                  5      nU S3n GNw! [:        R<                   a  n[>        R@                  " U5      eSnAff = ff = f)zCalled when the user runs gcloud managed-kafka schema-registries subjects describe ...

Args:
  args: all the arguments that were provided to this command invocation.

Returns:
  The subject.
managedkafkav1z9managedkafka.projects.locations.schemaRegistries.subjects)
projectsIdlocationsIdschemaRegistriesId
subjectsId)
collectionparamszDescribing subject [{}].
z/mode/)namez/config/None)requestzResource not foundzSubject {} not found.)error_formatz/modez (from registry)Nz/config)r8   modecompatibility)'r   GetClientInstanceMESSAGES_MODULEr
   ParseProjectprojectlocationregistryCONCEPTSr   Parser4   r   REGISTRYParentRelativeNamecontextCONTEXTS_RESOURCE_PATHSUBJECTS_RESOURCE_PATHr   statusPrintformat;ManagedkafkaProjectsLocationsSchemaRegistriesModeGetRequest=ManagedkafkaProjectsLocationsSchemaRegistriesConfigGetRequest(projects_locations_schemaRegistries_modeGet	ParseModer<   apitools_exceptionsHttpNotFoundErrorr   HttpExceptionHTTP_ERROR_FORMATmessage*projects_locations_schemaRegistries_configParseCompatibilityr=   r   )r   argsclientrX   
project_idrB   schema_registry_idr   subject_run_resourceschema_registry_resourcesubject_resource_pathsubject_mode_requestsubject_config_requestr<   r=   subject_modee	api_errorschema_registry_mode_requestschema_registry_modeinner_esubject_configschema_registry_config_requestschema_registry_configverbose_subjects                            r   RunDescribe.RunM   s    ##ND9F$$G""4<<0J}}Hmm##))+66G$--33N$#"4!	
 4 	  4::<IIK0==?||!9 :;Q:RSWS_S_R`aw`x  zA  yB  C%&'=&>t||n
M  JJ/66w?$FG 	KK,-VG9= 	L 	
  	MM,-XgY? 	N 	
  DM0DDHH& I l ^^L--.d00HHLL( M n --n.J.JKm( &&O O$$i 00 0**1d.D.DEi	!2!2	2&&3::7C
 	
0OO017 P  	% ;;??4 @  	
 ~~2778'( 22 0&&w//0'08 00 00)0)n)n,-W5 *o *
& ==AA6 B  	
 //"00
 )/)9: 22 0&&w//00sc   	9H 9L L!AL;AKL %K;;L  LLN& AM33N"NN""N&r   N)	r   r   r   r   r   staticmethodr,   rn   r   r   r   r   r    r    2   s!     , ,j%r   r    N) r   
__future__r   r   r   apitools.base.pyr   rT   googlecloudsdk.api_lib.utilr   googlecloudsdk.callioper   (googlecloudsdk.command_lib.managed_kafkar	   r
   googlecloudsdk.corer   r   PROJECTS_RESOURCE_PATHLOCATIONS_RESOURCE_PATHSCHEMA_REGISTRIES_RESOURCE_PATHrK   rJ   r'   objectr   ReleaseTracksReleaseTrackALPHADefaultUniverseOnlyDescribeCommandr    r   r   r   <module>r      s    Z &  ' > , ( . > 9 # )$ & "5 % % v  D%%++,C%t## C%  -C%r   