
    C                     V    d Z ddlmZ ddlmZ ddlmZ  G d dej                        Z	y)z7Generated client library for accessapproval version v1.    )absolute_import)base_api)accessapproval_v1_messagesc                   \    e Zd ZdZeZdZdZdZdgZ	dZ
dZdZd	Zd ZdZd
Z	 	 	 	 	 d fd	Z G d dej&                        Z G d dej&                        Z G d dej&                        Z G d dej&                        Z G d dej&                        Z G d dej&                        Z xZS )AccessapprovalV1z?Generated client library for service accessapproval version v1.z&https://accessapproval.googleapis.com/z+https://accessapproval.mtls.googleapis.com/accessapprovalz.https://www.googleapis.com/auth/cloud-platformv1	CLIENT_IDCLIENT_SECRETzgoogle-cloud-sdkNc                 j   |xs | j                   }t        t        |   |||||||||	|
|       | j	                  |       | _        | j                  |       | _        | j                  |       | _	        | j                  |       | _        | j                  |       | _        | j                  |       | _        y)z#Create a new accessapproval handle.)
credentialsget_credentialshttpmodellog_requestlog_responsecredentials_argsdefault_global_paramsadditional_http_headersresponse_encodingN)BASE_URLsuperr   __init__FoldersApprovalRequestsServicefolders_approvalRequestsFoldersServicefolders$OrganizationsApprovalRequestsServiceorganizations_approvalRequestsOrganizationsServiceorganizationsProjectsApprovalRequestsServiceprojects_approvalRequestsProjectsServiceprojects)selfurlr   r   r   r   r   r   r   r   r   r   	__class__s               Wlib/googlecloudsdk/generated_clients/apis/accessapproval/v1/accessapproval_v1_client.pyr   zAccessapprovalV1.__init__   s     
C	
D*'d%l)3 7+ + - %)$G$G$MD!&&t,DL*.*S*STX*YD'2248D%)%I%I$%OD"((.DM    c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_        ddZd e_         xZS )/AccessapprovalV1.FoldersApprovalRequestsServicez8Service class for the folders_approvalRequests resource.r   c                 N    t         t        j                  |   |       i | _        y N)r   r   r   r   _upload_configsr&   clientr(   s     r)   r   z8AccessapprovalV1.FoldersApprovalRequestsService.__init__6   s#    ;;TKFSdr*   c                 L    | j                  d      }| j                  |||      S )a  Approves a request and returns the updated ApprovalRequest. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalFoldersApprovalRequestsApproveRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      Approveglobal_paramsGetMethodConfig
_RunMethodr&   requestr5   configs       r)   r3   z7AccessapprovalV1.FoldersApprovalRequestsService.Approve;   1     ##I.f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzDv1/folders/{foldersId}/approvalRequests/{approvalRequestsId}:approvePOSTz/accessapproval.folders.approvalRequests.approvenamev1/{+name}:approveapproveApprovalRequestMessage3AccessapprovalFoldersApprovalRequestsApproveRequestApprovalRequestF	flat_pathhttp_method	method_idordered_paramspath_paramsquery_paramsrelative_pathrequest_fieldrequest_type_nameresponse_type_namesupports_downloadr   ApiMethodInfo r*   r)   <lambda>z8AccessapprovalV1.FoldersApprovalRequestsService.<lambda>H   4    H$:$:XCxH*5O,%r*   c                 L    | j                  d      }| j                  |||      S )aR  Dismisses a request. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It is equivalent in effect to ignoring the request altogether. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalFoldersApprovalRequestsDismissRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      Dismissr4   r6   r9   s       r)   rV   z7AccessapprovalV1.FoldersApprovalRequestsService.DismissV   r<   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzDv1/folders/{foldersId}/approvalRequests/{approvalRequestsId}:dismissr>   z/accessapproval.folders.approvalRequests.dismissr?   v1/{+name}:dismissdismissApprovalRequestMessage3AccessapprovalFoldersApprovalRequestsDismissRequestrC   FrD   rP   rR   r*   r)   rS   z8AccessapprovalV1.FoldersApprovalRequestsService.<lambda>c   rT   r*   c                 L    | j                  d      }| j                  |||      S )a?  Gets an approval request. Returns NOT_FOUND if the request does not exist.

      Args:
        request: (AccessapprovalFoldersApprovalRequestsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      Getr4   r6   r9   s       r)   r\   z3AccessapprovalV1.FoldersApprovalRequestsService.Getq   1     ##E*f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz<v1/folders/{foldersId}/approvalRequests/{approvalRequestsId}GETz+accessapproval.folders.approvalRequests.getr?   
