
                         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)z/Generated client library for pubsub version v1.    )absolute_import)base_api)pubsub_v1_messagesc                       e Zd ZdZeZdZdZdZd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 G d dej&                        Z xZS )PubsubV1z7Generated client library for service pubsub version v1.zhttps://pubsub.googleapis.com/z#https://pubsub.mtls.googleapis.com/pubsubz.https://www.googleapis.com/auth/cloud-platformz&https://www.googleapis.com/auth/pubsubv1	CLIENT_IDCLIENT_SECRETzgoogle-cloud-sdkNc                    |xs | j                   }t        t        |   |||||||||	|
|       | j	                  |       | _        | j                  |       | _        | j                  |       | _	        | j                  |       | _        | j                  |       | _        | j                  |       | _        | j!                  |       | _        y)zCreate a new pubsub handle.)
credentialsget_credentialshttpmodellog_requestlog_responsecredentials_argsdefault_global_paramsadditional_http_headersresponse_encodingN)BASE_URLsuperr   __init__ProjectsSchemasServiceprojects_schemasProjectsSnapshotsServiceprojects_snapshotsProjectsSubscriptionsServiceprojects_subscriptionsProjectsTopicsSnapshotsServiceprojects_topics_snapshots"ProjectsTopicsSubscriptionsServiceprojects_topics_subscriptionsProjectsTopicsServiceprojects_topicsProjectsServiceprojects)selfurlr   r   r   r   r   r   r   r   r   r   	__class__s               Glib/googlecloudsdk/generated_clients/apis/pubsub/v1/pubsub_v1_client.pyr   zPubsubV1.__init__   s     
C	(D"'d%l)3 7+ # - !77=D";;DAD"&"C"CD"ID%)%H%H%ND")-)P)PQU)VD&55d;D((.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_        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_        ddZd e_        ddZd e_        ddZd e_         xZS )PubsubV1.ProjectsSchemasServicez0Service class for the projects_schemas resource.r   c                 N    t         t        j                  |   |       i | _        y N)r   r   r   r   _upload_configsr(   clientr*   s     r+   r   z(PubsubV1.ProjectsSchemasService.__init__7   s"    H++T;FCdr,   c                 L    | j                  d      }| j                  |||      S )a  Commits a new schema revision to an existing schema.

      Args:
        request: (PubsubProjectsSchemasCommitRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Schema) The response message.
      Commitglobal_paramsGetMethodConfig
_RunMethodr(   requestr7   configs       r+   r5   z&PubsubV1.ProjectsSchemasService.Commit<   1     ##H-f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz3v1/projects/{projectsId}/schemas/{schemasId}:commitPOSTzpubsub.projects.schemas.commitnamezv1/{+name}:commitcommitSchemaRequest"PubsubProjectsSchemasCommitRequestSchemaF	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>z(PubsubV1.ProjectsSchemasService.<lambda>I   s4    8#9#9G2xH)+>#$r,   c                 L    | j                  d      }| j                  |||      S )zCreates a schema.

      Args:
        request: (PubsubProjectsSchemasCreateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Schema) The response message.
      Creater6   r8   r;   s       r+   rV   z&PubsubV1.ProjectsSchemasService.CreateW   r>   r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )N v1/projects/{projectsId}/schemasr@   zpubsub.projects.schemas.createparentschemaIdv1/{+parent}/schemasschema"PubsubProjectsSchemasCreateRequestrD   FrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>d   s6    8#9#942 zJ \,>#$r,   c                 L    | j                  d      }| j                  |||      S )zDeletes a schema.

      Args:
        request: (PubsubProjectsSchemasDeleteRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      Deleter6   r8   r;   s       r+   r_   z&PubsubV1.ProjectsSchemasService.Deleter   r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )N,v1/projects/{projectsId}/schemas/{schemasId}DELETEzpubsub.projects.schemas.deleterA   
v1/{+name} "PubsubProjectsSchemasDeleteRequestEmptyFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>   s4    8#9#9@2xH">"$r,   c                 L    | j                  d      }| j                  |||      S )a
  Deletes a specific schema revision.

      Args:
        request: (PubsubProjectsSchemasDeleteRevisionRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Schema) The response message.
      DeleteRevisionr6   r8   r;   s       r+   rh   z.PubsubV1.ProjectsSchemasService.DeleteRevision   s2     ##$45f__
'  8 8r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nz;v1/projects/{projectsId}/schemas/{schemasId}:deleteRevisionrb   z&pubsub.projects.schemas.deleteRevisionrA   
revisionIdzv1/{+name}:deleteRevisionrd   *PubsubProjectsSchemasDeleteRevisionRequestrD   FrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>   s6    8+A+AO:xH"^1F#,r,   c                 L    | j                  d      }| j                  |||      S )zGets a schema.

      Args:
        request: (PubsubProjectsSchemasGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Schema) The response message.
      Getr6   r8   r;   s       r+   rm   z#PubsubV1.ProjectsSchemasService.Get   1     ##E*f__
