
    0                     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 iamcredentials version v1.    )absolute_import)base_api)iamcredentials_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 )IamcredentialsV1z?Generated client library for service iamcredentials version v1.z&https://iamcredentials.googleapis.com/z+https://iamcredentials.mtls.googleapis.com/iamcredentialsz.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 iamcredentials handle.)
credentialsget_credentialshttpmodellog_requestlog_responsecredentials_argsdefault_global_paramsadditional_http_headersresponse_encodingN)BASE_URLsuperr   __init__LocationsWorkforcePoolsServicelocations_workforcePoolsLocationsService	locations-ProjectsLocationsWorkloadIdentityPoolsService(projects_locations_workloadIdentityPoolsProjectsLocationsServiceprojects_locationsProjectsServiceAccountsServiceprojects_serviceAccountsProjectsServiceprojects)selfurlr   r   r   r   r   r   r   r   r   r   	__class__s               Wlib/googlecloudsdk/generated_clients/apis/iamcredentials/v1/iamcredentials_v1_client.pyr   zIamcredentialsV1.__init__   s     
C	
D*'d%l)3 7+ + - %)$G$G$MD!**40DN484f4fgk4lD1";;DAD$($G$G$MD!((.DM    c                   >     e Zd ZdZdZ fdZddZd e_         xZS )/IamcredentialsV1.LocationsWorkforcePoolsServicez8Service class for the locations_workforcePools resource.r   c                 N    t         t        j                  |   |       i | _        y N)r   r   r   r   _upload_configsr&   clientr(   s     r)   r   z8IamcredentialsV1.LocationsWorkforcePoolsService.__init__6   #    ;;TKFSdr*   c                 L    | j                  d      }| j                  |||      S )aN  Returns the trust boundary info for a given workforce pool.

      Args:
        request: (IamcredentialsLocationsWorkforcePoolsGetAllowedLocationsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (WorkforcePoolAllowedLocations) The response message.
      GetAllowedLocationsglobal_paramsGetMethodConfig
_RunMethodr&   requestr6   configs       r)   r4   zCIamcredentialsV1.LocationsWorkforcePoolsService.GetAllowedLocations;   2     ##$9:f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzMv1/locations/{locationsId}/workforcePools/{workforcePoolsId}/allowedLocationsGETz;iamcredentials.locations.workforcePools.getAllowedLocationsnamev1/{+name}/allowedLocations ?IamcredentialsLocationsWorkforcePoolsGetAllowedLocationsRequestWorkforcePoolAllowedLocationsF	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>z8IamcredentialsV1.LocationsWorkforcePoolsService.<lambda>H   s4    0F0FaOxH3[:1r*   r.   	__name__
__module____qualname____doc___NAMEr   r4   method_config__classcell__r(   s   @r)   r   r,   1   s#    B&E
8)%%r*   r   c                   &     e Zd ZdZdZ fdZ xZS )!IamcredentialsV1.LocationsServicez)Service class for the locations resource.r   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r   r   r/   r0   s     r)   r   z*IamcredentialsV1.LocationsService.__init__[   s#    --t=fEdr*   rV   rW   rX   rY   rZ   r   r\   r]   s   @r)   r   r_   V   s    3E r*   r   c                   >     e Zd ZdZdZ fdZddZd e_         xZS )>IamcredentialsV1.ProjectsLocationsWorkloadIdentityPoolsServicezHService class for the projects_locations_workloadIdentityPools resource.r   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r   r   r/   r0   s     r)   r   zGIamcredentialsV1.ProjectsLocationsWorkloadIdentityPoolsService.__init__e   s$    JJDZ[abdr*   c                 L    | j                  d      }| j                  |||      S )al  Returns the trust boundary info for a given workload identity pool.

      Args:
        request: (IamcredentialsProjectsLocationsWorkloadIdentityPoolsGetAllowedLocationsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (WorkloadIdentityPoolAllowedLocations) The response message.
      r4   r5   r7   r:   s       r)   r4   zRIamcredentialsV1.ProjectsLocationsWorkloadIdentityPoolsService.GetAllowedLocationsj   r=   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )Nzqv1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/allowedLocationsr?   zKiamcredentials.projects.locations.workloadIdentityPools.getAllowedLocationsr@   rA   rB   NIamcredentialsProjectsLocationsWorkloadIdentityPoolsGetAllowedLocationsRequest$WorkloadIdentityPoolAllowedLocationsFrE   rQ   rS   r*   r)   rT   zGIamcredentialsV1.ProjectsLocationsWorkloadIdentityPoolsService.<lambda>w   s7    0F0F F_xH3jA1r*   r.   rU   r]   s   @r)   r   rc   `   s#    R6E
8)%%r*   r   c                   &     e Zd ZdZdZ fdZ xZS ))IamcredentialsV1.ProjectsLocationsServicez2Service class for the projects_locations resource.r!   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r    r   r/   r0   s     r)   r   z2IamcredentialsV1.ProjectsLocationsService.__init__   s#    55tEfMdr*   ra   r]   s   @r)   r    rj      s    < E 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 )/IamcredentialsV1.ProjectsServiceAccountsServicez8Service class for the projects_serviceAccounts resource.r#   c                 N    t         t        j                  |   |       i | _        y r.   )r   r   r"   r   r/   r0   s     r)   r   z8IamcredentialsV1.ProjectsServiceAccountsService.__init__   r2   r*   c                 L    | j                  d      }| j                  |||      S )aK  Generates an OAuth 2.0 access token for a service account.

      Args:
        request: (IamcredentialsProjectsServiceAccountsGenerateAccessTokenRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (GenerateAccessTokenResponse) The response message.
      GenerateAccessTokenr5   r7   r:   s       r)   rp   zCIamcredentialsV1.ProjectsServiceAccountsService.GenerateAccessToken   r=   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzPv1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:generateAccessTokenPOSTz;iamcredentials.projects.serviceAccounts.generateAccessTokenr@   zv1/{+name}:generateAccessTokengenerateAccessTokenRequest?IamcredentialsProjectsServiceAccountsGenerateAccessTokenRequestGenerateAccessTokenResponseFrE   rQ   rS   r*   r)   rT   z8IamcredentialsV1.ProjectsServiceAccountsService.<lambda>   s4    0F0FdOxH62[81r*   c                 L    | j                  d      }| j                  |||      S )aD  Generates an OpenID Connect ID token for a service account.

      Args:
        request: (IamcredentialsProjectsServiceAccountsGenerateIdTokenRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (GenerateIdTokenResponse) The response message.
      GenerateIdTokenr5   r7   r:   s       r)   rw   z?IamcredentialsV1.ProjectsServiceAccountsService.GenerateIdToken   s2     ##$56f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzLv1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:generateIdTokenrr   z7iamcredentials.projects.serviceAccounts.generateIdTokenr@   zv1/{+name}:generateIdTokengenerateIdTokenRequest;IamcredentialsProjectsServiceAccountsGenerateIdTokenRequestGenerateIdTokenResponseFrE   rQ   rS   r*   r)   rT   z8IamcredentialsV1.ProjectsServiceAccountsService.<lambda>   s4    H,B,B`KxH2.W4-r*   c                 L    | j                  d      }| j                  |||      S )aP  Returns the trust boundary info for a given service account.

      Args:
        request: (IamcredentialsProjectsServiceAccountsGetAllowedLocationsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ServiceAccountAllowedLocations) The response message.
      r4   r5   r7   r:   s       r)   r4   zCIamcredentialsV1.ProjectsServiceAccountsService.GetAllowedLocations   r=   r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzMv1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/allowedLocationsr?   z;iamcredentials.projects.serviceAccounts.getAllowedLocationsr@   rA   rB   ?IamcredentialsProjectsServiceAccountsGetAllowedLocationsRequestServiceAccountAllowedLocationsFrE   rQ   rS   r*   r)   rT   z8IamcredentialsV1.ProjectsServiceAccountsService.<lambda>   s4    0F0FaOxH3[;1r*   c                 L    | j                  d      }| j                  |||      S )a=  Signs a blob using a service account's system-managed private key.

      Args:
        request: (IamcredentialsProjectsServiceAccountsSignBlobRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (SignBlobResponse) The response message.
      SignBlobr5   r7   r:   s       r)   r   z8IamcredentialsV1.ProjectsServiceAccountsService.SignBlob   s1     ##J/f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzEv1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signBlobrr   z0iamcredentials.projects.serviceAccounts.signBlobr@   zv1/{+name}:signBlobsignBlobRequest4IamcredentialsProjectsServiceAccountsSignBlobRequestSignBlobResponseFrE   rQ   rS   r*   r)   rT   z8IamcredentialsV1.ProjectsServiceAccountsService.<lambda>   s4    X%;%;YDxH+'P-&r*   c                 L    | j                  d      }| j                  |||      S )a:  Signs a JWT using a service account's system-managed private key.

      Args:
        request: (IamcredentialsProjectsServiceAccountsSignJwtRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (SignJwtResponse) The response message.
      SignJwtr5   r7   r:   s       r)   r   z7IamcredentialsV1.ProjectsServiceAccountsService.SignJwt  s1     ##I.f__