v1/{+name} /AccessapprovalFoldersApprovalRequestsGetRequestrC   FrD   rP   rR   r*   r)   rS   z8AccessapprovalV1.FoldersApprovalRequestsService.<lambda>~   s4     6 6P?xH"K,!r*   c                 L    | j                  d      }| j                  |||      S )a"  Invalidates an existing ApprovalRequest. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It only invalidates a single approval. Returns FAILED_PRECONDITION if the request exists but is not in an approved state.

      Args:
        request: (AccessapprovalFoldersApprovalRequestsInvalidateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      
Invalidater4   r6   r9   s       r)   rd   z:AccessapprovalV1.FoldersApprovalRequestsService.Invalidate   1     ##L1f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzGv1/folders/{foldersId}/approvalRequests/{approvalRequestsId}:invalidater>   z2accessapproval.folders.approvalRequests.invalidater?   v1/{+name}:invalidate invalidateApprovalRequestMessage6AccessapprovalFoldersApprovalRequestsInvalidateRequestrC   FrD   rP   rR   r*   r)   rS   z8AccessapprovalV1.FoldersApprovalRequestsService.<lambda>   s4    x'='=[FxH-8R,(r*   c                 L    | j                  d      }| j                  |||      S )a  Lists approval requests associated with a project, folder, or organization. Approval requests can be filtered by state (pending, active, dismissed). The order is reverse chronological.

      Args:
        request: (AccessapprovalFoldersApprovalRequestsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListApprovalRequestsResponse) The response message.
      Listr4   r6   r9   s       r)   rk   z4AccessapprovalV1.FoldersApprovalRequestsService.List   1     ##F+f__
'  8 8r*   c                  J    t        j                  ddddgdgg ddddd	d
      S )Nz'v1/folders/{foldersId}/approvalRequestsr_   z,accessapproval.folders.approvalRequests.listparentfilterpageSize	pageTokenv1/{+parent}/approvalRequestsra   0AccessapprovalFoldersApprovalRequestsListRequestListApprovalRequestsResponseFrD   rP   rR   r*   r)   rS   z8AccessapprovalV1.FoldersApprovalRequestsService.<lambda>   s4    !7!7;@ zJ85L9"r*   r.   __name__
__module____qualname____doc___NAMEr   r3   method_configrV   r\   rd   rk   __classcell__r(   s   @r)   r   r,   1   s^    B&E
8G8G8C8 J8Dr*   r   c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_         xZS )AccessapprovalV1.FoldersServicez'Service class for the folders resource.r   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r   r   r/   r0   s     r)   r   z(AccessapprovalV1.FoldersService.__init__   s#    ++T;FCdr*   c                 L    | j                  d      }| j                  |||      S )au  Deletes the settings associated with a project, folder, or organization. This will have the effect of disabling Access Approval for the project, folder, or organization, but only if all ancestors also have Access Approval disabled. If Access Approval is enabled at a higher level of the hierarchy, then Access Approval will still be enabled at this level as the settings are inherited.

      Args:
        request: (AccessapprovalFoldersDeleteAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      DeleteAccessApprovalSettingsr4   r6   r9   s       r)   r   z<AccessapprovalV1.FoldersService.DeleteAccessApprovalSettings   2     ##$BCf__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )N-v1/folders/{foldersId}/accessApprovalSettingsDELETEz3accessapproval.folders.deleteAccessApprovalSettingsr?   r`   ra   8AccessapprovalFoldersDeleteAccessApprovalSettingsRequestEmptyFrD   rP   rR   r*   r)   rS   z(AccessapprovalV1.FoldersService.<lambda>   s4    9O9OAGxH"T":r*   c                 L    | j                  d      }| j                  |||      S )aG  Gets the settings associated with a project, folder, or organization.

      Args:
        request: (AccessapprovalFoldersGetAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      GetAccessApprovalSettingsr4   r6   r9   s       r)   r   z9AccessapprovalV1.FoldersService.GetAccessApprovalSettings   2     ##$?@f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   r_   z0accessapproval.folders.getAccessApprovalSettingsr?   r`   ra   5AccessapprovalFoldersGetAccessApprovalSettingsRequestAccessApprovalSettingsFrD   rP   rR   r*   r)   rS   z(AccessapprovalV1.FoldersService.<lambda>   s4    h6L6LADxH"Q37r*   c                 L    | j                  d      }| j                  |||      S )ax  Retrieves the service account that is used by Access Approval to access KMS keys for signing approved approval requests.

      Args:
        request: (AccessapprovalFoldersGetServiceAccountRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalServiceAccount) The response message.
      GetServiceAccountr4   r6   r9   s       r)   r   z1AccessapprovalV1.FoldersService.GetServiceAccount  2     ##$78f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz%v1/folders/{foldersId}/serviceAccountr_   z(accessapproval.folders.getServiceAccountr?   r`   ra   -AccessapprovalFoldersGetServiceAccountRequestAccessApprovalServiceAccountFrD   rP   rR   r*   r)   rS   z(AccessapprovalV1.FoldersService.<lambda>  s4    h.D.D9<xH"I9/r*   c                 L    | j                  d      }| j                  |||      S )a  Updates the settings associated with a project, folder, or organization. Settings to update are determined by the value of field_mask.

      Args:
        request: (AccessapprovalFoldersUpdateAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      UpdateAccessApprovalSettingsr4   r6   r9   s       r)   r   z<AccessapprovalV1.FoldersService.UpdateAccessApprovalSettings  r   r*   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nr   PATCHz3accessapproval.folders.updateAccessApprovalSettingsr?   