'  8 8r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nra   GETzpubsub.projects.schemas.getrA   viewrc   rd   PubsubProjectsSchemasGetRequestrD   FrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>   s6     6 6@/xHX";#!r,   c                 L    | j                  d      }| j                  |||      S )ab  Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      Args:
        request: (PubsubProjectsSchemasGetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      GetIamPolicyr6   r8   r;   s       r+   rt   z,PubsubV1.ProjectsSchemasService.GetIamPolicy   1     ##N3f__
'  8 8r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nz9v1/projects/{projectsId}/schemas/{schemasId}:getIamPolicyrp   z$pubsub.projects.schemas.getIamPolicyresourceoptions_requestedPolicyVersionv1/{+resource}:getIamPolicyrd   (PubsubProjectsSchemasGetIamPolicyRequestPolicyFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>   s7    )?)?M8"|L673D#*r,   c                 L    | j                  d      }| j                  |||      S )a  Lists schemas in a project.

      Args:
        request: (PubsubProjectsSchemasListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListSchemasResponse) The response message.
      Listr6   r8   r;   s       r+   r}   z$PubsubV1.ProjectsSchemasService.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 )NrX   rp   zpubsub.projects.schemas.listrY   pageSize	pageTokenrq   r[   rd    PubsubProjectsSchemasListRequestListSchemasResponseFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>   s4    !7!740 zJ6,<0"r,   c                 L    | j                  d      }| j                  |||      S )a+  Lists all schema revisions for the named schema.

      Args:
        request: (PubsubProjectsSchemasListRevisionsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListSchemaRevisionsResponse) The response message.
      ListRevisionsr6   r8   r;   s       r+   r   z-PubsubV1.ProjectsSchemasService.ListRevisions   s1     ##O4f__
'  8 8r,   c                  J    t        j                  ddddgdgg ddddd	d
      S )Nz:v1/projects/{projectsId}/schemas/{schemasId}:listRevisionsrp   z%pubsub.projects.schemas.listRevisionsrA   r   zv1/{+name}:listRevisionsrd   )PubsubProjectsSchemasListRevisionsRequestListSchemaRevisionsResponseFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>  s4    (*@*@N9xH60E8+r,   c                 L    | j                  d      }| j                  |||      S )a*  Creates a new schema revision that is a copy of the provided revision_id.

      Args:
        request: (PubsubProjectsSchemasRollbackRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Schema) The response message.
      Rollbackr6   r8   r;   s       r+   r   z(PubsubV1.ProjectsSchemasService.Rollback  1     ##J/f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz5v1/projects/{projectsId}/schemas/{schemasId}:rollbackr@   z pubsub.projects.schemas.rollbackrA   zv1/{+name}:rollbackrollbackSchemaRequest$PubsubProjectsSchemasRollbackRequestrD   FrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>!  s4    X%;%;I4xH+-@#&r,   c                 L    | j                  d      }| j                  |||      S )a  Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

      Args:
        request: (PubsubProjectsSchemasSetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      SetIamPolicyr6   r8   r;   s       r+   r   z,PubsubV1.ProjectsSchemasService.SetIamPolicy/  ru   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz9v1/projects/{projectsId}/schemas/{schemasId}:setIamPolicyr@   z$pubsub.projects.schemas.setIamPolicyrw   v1/{+resource}:setIamPolicysetIamPolicyRequest(PubsubProjectsSchemasSetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda><  s4    )?)?M8"|L3+D#*r,   c                 L    | j                  d      }| j                  |||      S )a\  Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

      Args:
        request: (PubsubProjectsSchemasTestIamPermissionsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (TestIamPermissionsResponse) The response message.
      TestIamPermissionsr6   r8   r;   s       r+   r   z2PubsubV1.ProjectsSchemasService.TestIamPermissionsJ  2     ##$89f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz?v1/projects/{projectsId}/schemas/{schemasId}:testIamPermissionsr@   z*pubsub.projects.schemas.testIamPermissionsrw   !v1/{+resource}:testIamPermissionstestIamPermissionsRequest.PubsubProjectsSchemasTestIamPermissionsRequestTestIamPermissionsResponseFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>W  s4    x/E/ES>"|L91J70r,   c                 L    | j                  d      }| j                  |||      S )a  Validates a schema.

      Args:
        request: (PubsubProjectsSchemasValidateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ValidateSchemaResponse) The response message.
      Validater6   r8   r;   s       r+   r   z(PubsubV1.ProjectsSchemasService.Validatee  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz)v1/projects/{projectsId}/schemas:validater@   z pubsub.projects.schemas.validaterY   zv1/{+parent}/schemas:validatevalidateSchemaRequest$PubsubProjectsSchemasValidateRequestValidateSchemaResponseFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>r  s4    X%;%;=4 zJ5-@3&r,   c                 L    | j                  d      }| j                  |||      S )a  Validates a message against a schema.

      Args:
        request: (PubsubProjectsSchemasValidateMessageRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ValidateMessageResponse) The response message.
      ValidateMessager6   r8   r;   s       r+   r   z/PubsubV1.ProjectsSchemasService.ValidateMessage  s2     ##$56f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz0v1/projects/{projectsId}/schemas:validateMessager@   z'pubsub.projects.schemas.validateMessagerY   z$v1/{+parent}/schemas:validateMessagevalidateMessageRequest+PubsubProjectsSchemasValidateMessageRequestValidateMessageResponseFrE   rQ   rS   r,   r+   rT   z(PubsubV1.ProjectsSchemasService.<lambda>  s4    H,B,BD; zJ<.G4-r,   r0   )__name__
