
    
                        d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z d Z ej                  ej                  j                         G d	 d
ej                                Z ej                  ej                  j$                         G d de             Z ej                  ej                  j(                         G d de             Zdddde_        y)zCommand for describing disks.    )absolute_import)division)unicode_literals)base_classes)base)flagsc                 F    t         j                  j                  | d       y )Ndescribe)operation_type)Describedisk_argAddArgumentparsers    %lib/surface/compute/disks/describe.py_CommonArgsr      s    
zB    c                   ,    e Zd ZdZed        Zd Zd Zy)r   Describe a Compute Engine disk.c                 X    t        j                  d      t        _        t	        |        y NF)pluraldisks_flagsMakeDiskArgr   r   r   r   s    r   ArgszDescribe.Args#       #//u=Hr   c                      y)Ncompute.disks )selfs    r   
CollectionzDescribe.Collection(   s    r   c                    t        j                  | j                               }|j                  j                  }|j                  j
                  }t        j                  j                  ||j                        }|j                         dk(  r|j                  }|j                  }n+|j                         dk(  r|j                  }|j                  }j                   di |j!                               S )Nr   zcompute.regionDisksr    )r   ComputeApiHolderReleaseTrackclientapitools_clientmessagesr   r   ResolveAsResource	resourcesr"   disksComputeDisksGetRequestregionDisksComputeRegionDisksGetRequestGetAsDict)r!   argsholderr&   r(   disk_refservicerequest_types           r   RunzDescribe.Run+   s    **4+<+<+>?F]]**F}}%%H  2249I9IJH/g44l				"7	7""g::l;;|8hoo&7899r   N)__name__
__module____qualname____doc__staticmethodr   r"   r6   r    r   r   r   r      s!    ' :r   r   c                        e Zd ZdZed        Zy)DescribeBetar   c                 X    t        j                  d      t        _        t	        |        y r   r   r   s    r   r   zDescribeBeta.Args@   r   r   Nr7   r8   r9   r:   r;   r   r    r   r   r=   r=   <       ' r   r=   c                        e Zd ZdZed        Zy)DescribeAlphar   c                 X    t        j                  d      t        _        t	        |        y r   r   r   s    r   r   zDescribeAlpha.ArgsJ   r   r   Nr?   r    r   r   rB   rB   F   r@   r   rB   zDescribe a Compute Engine diskzj        *{command}* displays all data associated with a Compute Engine
        disk in a project.
        z}        To describe the disk 'my-disk' in zone 'us-east1-a', run:

            $ {command} my-disk --zone=us-east1-a
        )briefDESCRIPTIONEXAMPLESN)r:   
__future__r   r   r   googlecloudsdk.api_lib.computer   googlecloudsdk.callioper   (googlecloudsdk.command_lib.compute.disksr   r   r   ReleaseTracksr%   GADescribeCommandr   BETAr=   ALPHArB   detailed_helpr    r   r   <module>rQ      s     $ &  ' 7 ( IC D%%(():t## : *:8 D%%**+8  , D%%++,H  - .	
	 r   