updateMaskr`   accessApprovalSettings8AccessapprovalFoldersUpdateAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z(AccessapprovalV1.FoldersService.<lambda>*  s6    9O9OAGxH"^".T3:r*   r.   rw   rx   ry   rz   r{   r   r   r|   r   r   r   r}   r~   s   @r)   r   r      sS    1E
82 .8/+8'#82 ..r*   r   c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_        ddZd e_         xZS )5AccessapprovalV1.OrganizationsApprovalRequestsServicez>Service class for the organizations_approvalRequests resource.r   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r   r   r/   r0   s     r)   r   z>AccessapprovalV1.OrganizationsApprovalRequestsService.__init__=  s$    AA4QRXYdr*   c                 L    | j                  d      }| j                  |||      S )a  Approves a request and returns the updated ApprovalRequest. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalOrganizationsApprovalRequestsApproveRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      r3   r4   r6   r9   s       r)   r3   z=AccessapprovalV1.OrganizationsApprovalRequestsService.ApproveB  r<   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzPv1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}:approver>   z5accessapproval.organizations.approvalRequests.approver?   r@   rA   9AccessapprovalOrganizationsApprovalRequestsApproveRequestrC   FrD   rP   rR   r*   r)   rS   z>AccessapprovalV1.OrganizationsApprovalRequestsService.<lambda>O  4    H$:$:dIxH*5U,%r*   c                 L    | j                  d      }| j                  |||      S )aX  Dismisses a request. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It is equivalent in effect to ignoring the request altogether. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalOrganizationsApprovalRequestsDismissRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      rV   r4   r6   r9   s       r)   rV   z=AccessapprovalV1.OrganizationsApprovalRequestsService.Dismiss]  r<   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzPv1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}:dismissr>   z5accessapproval.organizations.approvalRequests.dismissr?   rX   rY   9AccessapprovalOrganizationsApprovalRequestsDismissRequestrC   FrD   rP   rR   r*   r)   rS   z>AccessapprovalV1.OrganizationsApprovalRequestsService.<lambda>j  r   r*   c                 L    | j                  d      }| j                  |||      S )aE  Gets an approval request. Returns NOT_FOUND if the request does not exist.

      Args:
        request: (AccessapprovalOrganizationsApprovalRequestsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      r\   r4   r6   r9   s       r)   r\   z9AccessapprovalV1.OrganizationsApprovalRequestsService.Getx  r]   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzHv1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}r_   z1accessapproval.organizations.approvalRequests.getr?   r`   ra   5AccessapprovalOrganizationsApprovalRequestsGetRequestrC   FrD   rP   rR   r*   r)   rS   z>AccessapprovalV1.OrganizationsApprovalRequestsService.<lambda>  s4     6 6\ExH"Q,!r*   c                 L    | j                  d      }| j                  |||      S )a(  Invalidates an existing ApprovalRequest. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It only invalidates a single approval. Returns FAILED_PRECONDITION if the request exists but is not in an approved state.

      Args:
        request: (AccessapprovalOrganizationsApprovalRequestsInvalidateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      rd   r4   r6   r9   s       r)   rd   z@AccessapprovalV1.OrganizationsApprovalRequestsService.Invalidate  re   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzSv1/organizations/{organizationsId}/approvalRequests/{approvalRequestsId}:invalidater>   z8accessapproval.organizations.approvalRequests.invalidater?   rg   rh   <AccessapprovalOrganizationsApprovalRequestsInvalidateRequestrC   FrD   rP   rR   r*   r)   rS   z>AccessapprovalV1.OrganizationsApprovalRequestsService.<lambda>  s4    x'='=gLxH-8X,(r*   c                 L    | j                  d      }| j                  |||      S )a  Lists approval requests associated with a project, folder, or organization. Approval requests can be filtered by state (pending, active, dismissed). The order is reverse chronological.

      Args:
        request: (AccessapprovalOrganizationsApprovalRequestsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListApprovalRequestsResponse) The response message.
      rk   r4   r6   r9   s       r)   rk   z:AccessapprovalV1.OrganizationsApprovalRequestsService.List  rl   r*   c                  J    t        j                  ddddgdgg ddddd	d
      S )Nz3v1/organizations/{organizationsId}/approvalRequestsr_   z2accessapproval.organizations.approvalRequests.listrn   ro   rs   ra   6AccessapprovalOrganizationsApprovalRequestsListRequestru   FrD   rP   rR   r*   r)   rS   z>AccessapprovalV1.OrganizationsApprovalRequestsService.<lambda>  s4    !7!7GF zJ85R9"r*   r.   rv   r~   s   @r)   r   r   8  s^    H,E