__module____qualname____doc___NAMEr   r5   method_configrV   r_   rh   rm   rt   r}   r   r   r   r   r   r   __classcell__r*   s   @r+   r   r.   2   s    :E
8F8F8F8$N 8C8"L8D8#M8H8"L8($8H8%O!!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_        ddZd e_        ddZd e_        ddZd e_         xZS )!PubsubV1.ProjectsSnapshotsServicez2Service class for the projects_snapshots resource.r   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r   r   r1   r2   s     r+   r   z*PubsubV1.ProjectsSnapshotsService.__init__  s"    H--t=fEdr,   c                 L    | j                  d      }| j                  |||      S )a  Creates a snapshot from the requested subscription. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. If the snapshot already exists, returns `ALREADY_EXISTS`. If the requested subscription doesn't exist, returns `NOT_FOUND`. If the backlog in the subscription is too old -- and the resulting snapshot would expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned. See also the `Snapshot.expire_time` field. If the name is not provided in the request, the server will assign a random name for this snapshot on the same project as the subscription, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). The generated name is populated in the returned Snapshot object. Note that for REST API requests, you must specify a name in the request.

      Args:
        request: (PubsubProjectsSnapshotsCreateRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Snapshot) The response message.
      rV   r6   r8   r;   s       r+   rV   z(PubsubV1.ProjectsSnapshotsService.Create  r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )N0v1/projects/{projectsId}/snapshots/{snapshotsId}PUTz pubsub.projects.snapshots.createrA   rc   createSnapshotRequest$PubsubProjectsSnapshotsCreateRequestSnapshotFrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>  s4    8#9#9D4xH"-@%$r,   c                 L    | j                  d      }| j                  |||      S )a3  Removes an existing snapshot. Snapshots are used in [Seek] (https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. When the snapshot is deleted, all messages retained in the snapshot are immediately dropped. After a snapshot is deleted, a new one may be created with the same name, but the new one has no association with the old snapshot or its subscription, unless the same subscription is specified.

      Args:
        request: (PubsubProjectsSnapshotsDeleteRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      r_   r6   r8   r;   s       r+   r_   z(PubsubV1.ProjectsSnapshotsService.Delete  r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   rb   z pubsub.projects.snapshots.deletesnapshotv1/{+snapshot}rd   $PubsubProjectsSnapshotsDeleteRequestrf   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>  s4    8#9#9D4"|L&@"$r,   c                 L    | j                  d      }| j                  |||      S )a"  Gets the configuration details of a snapshot. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot.

      Args:
        request: (PubsubProjectsSnapshotsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Snapshot) The response message.
      rm   r6   r8   r;   s       r+   rm   z%PubsubV1.ProjectsSnapshotsService.Get  rn   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   rp   zpubsub.projects.snapshots.getr   r   rd   !PubsubProjectsSnapshotsGetRequestr   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>  s4     6 6D1"|L&=%!r,   c                 L    | j                  d      }| j                  |||      S )ad  Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      Args:
        request: (PubsubProjectsSnapshotsGetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      rt   r6   r8   r;   s       r+   rt   z.PubsubV1.ProjectsSnapshotsService.GetIamPolicy  ru   r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nz=v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicyrp   z&pubsub.projects.snapshots.getIamPolicyrw   rx   ry   rd   *PubsubProjectsSnapshotsGetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>  s7    )?)?Q:"|L673F#*r,   c                 L    | j                  d      }| j                  |||      S )a!  Lists the existing snapshots. Snapshots are used in [Seek]( https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot.

      Args:
        request: (PubsubProjectsSnapshotsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListSnapshotsResponse) The response message.
      r}   r6   r8   r;   s       r+   r}   z&PubsubV1.ProjectsSnapshotsService.List  r~   r,   c                  J    t        j                  ddddgdgddgddd	d
