
    z                        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dlmZ e	j                  e	j                   e	j                   e	j"                  j$                         G d	 d
e	j&                                             Ze	j                   e	j                   e	j"                  j*                         G d de                    Zy)$Establish peering for Cache Volumes.    )absolute_import)division)unicode_literals)client)base)flags)concept_parsersc                   \    e Zd ZdZej
                  j                  ZdddZe	d        Z
d Zy)EstablishPeeringr   z9          Establish peering for Cache Volumes.
          a?            The following command establishes peering for Cache Volume named NAME using the arguments specified:

              $ {command} NAME --location=us-central1 --peer-cluster-name=peer-cluster-name1 --peer-svm-name=peer-svm-name1 --peer-volume-name=peer-volume-name1 --peer-ip-addresses=1.1.1.1,2.2.2.2
          )DESCRIPTIONEXAMPLESc                 F   t        j                  t        j                  d      g      j	                  |        t        j
                  |        t        j                  |        t        j                  |        t        j                  |        t        j                  |        y)z3Add args for establishing peering for Cache Volume.z*The Cache Volume to establish peering for.N)
r
   ConceptParserr	   GetVolumePresentationSpecAddToParserAddResourcePeerClusterNameArgAddResourcePeerSvmNameArgAddResourcePeerVolumeNameArgAddResourcePeerIpAddressesArgAddResourceAsyncFlag)parsers    /lib/surface/netapp/volumes/establish_peering.pyArgszEstablishPeering.Args.   sz     !!''8	
#  {6	''/	##F+	&&v.	''/	v&    c                 @   |j                   j                  j                         }t        j                  | j
                        }|j                  |j                  |j                  |j                  |j                        }|j                  |||j                        }|S )z"Run the establish peering command.)release_track)CONCEPTSvolumeParsevolumes_clientVolumesClient_RELEASE_TRACK(ParseEstablishVolumePeeringRequestConfigpeer_cluster_namepeer_svm_namepeer_volume_namepeer_ip_addressesr   async_)selfargs
volume_refr   'establish_volume_peering_request_configr   s         r   RunzEstablishPeering.Run<   s    %%++-J))))F
 	77""!!""		
 , $$/F
 Mr   N)__name__
__module____qualname____doc__r   ReleaseTrackALPHAr#   detailed_helpstaticmethodr   r.    r   r   r   r      sB     -$$**.		- ' 'r   r   c                   <    e Zd ZdZej
                  j                  Zy)EstablishPeeringBetar   N)r/   r0   r1   r2   r   r3   BETAr#   r7   r   r   r9   r9   U   s     -$$)).r   r9   N)r2   
__future__r   r   r   %googlecloudsdk.api_lib.netapp.volumesr   r!   googlecloudsdk.callioper   !googlecloudsdk.command_lib.netappr	   (googlecloudsdk.command_lib.util.conceptsr
   HiddenDefaultUniverseOnlyReleaseTracksr3   r4   Commandr   r:   r9   r7   r   r   <module>rD      s    + &  ' J ( 3 D D%%++,4t|| 4 -  4n D%%**+*+ * , *r   