8G8G8C8 J8Dr*   r   c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_         xZS )%AccessapprovalV1.OrganizationsServicez-Service class for the organizations resource.r!   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r    r   r/   r0   s     r)   r   z.AccessapprovalV1.OrganizationsService.__init__  s#    114A&Idr*   c                 L    | j                  d      }| j                  |||      S )a{  Deletes the settings associated with a project, folder, or organization. This will have the effect of disabling Access Approval for the project, folder, or organization, but only if all ancestors also have Access Approval disabled. If Access Approval is enabled at a higher level of the hierarchy, then Access Approval will still be enabled at this level as the settings are inherited.

      Args:
        request: (AccessapprovalOrganizationsDeleteAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      r   r4   r6   r9   s       r)   r   zBAccessapprovalV1.OrganizationsService.DeleteAccessApprovalSettings  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )N9v1/organizations/{organizationsId}/accessApprovalSettingsr   z9accessapproval.organizations.deleteAccessApprovalSettingsr?   r`   ra   >AccessapprovalOrganizationsDeleteAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z.AccessapprovalV1.OrganizationsService.<lambda>  s4    9O9OMMxH"Z":r*   c                 L    | j                  d      }| j                  |||      S )aM  Gets the settings associated with a project, folder, or organization.

      Args:
        request: (AccessapprovalOrganizationsGetAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      r   r4   r6   r9   s       r)   r   z?AccessapprovalV1.OrganizationsService.GetAccessApprovalSettings  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   r_   z6accessapproval.organizations.getAccessApprovalSettingsr?   r`   ra   ;AccessapprovalOrganizationsGetAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z.AccessapprovalV1.OrganizationsService.<lambda>  s4    h6L6LMJxH"W37r*   c                 L    | j                  d      }| j                  |||      S )a~  Retrieves the service account that is used by Access Approval to access KMS keys for signing approved approval requests.

      Args:
        request: (AccessapprovalOrganizationsGetServiceAccountRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalServiceAccount) The response message.
      r   r4   r6   r9   s       r)   r   z7AccessapprovalV1.OrganizationsService.GetServiceAccount	  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz1v1/organizations/{organizationsId}/serviceAccountr_   z.accessapproval.organizations.getServiceAccountr?   r`   ra   3AccessapprovalOrganizationsGetServiceAccountRequestr   FrD   rP   rR   r*   r)   rS   z.AccessapprovalV1.OrganizationsService.<lambda>  s4    h.D.DEBxH"O9/r*   c                 L    | j                  d      }| j                  |||      S )a  Updates the settings associated with a project, folder, or organization. Settings to update are determined by the value of field_mask.

      Args:
        request: (AccessapprovalOrganizationsUpdateAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      r   r4   r6   r9   s       r)   r   zBAccessapprovalV1.OrganizationsService.UpdateAccessApprovalSettings$  r   r*   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nr   r   z9accessapproval.organizations.updateAccessApprovalSettingsr?   r   r`   r   >AccessapprovalOrganizationsUpdateAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z.AccessapprovalV1.OrganizationsService.<lambda>1  s6    9O9OMMxH"^".Z3:r*   r.   r   r~   s   @r)   r    r     sS    7E