d      S )Nz"v1/projects/{projectsId}/snapshotsrp   zpubsub.projects.snapshots.listprojectr   r   zv1/{+project}/snapshotsrd   "PubsubProjectsSnapshotsListRequestListSnapshotsResponseFrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>  s9    !7!762!{K +./>2"r,   c                 L    | j                  d      }| j                  |||      S )aH  Updates an existing snapshot by updating the fields specified in the update mask. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot.

      Args:
        request: (PubsubProjectsSnapshotsPatchRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Snapshot) The response message.
      Patchr6   r8   r;   s       r+   r   z'PubsubV1.ProjectsSnapshotsService.Patch,  1     ##G,f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   PATCHzpubsub.projects.snapshots.patchrA   rc   updateSnapshotRequest#PubsubProjectsSnapshotsPatchRequestr   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>9  s4    ("8"8D3xH"-?%#r,   c                 L    | j                  d      }| j                  |||      S )a  Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

      Args:
        request: (PubsubProjectsSnapshotsSetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      r   r6   r8   r;   s       r+   r   z.PubsubV1.ProjectsSnapshotsService.SetIamPolicyG  ru   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz=v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicyr@   z&pubsub.projects.snapshots.setIamPolicyrw   r   r   *PubsubProjectsSnapshotsSetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>T  s4    )?)?Q:"|L3+F#*r,   c                 L    | j                  d      }| j                  |||      S )a^  Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

      Args:
        request: (PubsubProjectsSnapshotsTestIamPermissionsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (TestIamPermissionsResponse) The response message.
      r   r6   r8   r;   s       r+   r   z4PubsubV1.ProjectsSnapshotsService.TestIamPermissionsb  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzCv1/projects/{projectsId}/snapshots/{snapshotsId}:testIamPermissionsr@   z,pubsub.projects.snapshots.testIamPermissionsrw   r   r   0PubsubProjectsSnapshotsTestIamPermissionsRequestr   FrE   rQ   rS   r,   r+   rT   z*PubsubV1.ProjectsSnapshotsService.<lambda>o  s4    x/E/EW@"|L91L70r,   r0   )r   r   r   r   r   r   rV   r   r_   rm   rt   r}   r   r   r   r   r   s   @r+   r   r     s    < E
8F8F8C8"L8D8E8"L8($$r,   r   c                   v    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_        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_        d dZd e_        d dZd e_        d dZd e_        d dZd e_         xZS )!%PubsubV1.ProjectsSubscriptionsServicez6Service class for the projects_subscriptions resource.r   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r   r   r1   r2   s     r+   r   z.PubsubV1.ProjectsSubscriptionsService.__init__  s"    H114A&Idr,   c                 L    | j                  d      }| j                  |||      S )a=  Acknowledges the messages associated with the `ack_ids` in the `AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages from the subscription. Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.

      Args:
        request: (PubsubProjectsSubscriptionsAcknowledgeRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      Acknowledger6   r8   r;   s       r+   r   z1PubsubV1.ProjectsSubscriptionsService.Acknowledge  s1     ##M2f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzDv1/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledger@   z)pubsub.projects.subscriptions.acknowledgesubscriptionzv1/{+subscription}:acknowledgeacknowledgeRequest-PubsubProjectsSubscriptionsAcknowledgeRequestrf   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s6    (>(>X=&'#$6*I")r,   c                 L    | j                  d      }| j                  |||      S )a\  Creates a subscription to a given topic. See the [resource name rules] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). If the subscription already exists, returns `ALREADY_EXISTS`. If the corresponding topic doesn't exist, returns `NOT_FOUND`. If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.

      Args:
        request: (Subscription) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Subscription) The response message.
      rV   r6   r8   r;   s       r+   rV   z,PubsubV1.ProjectsSubscriptionsService.Create  r>   r,   c                  F    t        j                  ddddgdgg ddddd	      S )
