
                         d    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 Z	d Z
d	 Zd
 ZddZy)z$Access approval requests API helper.    )absolute_import)division)unicode_literals)
list_pager)apisc                 x   t        j                  dd      }t        j                  dd      }d| v r-|j                  |       }|j                  j                  |      S d| v r-|j                  |       }|j                  j                  |      S |j                  |       }|j                  j                  |      S )zApprove an approval request.accessapprovalv1organizations/namefolders/)
r   GetClientInstanceGetMessagesModule9AccessapprovalOrganizationsApprovalRequestsApproveRequestorganizations_approvalRequestsApprove3AccessapprovalFoldersApprovalRequestsApproveRequestfolders_approvalRequests4AccessapprovalProjectsApprovalRequestsApproveRequestprojects_approvalRequestsr   clientmsgsreqs       6lib/googlecloudsdk/api_lib/access_approval/requests.pyr   r          !!"2D9&			 0$	7$

H
H I C0088==4

B
B
B
MC**22377AAtAL#		)	)	1	1#	66    c                 x   t        j                  dd      }t        j                  dd      }d| v r-|j                  |       }|j                  j                  |      S d| v r-|j                  |       }|j                  j                  |      S |j                  |       }|j                  j                  |      S )zDismiss an approval request.r	   r
   r   r   r   )
r   r   r   9AccessapprovalOrganizationsApprovalRequestsDismissRequestr   Dismiss3AccessapprovalFoldersApprovalRequestsDismissRequestr   4AccessapprovalProjectsApprovalRequestsDismissRequestr   r   s       r   r!   r!   *   r   r   c                 x   t        j                  dd      }t        j                  dd      }d| v r-|j                  |       }|j                  j                  |      S d| v r-|j                  |       }|j                  j                  |      S |j                  |       }|j                  j                  |      S )zInvalidate an approval request.r	   r
   r   r   r   )
r   r   r   <AccessapprovalOrganizationsApprovalRequestsInvalidateRequestr   
Invalidate6AccessapprovalFoldersApprovalRequestsInvalidateRequestr   7AccessapprovalProjectsApprovalRequestsInvalidateRequestr   r   s       r   r&   r&   ;   s    !!"2D9&			 0$	7$

K
K L C00;;C@@4

E
E4
E
PC**55c::DD$DO#		)	)	4	4S	99r   c                 x   t        j                  dd      }t        j                  dd      }d| v r-|j                  |       }|j                  j                  |      S d| v r-|j                  |       }|j                  j                  |      S |j                  |       }|j                  j                  |      S )z Get an approval request by name.r	   r
   r   r   r   )
r   r   r   5AccessapprovalOrganizationsApprovalRequestsGetRequestr   Get/AccessapprovalFoldersApprovalRequestsGetRequestr   0AccessapprovalProjectsApprovalRequestsGetRequestr   r   s       r   r+   r+   L   s    !!"2D9&			 0$	7$

D
D$
D
OC0044S994

>
>D
>
IC**..s33==4=H#		)	)	-	-c	22r   Nc                 ~   t        j                  dd      }t        j                  dd      }d}d}d| v r|j                  |       }|j                  }nAd| v r|j                  |       }|j                  }n|j                  |       }|j                  }|r||_	        nd|_	        t        j                  ||dd	
      S )z/List approval requests for the parent resource.r	   r
   Nr   )parentr   PENDINGapprovalRequestspageSize)fieldbatch_size_attribute)r   r   r   6AccessapprovalOrganizationsApprovalRequestsListRequestr   0AccessapprovalFoldersApprovalRequestsListRequestr   1AccessapprovalProjectsApprovalRequestsListRequestr   filterr   YieldFromList)r/   r8   r   r   r   svcs         r   Listr;   \   s    !!"2D9&			 0$	7$##

E
E F C

/
/CV

?
?v
?
NC

)
)C

@
@
@
OC

*
*CCJCJ		!	!	3(z
K Kr   )N)__doc__
__future__r   r   r   apitools.base.pyr   googlecloudsdk.api_lib.utilr   r   r!   r&   r+   r;    r   r   <module>rA      s3    + &  ' ' ,7"7":"3 Kr   