'  8 8r*   c                  F    t        j                  ddddgdgg ddddd	
      S )NzDv1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:signJwtrr   z/iamcredentials.projects.serviceAccounts.signJwtr@   zv1/{+name}:signJwtsignJwtRequest3IamcredentialsProjectsServiceAccountsSignJwtRequestSignJwtResponseFrE   rQ   rS   r*   r)   rT   z8IamcredentialsV1.ProjectsServiceAccountsService.<lambda>  s4    H$:$:XCxH*&O,%r*   r.   )rV   rW   rX   rY   rZ   r   rp   r[   rw   r4   r   r   r\   r]   s   @r)   r"   rm      s`    B&E
8)%8%O!8)%8H8Gr*   r"   c                   &     e Zd ZdZdZ fdZ xZS ) IamcredentialsV1.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)IamcredentialsV1.ProjectsService.__init__%  s#    ,,d<VDdr*   ra   r]   s   @r)   r$   r      s    2E r*   r$   )rB   NTNNFFNNNN)rV   rW   rX   rY   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	/,#x'>'> #J00 #h6M6M #J!8!8 Ox'>'> Ob//  r*   r   N)
rY   
__future__r   apitools.base.pyr   7googlecloudsdk.generated_clients.apis.iamcredentials.v1r   r   BaseApiClientr   rS   r*   r)   <module>r      s'    = ' % j^x-- ^r*   