N8v1/projects/{projectsId}/subscriptions/{subscriptionsId}r   z$pubsub.projects.subscriptions.createrA   rc   	<request>SubscriptionFrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s4    8#9#9L8xH"!()$r,   c                 L    | j                  d      }| j                  |||      S )a<  Deletes an existing subscription. All messages retained in the subscription are immediately dropped. Calls to `Pull` after deletion will return `NOT_FOUND`. After a subscription is deleted, a new one may be created with the same name, but the new one has no association with the old subscription or its topic unless the same topic is specified.

      Args:
        request: (PubsubProjectsSubscriptionsDeleteRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      r_   r6   r8   r;   s       r+   r_   z,PubsubV1.ProjectsSubscriptionsService.Delete  r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   rb   z$pubsub.projects.subscriptions.deleter   v1/{+subscription}rd   (PubsubProjectsSubscriptionsDeleteRequestrf   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s6    8#9#9L8&'#$*D"$r,   c                 L    | j                  d      }| j                  |||      S )a  Detaches a subscription from this topic. All messages retained in the subscription are dropped. Subsequent `Pull` and `StreamingPull` requests will return FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the endpoint will stop.

      Args:
        request: (PubsubProjectsSubscriptionsDetachRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (DetachSubscriptionResponse) The response message.
      Detachr6   r8   r;   s       r+   r   z,PubsubV1.ProjectsSubscriptionsService.Detach  r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz?v1/projects/{projectsId}/subscriptions/{subscriptionsId}:detachr@   z$pubsub.projects.subscriptions.detachr   zv1/{+subscription}:detachrd   (PubsubProjectsSubscriptionsDetachRequestDetachSubscriptionResponseFrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s6    8#9#9S8&'#$1D7$r,   c                 L    | j                  d      }| j                  |||      S )a  Gets the configuration details of a subscription.

      Args:
        request: (PubsubProjectsSubscriptionsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Subscription) The response message.
      rm   r6   r8   r;   s       r+   rm   z)PubsubV1.ProjectsSubscriptionsService.Get  rn   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   rp   z!pubsub.projects.subscriptions.getr   r   rd   %PubsubProjectsSubscriptionsGetRequestr   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>   s6     6 6L5&'#$*A)!r,   c                 L    | j                  d      }| j                  |||      S )ah  Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      Args:
        request: (PubsubProjectsSubscriptionsGetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      rt   r6   r8   r;   s       r+   rt   z2PubsubV1.ProjectsSubscriptionsService.GetIamPolicy  ru   r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )NzEv1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicyrp   z*pubsub.projects.subscriptions.getIamPolicyrw   rx   ry   rd   .PubsubProjectsSubscriptionsGetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s7    )?)?Y>"|L673J#*r,   c                 L    | j                  d      }| j                  |||      S )a  Lists matching subscriptions.

      Args:
        request: (PubsubProjectsSubscriptionsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListSubscriptionsResponse) The response message.
      r}   r6   r8   r;   s       r+   r}   z*PubsubV1.ProjectsSubscriptionsService.List)  r~   r,   c                  J    t        j                  ddddgdgddgddd	d
