
    1                     
   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	\R                  5      r " S
 S\5      r " S S\\
R$                  5      r " S S\5      r " S S\\
R(                  5      rg)z9Base classes for commands for MembershipFeature resource.    )absolute_import)division)unicode_literals)
exceptions)base)infoc                   8    \ rS rSrSrSr\S 5       rS rS r	Sr
g)	MembershipFeatureCommand   zZMembershipFeatureCommand is a mixin adding common utils to the MembershipFeature commands. c                 B    [         R                  " U R                  5      $ )z2The Feature info entry for this command's Feature.)r   Getmf_name)selfs    Ilib/googlecloudsdk/command_lib/container/fleet/membershipfeatures/base.pyfeature MembershipFeatureCommand.feature   s     88DLL!!    c                 $    U SU R                    3$ )zBBuilds the full MembershipFeature name, using the membership path.z
/features/)r   r   membership_paths     r   MembershipFeatureResourceName6MembershipFeatureCommand.MembershipFeatureResourceName$   s    j77r   c                 V    U R                   R                  U R                  U5      5      $ )z4Fetch this command's MembershipFeature from the API.)hubclient_v2GetMembershipFeaturer   r   s     r   r   -MembershipFeatureCommand.GetMembershipFeature(   s)    11**?; r    N)__name__
__module____qualname____firstlineno____doc__r   propertyr   r   r   __static_attributes__r   r   r   r
   r
      s&    b'" "8r   r
   c                       \ rS rSrSrS rSrg)UpdateCommandMixin/   z8A mixin for functionality to update a MembershipFeature.c                     U R                  U5      nU R                  R                  XBU5      nSU S3nU R                  U R                  R                  UUSS9$ )NWaiting for MembershipFeature z to be updatedFmessagewarnings)r   r   UpdateMembershipFeatureWaitForHubOpmembership_feature_waiter)r   r   maskpatchmembershipfeature_pathopmsgs          r   UpdateV2UpdateCommandMixin.UpdateV22   su    !??P				2	2e
B ))?(@O  33
	   r   r   N)r   r    r!   r"   r#   r6   r%   r   r   r   r'   r'   /   s
    @r   r'   c                       \ rS rSrSrSrg)UpdateCommandB   z<Base class for the command that updates a MembershipFeature.r   Nr   r    r!   r"   r#   r%   r   r   r   r9   r9   B       Dr   r9   c                       \ rS rSrSrS rSrg)DeleteCommandMixinF   z7A mixin for functionality to delte a MembershipFeature.c                     U R                  U5      n U R                  R                  U5      nSU S3nU R                  U R                  R                  UUSS9$ ! [        R                   a     g f = f)Nr*   z to be deletedFr+   )r   r   DeleteMembershipFeatureapitools_exceptionsHttpNotFoundErrorr/   resourceless_waiter)r   r   r3   r4   r5   s        r   DeleteV2DeleteCommandMixin.DeleteV2I   s    !??P445KLb
 ))?(@O  --
	    00 s   A A10A1r   N)r   r    r!   r"   r#   rE   r%   r   r   r   r>   r>   F   s
    ?r   r>   c                       \ rS rSrSrSrg)DeleteCommand\   z<Base class for the command that deletes a MembershipFeature.r   Nr;   r   r   r   rH   rH   \   r<   r   rH   N)r#   
__future__r   r   r   apitools.base.pyr   rB   googlecloudsdk.callioper   calliope_base*googlecloudsdk.command_lib.container.fleethub_base3googlecloudsdk.command_lib.container.fleet.featuresr   
HubCommandr
   r'   r9   r>   rH   r   r   r   <module>rR      sz    @ &  ' > 9 G Dx22 (1 &E&(C(C E1 ,E&(C(C Er   