82 .8/+8'#82 ..r*   r    c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_        ddZd e_         xZS )0AccessapprovalV1.ProjectsApprovalRequestsServicez9Service class for the projects_approvalRequests resource.r#   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r"   r   r/   r0   s     r)   r   z9AccessapprovalV1.ProjectsApprovalRequestsService.__init__D  s#    <<dLVTdr*   c                 L    | j                  d      }| j                  |||      S )a  Approves a request and returns the updated ApprovalRequest. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalProjectsApprovalRequestsApproveRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      r3   r4   r6   r9   s       r)   r3   z8AccessapprovalV1.ProjectsApprovalRequestsService.ApproveI  r<   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzFv1/projects/{projectsId}/approvalRequests/{approvalRequestsId}:approver>   z0accessapproval.projects.approvalRequests.approver?   r@   rA   4AccessapprovalProjectsApprovalRequestsApproveRequestrC   FrD   rP   rR   r*   r)   rS   z9AccessapprovalV1.ProjectsApprovalRequestsService.<lambda>V  4    H$:$:ZDxH*5P,%r*   c                 L    | j                  d      }| j                  |||      S )aS  Dismisses a request. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It is equivalent in effect to ignoring the request altogether. Returns NOT_FOUND if the request does not exist. Returns FAILED_PRECONDITION if the request exists but is not in a pending state.

      Args:
        request: (AccessapprovalProjectsApprovalRequestsDismissRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      rV   r4   r6   r9   s       r)   rV   z8AccessapprovalV1.ProjectsApprovalRequestsService.Dismissd  r<   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzFv1/projects/{projectsId}/approvalRequests/{approvalRequestsId}:dismissr>   z0accessapproval.projects.approvalRequests.dismissr?   rX   rY   4AccessapprovalProjectsApprovalRequestsDismissRequestrC   FrD   rP   rR   r*   r)   rS   z9AccessapprovalV1.ProjectsApprovalRequestsService.<lambda>q  r   r*   c                 L    | j                  d      }| j                  |||      S )a@  Gets an approval request. Returns NOT_FOUND if the request does not exist.

      Args:
        request: (AccessapprovalProjectsApprovalRequestsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      r\   r4   r6   r9   s       r)   r\   z4AccessapprovalV1.ProjectsApprovalRequestsService.Get  r]   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz>v1/projects/{projectsId}/approvalRequests/{approvalRequestsId}r_   z,accessapproval.projects.approvalRequests.getr?   r`   ra   0AccessapprovalProjectsApprovalRequestsGetRequestrC   FrD   rP   rR   r*   r)   rS   z9AccessapprovalV1.ProjectsApprovalRequestsService.<lambda>  s4     6 6R@xH"L,!r*   c                 L    | j                  d      }| j                  |||      S )a#  Invalidates an existing ApprovalRequest. Returns the updated ApprovalRequest. NOTE: This does not deny access to the resource if another request has been made and approved. It only invalidates a single approval. Returns FAILED_PRECONDITION if the request exists but is not in an approved state.

      Args:
        request: (AccessapprovalProjectsApprovalRequestsInvalidateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ApprovalRequest) The response message.
      rd   r4   r6   r9   s       r)   rd   z;AccessapprovalV1.ProjectsApprovalRequestsService.Invalidate  re   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzIv1/projects/{projectsId}/approvalRequests/{approvalRequestsId}:invalidater>   z3accessapproval.projects.approvalRequests.invalidater?   rg   rh   7AccessapprovalProjectsApprovalRequestsInvalidateRequestrC   FrD   rP   rR   r*   r)   rS   z9AccessapprovalV1.ProjectsApprovalRequestsService.<lambda>  s4    x'='=]GxH-8S,(r*   c                 L    | j                  d      }| j                  |||      S )a  Lists approval requests associated with a project, folder, or organization. Approval requests can be filtered by state (pending, active, dismissed). The order is reverse chronological.

      Args:
        request: (AccessapprovalProjectsApprovalRequestsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListApprovalRequestsResponse) The response message.
      rk   r4   r6   r9   s       r)   rk   z5AccessapprovalV1.ProjectsApprovalRequestsService.List  rl   r*   c                  J    t        j                  ddddgdgg ddddd	d
      S )Nz)v1/projects/{projectsId}/approvalRequestsr_   z-accessapproval.projects.approvalRequests.listrn   ro   rs   ra   1AccessapprovalProjectsApprovalRequestsListRequestru   FrD   rP   rR   r*   r)   rS   z9AccessapprovalV1.ProjectsApprovalRequestsService.<lambda>  s4    !7!7=A zJ85M9"r*   r.   rv   r~   s   @r)   r"   r   ?  s^    C'E
8G8G8C8 J8Dr*   r"   c                        e Zd ZdZdZ fdZddZd e_        ddZd e_        ddZ	d	 e	_        dd
Z
d e
_         xZS ) AccessapprovalV1.ProjectsServicez(Service class for the projects resource.r%   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r$   r   r/   r0   s     r)   r   z)AccessapprovalV1.ProjectsService.__init__  s#    ,,d<VDdr*   c                 L    | j                  d      }| j                  |||      S )av  Deletes the settings associated with a project, folder, or organization. This will have the effect of disabling Access Approval for the project, folder, or organization, but only if all ancestors also have Access Approval disabled. If Access Approval is enabled at a higher level of the hierarchy, then Access Approval will still be enabled at this level as the settings are inherited.

      Args:
        request: (AccessapprovalProjectsDeleteAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      r   r4   r6   r9   s       r)   r   z=AccessapprovalV1.ProjectsService.DeleteAccessApprovalSettings  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )N/v1/projects/{projectsId}/accessApprovalSettingsr   z4accessapproval.projects.deleteAccessApprovalSettingsr?   r`   ra   9AccessapprovalProjectsDeleteAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z)AccessapprovalV1.ProjectsService.<lambda>  s4    9O9OCHxH"U":r*   c                 L    | j                  d      }| j                  |||      S )aH  Gets the settings associated with a project, folder, or organization.

      Args:
        request: (AccessapprovalProjectsGetAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      r   r4   r6   r9   s       r)   r   z:AccessapprovalV1.ProjectsService.GetAccessApprovalSettings  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   r_   z1accessapproval.projects.getAccessApprovalSettingsr?   r`   ra   6AccessapprovalProjectsGetAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z)AccessapprovalV1.ProjectsService.<lambda>  s4    h6L6LCExH"R37r*   c                 L    | j                  d      }| j                  |||      S )ay  Retrieves the service account that is used by Access Approval to access KMS keys for signing approved approval requests.

      Args:
        request: (AccessapprovalProjectsGetServiceAccountRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalServiceAccount) The response message.
      r   r4   r6   r9   s       r)   r   z2AccessapprovalV1.ProjectsService.GetServiceAccount  r   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz'v1/projects/{projectsId}/serviceAccountr_   z)accessapproval.projects.getServiceAccountr?   r`   ra   .AccessapprovalProjectsGetServiceAccountRequestr   FrD   rP   rR   r*   r)   rS   z)AccessapprovalV1.ProjectsService.<lambda>  s4    h.D.D;=xH"J9/r*   c                 L    | j                  d      }| j                  |||      S )a  Updates the settings associated with a project, folder, or organization. Settings to update are determined by the value of field_mask.

      Args:
        request: (AccessapprovalProjectsUpdateAccessApprovalSettingsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (AccessApprovalSettings) The response message.
      r   r4   r6   r9   s       r)   r   z=AccessapprovalV1.ProjectsService.UpdateAccessApprovalSettings+  r   r*   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nr   r   z4accessapproval.projects.updateAccessApprovalSettingsr?   r   r`   r   9AccessapprovalProjectsUpdateAccessApprovalSettingsRequestr   FrD   rP   rR   r*   r)   rS   z)AccessapprovalV1.ProjectsService.<lambda>8  s6    9O9OCHxH"^".U3:r*   r.   r   r~   s   @r)   r$   r     sS    2E
82 .8/+8'#82 ..r*   r$   )ra   NTNNFFNNNN)rw   rx   ry   rz   messagesMESSAGES_MODULEr   MTLS_BASE_URL_PACKAGE_SCOPES_VERSION
_CLIENT_ID_CLIENT_SECRET_USER_AGENT_CLIENT_CLASS_NAME_URL_VERSION_API_KEYr   r   BaseApiServicer   r   r   r    r"   r$   r}   r~   s   @r)   r   r   
   s    G/5(?-(=>'(*"."+),()-6:/4<@?C	/,Ox'>'> Obtx.. tlOX-D-D ObtX44 tlO(?(? Obt// t tr*   r   N)
rz   
__future__r   apitools.base.pyr   7googlecloudsdk.generated_clients.apis.accessapproval.v1r   r   BaseApiClientr   rR   r*   r)   <module>r      s'    = ' % jzx-- zr*   