d      S )Nz&v1/projects/{projectsId}/subscriptionsrp   z"pubsub.projects.subscriptions.listr   r   r   zv1/{+project}/subscriptionsrd   &PubsubProjectsSubscriptionsListRequestListSubscriptionsResponseFrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>6  s9    !7!7:6!{K +.3B6"r,   c                 L    | j                  d      }| j                  |||      S )a?  Modifies the ack deadline for a specific message. This method is useful to indicate that more time is needed to process a message by the subscriber, or to make the message available for redelivery if the processing was interrupted. Note that this does not modify the subscription-level `ackDeadlineSeconds` used for subsequent messages.

      Args:
        request: (PubsubProjectsSubscriptionsModifyAckDeadlineRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      ModifyAckDeadliner6   r8   r;   s       r+   r   z7PubsubV1.ProjectsSubscriptionsService.ModifyAckDeadlineD  s2     ##$78f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzJv1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadliner@   z/pubsub.projects.subscriptions.modifyAckDeadliner   z$v1/{+subscription}:modifyAckDeadlinemodifyAckDeadlineRequest3PubsubProjectsSubscriptionsModifyAckDeadlineRequestrf   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>Q  s6    h.D.D^C&'#$<0O"/r,   c                 L    | j                  d      }| j                  |||      S )aM  Modifies the `PushConfig` for a specified subscription. This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.

      Args:
        request: (PubsubProjectsSubscriptionsModifyPushConfigRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      ModifyPushConfigr6   r8   r;   s       r+   r   z6PubsubV1.ProjectsSubscriptionsService.ModifyPushConfig_  s2     ##$67f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzIv1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfigr@   z.pubsub.projects.subscriptions.modifyPushConfigr   z#v1/{+subscription}:modifyPushConfigmodifyPushConfigRequest2PubsubProjectsSubscriptionsModifyPushConfigRequestrf   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>l  s6    X-C-C]B&'#$;/N".r,   c                 L    | j                  d      }| j                  |||      S )a  Updates an existing subscription by updating the fields specified in the update mask. Note that certain properties of a subscription, such as its topic, are not modifiable.

      Args:
        request: (PubsubProjectsSubscriptionsPatchRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Subscription) The response message.
      r   r6   r8   r;   s       r+   r   z+PubsubV1.ProjectsSubscriptionsService.Patchz  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr   r   z#pubsub.projects.subscriptions.patchrA   rc   updateSubscriptionRequest'PubsubProjectsSubscriptionsPatchRequestr   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s4    ("8"8L7xH"1C)#r,   c                 L    | j                  d      }| j                  |||      S )a  Pulls messages from the server.

      Args:
        request: (PubsubProjectsSubscriptionsPullRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (PullResponse) The response message.
      Pullr6   r8   r;   s       r+   r	  z*PubsubV1.ProjectsSubscriptionsService.Pull  r~   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz=v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pullr@   z"pubsub.projects.subscriptions.pullr   zv1/{+subscription}:pullpullRequest&PubsubProjectsSubscriptionsPullRequestPullResponseFrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  6    !7!7Q6&'#$/#B)"r,   c                 L    | j                  d      }| j                  |||      S )a  Seeks an existing subscription to a point in time or to a given snapshot, whichever is provided in the request. Snapshots are used in [Seek] (https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. Note that both the subscription and the snapshot must be on the same topic.

      Args:
        request: (PubsubProjectsSubscriptionsSeekRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (SeekResponse) The response message.
      Seekr6   r8   r;   s       r+   r  z*PubsubV1.ProjectsSubscriptionsService.Seek  r~   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz=v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seekr@   z"pubsub.projects.subscriptions.seekr   zv1/{+subscription}:seekseekRequest&PubsubProjectsSubscriptionsSeekRequestSeekResponseFrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  r  r,   c                 L    | j                  d      }| j                  |||      S )a  Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

      Args:
        request: (PubsubProjectsSubscriptionsSetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      r   r6   r8   r;   s       r+   r   z2PubsubV1.ProjectsSubscriptionsService.SetIamPolicy  ru   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzEv1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicyr@   z*pubsub.projects.subscriptions.setIamPolicyrw   r   r   .PubsubProjectsSubscriptionsSetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s4    )?)?Y>"|L3+J#*r,   c                 L    | j                  d      }| j                  |||      S )ab  Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

      Args:
        request: (PubsubProjectsSubscriptionsTestIamPermissionsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (TestIamPermissionsResponse) The response message.
      r   r6   r8   r;   s       r+   r   z8PubsubV1.ProjectsSubscriptionsService.TestIamPermissions  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )NzKv1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissionsr@   z0pubsub.projects.subscriptions.testIamPermissionsrw   r   r   4PubsubProjectsSubscriptionsTestIamPermissionsRequestr   FrE   rQ   rS   r,   r+   rT   z.PubsubV1.ProjectsSubscriptionsService.<lambda>  s4    x/E/E_D"|L91P70r,   r0   )r   r   r   r   r   r   r   r   rV   r_   r   rm   rt   r}   r   r   r   r	  r  r   r   r   r   s   @r+   r   r   }  s    @$E
8!K8F8F8F8C8"L8D8'#8&"8E8D8D8"L8($$r,   r   c                   >     e Zd ZdZdZ fdZddZd e_         xZS )'PubsubV1.ProjectsTopicsSnapshotsServicez9Service class for the projects_topics_snapshots resource.r!   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r    r   r1   r2   s     r+   r   z0PubsubV1.ProjectsTopicsSnapshotsService.__init__  s"    H33TCFKdr,   c                 L    | j                  d      }| j                  |||      S )a=  Lists the names of the snapshots on this topic. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot.

      Args:
        request: (PubsubProjectsTopicsSnapshotsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListTopicSnapshotsResponse) The response message.
      r}   r6   r8   r;   s       r+   r}   z,PubsubV1.ProjectsTopicsSnapshotsService.List  r~   r,   c                  J    t        j                  ddddgdgddgddd	d
d      S )Nz4v1/projects/{projectsId}/topics/{topicsId}/snapshotsrp   z%pubsub.projects.topics.snapshots.listtopicr   r   zv1/{+topic}/snapshotsrd   (PubsubProjectsTopicsSnapshotsListRequestListTopicSnapshotsResponseFrE   rQ   rS   r,   r+   rT   z0PubsubV1.ProjectsTopicsSnapshotsService.<lambda>  s9    !7!7H9yI +.-D7"r,   r0   	r   r   r   r   r   r   r}   r   r   r   s   @r+   r    r    s"    C'E
8Dr,   r    c                   >     e Zd ZdZdZ fdZddZd e_         xZS )+PubsubV1.ProjectsTopicsSubscriptionsServicez=Service class for the projects_topics_subscriptions resource.r#   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r"   r   r1   r2   s     r+   r   z4PubsubV1.ProjectsTopicsSubscriptionsService.__init__+  s"    H77GOdr,   c                 L    | j                  d      }| j                  |||      S )a=  Lists the names of the attached subscriptions on this topic.

      Args:
        request: (PubsubProjectsTopicsSubscriptionsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListTopicSubscriptionsResponse) The response message.
      r}   r6   r8   r;   s       r+   r}   z0PubsubV1.ProjectsTopicsSubscriptionsService.List0  r~   r,   c                  J    t        j                  ddddgdgddgddd	d
d      S )Nz8v1/projects/{projectsId}/topics/{topicsId}/subscriptionsrp   z)pubsub.projects.topics.subscriptions.listr   r   r   zv1/{+topic}/subscriptionsrd   ,PubsubProjectsTopicsSubscriptionsListRequestListTopicSubscriptionsResponseFrE   rQ   rS   r,   r+   rT   z4PubsubV1.ProjectsTopicsSubscriptionsService.<lambda>=  s9    !7!7L=yI +.1H;"r,   r0   r#  r   s   @r+   r"   r%  &  s"    G+E
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
_        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 )PubsubV1.ProjectsTopicsServicez/Service class for the projects_topics resource.r%   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r$   r   r1   r2   s     r+   r   z'PubsubV1.ProjectsTopicsService.__init__P  s"    H**D:6Bdr,   c                 L    | j                  d      }| j                  |||      S )aP  Creates the given topic with the given name. See the [resource name rules] (https://cloud.google.com/pubsub/docs/pubsub-basics#resource_names).

      Args:
        request: (Topic) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Topic) The response message.
      rV   r6   r8   r;   s       r+   rV   z%PubsubV1.ProjectsTopicsService.CreateU  r>   r,   c                  F    t        j                  ddddgdgg ddddd	      S )
N*v1/projects/{projectsId}/topics/{topicsId}r   zpubsub.projects.topics.createrA   rc   r   TopicFrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>b  s4    8#9#9>1xH"!!"$r,   c                 L    | j                  d      }| j                  |||      S )a;  Deletes the topic with the given name. Returns `NOT_FOUND` if the topic does not exist. After a topic is deleted, a new topic may be created with the same name; this is an entirely new topic with none of the old configuration or subscriptions. Existing subscriptions to this topic are not deleted, but their `topic` field is set to `_deleted-topic_`.

      Args:
        request: (PubsubProjectsTopicsDeleteRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Empty) The response message.
      r_   r6   r8   r;   s       r+   r_   z%PubsubV1.ProjectsTopicsService.Deletep  r>   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr0  rb   zpubsub.projects.topics.deleter   v1/{+topic}rd   !PubsubProjectsTopicsDeleteRequestrf   FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>}  s4    8#9#9>1yI#="$r,   c                 L    | j                  d      }| j                  |||      S )zGets the configuration of a topic.

      Args:
        request: (PubsubProjectsTopicsGetRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Topic) The response message.
      rm   r6   r8   r;   s       r+   rm   z"PubsubV1.ProjectsTopicsService.Get  rn   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr0  rp   zpubsub.projects.topics.getr   r4  rd   PubsubProjectsTopicsGetRequestr1  FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s4     6 6>.yI#:"!r,   c                 L    | j                  d      }| j                  |||      S )aa  Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      Args:
        request: (PubsubProjectsTopicsGetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      rt   r6   r8   r;   s       r+   rt   z+PubsubV1.ProjectsTopicsService.GetIamPolicy  ru   r,   c                  H    t        j                  ddddgdgdgdddd	d
      S )Nz7v1/projects/{projectsId}/topics/{topicsId}:getIamPolicyrp   z#pubsub.projects.topics.getIamPolicyrw   rx   ry   rd   'PubsubProjectsTopicsGetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s7    )?)?K7"|L673C#*r,   c                 L    | j                  d      }| j                  |||      S )zLists matching topics.

      Args:
        request: (PubsubProjectsTopicsListRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ListTopicsResponse) The response message.
      r}   r6   r8   r;   s       r+   r}   z#PubsubV1.ProjectsTopicsService.List  r~   r,   c                  J    t        j                  ddddgdgddgddd	d
d      S )Nzv1/projects/{projectsId}/topicsrp   zpubsub.projects.topics.listr   r   r   zv1/{+project}/topicsrd   PubsubProjectsTopicsListRequestListTopicsResponseFrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s9    !7!73/!{K +.,;/"r,   c                 L    | j                  d      }| j                  |||      S )af  Updates an existing topic by updating the fields specified in the update mask. Note that certain properties of a topic are not modifiable.

      Args:
        request: (PubsubProjectsTopicsPatchRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Topic) The response message.
      r   r6   r8   r;   s       r+   r   z$PubsubV1.ProjectsTopicsService.Patch  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nr0  r   zpubsub.projects.topics.patchrA   rc   updateTopicRequest PubsubProjectsTopicsPatchRequestr1  FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s4    ("8"8>0xH"*<"#r,   c                 L    | j                  d      }| j                  |||      S )a@  Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic does not exist.

      Args:
        request: (PubsubProjectsTopicsPublishRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (PublishResponse) The response message.
      Publishr6   r8   r;   s       r+   rE  z&PubsubV1.ProjectsTopicsService.Publish  s1     ##I.f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz2v1/projects/{projectsId}/topics/{topicsId}:publishr@   zpubsub.projects.topics.publishr   zv1/{+topic}:publishpublishRequest"PubsubProjectsTopicsPublishRequestPublishResponseFrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s4    H$:$:F2yI+&>,%r,   c                 L    | j                  d      }| j                  |||      S )a  Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

      Args:
        request: (PubsubProjectsTopicsSetIamPolicyRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (Policy) The response message.
      r   r6   r8   r;   s       r+   r   z+PubsubV1.ProjectsTopicsService.SetIamPolicy  ru   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz7v1/projects/{projectsId}/topics/{topicsId}:setIamPolicyr@   z#pubsub.projects.topics.setIamPolicyrw   r   r   'PubsubProjectsTopicsSetIamPolicyRequestr{   FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>  s4    )?)?K7"|L3+C#*r,   c                 L    | j                  d      }| j                  |||      S )a[  Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

      Args:
        request: (PubsubProjectsTopicsTestIamPermissionsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (TestIamPermissionsResponse) The response message.
      r   r6   r8   r;   s       r+   r   z1PubsubV1.ProjectsTopicsService.TestIamPermissions-  r   r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz=v1/projects/{projectsId}/topics/{topicsId}:testIamPermissionsr@   z)pubsub.projects.topics.testIamPermissionsrw   r   r   -PubsubProjectsTopicsTestIamPermissionsRequestr   FrE   rQ   rS   r,   r+   rT   z'PubsubV1.ProjectsTopicsService.<lambda>:  s4    x/E/EQ="|L91I70r,   r0   )r   r   r   r   r   r   rV   r   r_   rm   rt   r}   r   rE  r   r   r   r   s   @r+   r$   r,  K  s    9E
8F8F8C8"L8D8E8G8"L8($$r,   r$   c                   V     e Zd ZdZdZ fdZddZd e_        ddZd e_         xZ	S )	PubsubV1.ProjectsServicez(Service class for the projects resource.r'   c                 N    t         t        j                  |   |       i | _        y r0   )r   r   r&   r   r1   r2   s     r+   r   z!PubsubV1.ProjectsService.__init__M  s"    H$$d4V<dr,   c                 L    | j                  d      }| j                  |||      S )a4  Tests applying MessageTransforms to a Pub/Sub message.

      Args:
        request: (PubsubProjectsTestMessageTransformsRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (TestMessageTransformsResponse) The response message.
      TestMessageTransformsr6   r8   r;   s       r+   rT  z.PubsubV1.ProjectsService.TestMessageTransformsR  s2     ##$;<f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz.v1/projects/{projectsId}:testMessageTransformsr@   z%pubsub.projects.testMessageTransformsr   z#v1/{+project}:testMessageTransformstestMessageTransformsRequest*PubsubProjectsTestMessageTransformsRequestTestMessageTransformsResponseFrE   rQ   rS   r,   r+   rT   z!PubsubV1.ProjectsService.<lambda>_  s4    (2H2HB9!{K;4F:3r,   c                 L    | j                  d      }| j                  |||      S )a!  Validates a MessageTransform.

      Args:
        request: (PubsubProjectsValidateMessageTransformRequest) input message
        global_params: (StandardQueryParameters, default: None) global arguments
      Returns:
        (ValidateMessageTransformResponse) The response message.
      ValidateMessageTransformr6   r8   r;   s       r+   rZ  z1PubsubV1.ProjectsService.ValidateMessageTransformm  s2     ##$>?f__
'  8 8r,   c                  F    t        j                  ddddgdgg ddddd	
      S )Nz1v1/projects/{projectsId}:validateMessageTransformr@   z(pubsub.projects.validateMessageTransformr   z&v1/{+project}:validateMessageTransformvalidateMessageTransformRequest-PubsubProjectsValidateMessageTransformRequest ValidateMessageTransformResponseFrE   rQ   rS   r,   r+   rT   z!PubsubV1.ProjectsService.<lambda>z  s4    X5K5KE<!{K>7I=6r,   r0   )
r   r   r   r   r   r   rT  r   rZ  r   r   s   @r+   r&   rQ  H  s3    2E
8+'8.**r,   r&   )rd   NTNNFFNNNN)r   r   r   r   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   r   s   @r+   r   r   
   s    ?/-(7-(=?gh'(*"."+!,()-6:/4<@?C	/.gx66 gR`!8!8 `DBX%<%< BH#x'>'> #J#8+B+B #J{h55 {z>// > >r,   r   N)
r   
__future__r   apitools.base.pyr   /googlecloudsdk.generated_clients.apis.pubsub.v1r   r_  BaseApiClientr   rS   r,   r+   <module>rp     s'    5 ' % Z|x%% |r,   