Skip to content

Commit 187a036

Browse files
feat: [google-apps-chat] add UpdateMembership API (googleapis#12589)
- [ ] Regenerate this pull request now. PiperOrigin-RevId: 625805898 Source-Link: googleapis/googleapis@c106d2f Source-Link: https://github.com/googleapis/googleapis-gen/commit/593bb0cb6cafe7cb71c36774f26c7f5c88cbb5d9 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWFwcHMtY2hhdC8uT3dsQm90LnlhbWwiLCJoIjoiNTkzYmIwY2I2Y2FmZTdjYjcxYzM2Nzc0ZjI2YzdmNWM4OGNiYjVkOSJ9 --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Anthonios Partheniou <partheniou@google.com>
1 parent e19f79f commit 187a036

File tree

18 files changed

+1976
-499
lines changed

18 files changed

+1976
-499
lines changed

packages/google-apps-chat/google/apps/chat/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
ListMembershipsRequest,
5252
ListMembershipsResponse,
5353
Membership,
54+
UpdateMembershipRequest,
5455
)
5556
from google.apps.chat_v1.types.message import (
5657
AccessoryWidget,
@@ -123,6 +124,7 @@
123124
"ListMembershipsRequest",
124125
"ListMembershipsResponse",
125126
"Membership",
127+
"UpdateMembershipRequest",
126128
"AccessoryWidget",
127129
"ActionResponse",
128130
"AttachedGif",

packages/google-apps-chat/google/apps/chat/gapic_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515
#
16-
__version__ = "0.1.3" # {x-release-please-version}
16+
__version__ = "0.0.0" # {x-release-please-version}

packages/google-apps-chat/google/apps/chat_v1/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
ListMembershipsRequest,
4949
ListMembershipsResponse,
5050
Membership,
51+
UpdateMembershipRequest,
5152
)
5253
from .types.message import (
5354
AccessoryWidget,
@@ -150,6 +151,7 @@
150151
"SlashCommandMetadata",
151152
"Space",
152153
"Thread",
154+
"UpdateMembershipRequest",
153155
"UpdateMessageRequest",
154156
"UpdateSpaceRequest",
155157
"UploadAttachmentRequest",

packages/google-apps-chat/google/apps/chat_v1/gapic_metadata.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,11 @@
105105
"set_up_space"
106106
]
107107
},
108+
"UpdateMembership": {
109+
"methods": [
110+
"update_membership"
111+
]
112+
},
108113
"UpdateMessage": {
109114
"methods": [
110115
"update_message"
@@ -220,6 +225,11 @@
220225
"set_up_space"
221226
]
222227
},
228+
"UpdateMembership": {
229+
"methods": [
230+
"update_membership"
231+
]
232+
},
223233
"UpdateMessage": {
224234
"methods": [
225235
"update_message"
@@ -335,6 +345,11 @@
335345
"set_up_space"
336346
]
337347
},
348+
"UpdateMembership": {
349+
"methods": [
350+
"update_membership"
351+
]
352+
},
338353
"UpdateMessage": {
339354
"methods": [
340355
"update_message"

packages/google-apps-chat/google/apps/chat_v1/gapic_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515
#
16-
__version__ = "0.1.3" # {x-release-please-version}
16+
__version__ = "0.0.0" # {x-release-please-version}

packages/google-apps-chat/google/apps/chat_v1/services/chat_service/async_client.py

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2638,6 +2638,139 @@ async def sample_create_membership():
26382638
# Done; return the response.
26392639
return response
26402640

2641+
async def update_membership(
2642+
self,
2643+
request: Optional[Union[gc_membership.UpdateMembershipRequest, dict]] = None,
2644+
*,
2645+
membership: Optional[gc_membership.Membership] = None,
2646+
update_mask: Optional[field_mask_pb2.FieldMask] = None,
2647+
retry: OptionalRetry = gapic_v1.method.DEFAULT,
2648+
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
2649+
metadata: Sequence[Tuple[str, str]] = (),
2650+
) -> gc_membership.Membership:
2651+
r"""Updates a membership. Requires `user
2652+
authentication <https://developers.google.com/chat/api/guides/auth/users>`__.
2653+
2654+
.. code-block:: python
2655+
2656+
# This snippet has been automatically generated and should be regarded as a
2657+
# code template only.
2658+
# It will require modifications to work:
2659+
# - It may require correct/in-range values for request initialization.
2660+
# - It may require specifying regional endpoints when creating the service
2661+
# client as shown in:
2662+
# https://googleapis.dev/python/google-api-core/latest/client_options.html
2663+
from google.apps import chat_v1
2664+
2665+
async def sample_update_membership():
2666+
# Create a client
2667+
client = chat_v1.ChatServiceAsyncClient()
2668+
2669+
# Initialize request argument(s)
2670+
request = chat_v1.UpdateMembershipRequest(
2671+
)
2672+
2673+
# Make the request
2674+
response = await client.update_membership(request=request)
2675+
2676+
# Handle the response
2677+
print(response)
2678+
2679+
Args:
2680+
request (Optional[Union[google.apps.chat_v1.types.UpdateMembershipRequest, dict]]):
2681+
The request object. Request message for updating a
2682+
membership.
2683+
membership (:class:`google.apps.chat_v1.types.Membership`):
2684+
Required. The membership to update. Only fields
2685+
specified by ``update_mask`` are updated.
2686+
2687+
This corresponds to the ``membership`` field
2688+
on the ``request`` instance; if ``request`` is provided, this
2689+
should not be set.
2690+
update_mask (:class:`google.protobuf.field_mask_pb2.FieldMask`):
2691+
Required. The field paths to update. Separate multiple
2692+
values with commas or use ``*`` to update all field
2693+
paths.
2694+
2695+
Currently supported field paths:
2696+
2697+
- ``role``
2698+
2699+
This corresponds to the ``update_mask`` field
2700+
on the ``request`` instance; if ``request`` is provided, this
2701+
should not be set.
2702+
retry (google.api_core.retry_async.AsyncRetry): Designation of what errors, if any,
2703+
should be retried.
2704+
timeout (float): The timeout for this request.
2705+
metadata (Sequence[Tuple[str, str]]): Strings which should be
2706+
sent along with the request as metadata.
2707+
2708+
Returns:
2709+
google.apps.chat_v1.types.Membership:
2710+
Represents a membership relation in
2711+
Google Chat, such as whether a user or
2712+
Chat app is invited to, part of, or
2713+
absent from a space.
2714+
2715+
"""
2716+
# Create or coerce a protobuf request object.
2717+
# Quick check: If we got a request object, we should *not* have
2718+
# gotten any keyword arguments that map to the request.
2719+
has_flattened_params = any([membership, update_mask])
2720+
if request is not None and has_flattened_params:
2721+
raise ValueError(
2722+
"If the `request` argument is set, then none of "
2723+
"the individual field arguments should be set."
2724+
)
2725+
2726+
request = gc_membership.UpdateMembershipRequest(request)
2727+
2728+
# If we have keyword arguments corresponding to fields on the
2729+
# request, apply these.
2730+
if membership is not None:
2731+
request.membership = membership
2732+
if update_mask is not None:
2733+
request.update_mask = update_mask
2734+
2735+
# Wrap the RPC method; this adds retry and timeout information,
2736+
# and friendly error handling.
2737+
rpc = gapic_v1.method_async.wrap_method(
2738+
self._client._transport.update_membership,
2739+
default_retry=retries.AsyncRetry(
2740+
initial=1.0,
2741+
maximum=10.0,
2742+
multiplier=1.3,
2743+
predicate=retries.if_exception_type(
2744+
core_exceptions.ServiceUnavailable,
2745+
),
2746+
deadline=30.0,
2747+
),
2748+
default_timeout=30.0,
2749+
client_info=DEFAULT_CLIENT_INFO,
2750+
)
2751+
2752+
# Certain fields should be provided within the metadata header;
2753+
# add these here.
2754+
metadata = tuple(metadata) + (
2755+
gapic_v1.routing_header.to_grpc_metadata(
2756+
(("membership.name", request.membership.name),)
2757+
),
2758+
)
2759+
2760+
# Validate the universe domain.
2761+
self._client._validate_universe_domain()
2762+
2763+
# Send the request.
2764+
response = await rpc(
2765+
request,
2766+
retry=retry,
2767+
timeout=timeout,
2768+
metadata=metadata,
2769+
)
2770+
2771+
# Done; return the response.
2772+
return response
2773+
26412774
async def delete_membership(
26422775
self,
26432776
request: Optional[Union[membership.DeleteMembershipRequest, dict]] = None,

packages/google-apps-chat/google/apps/chat_v1/services/chat_service/client.py

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2987,6 +2987,130 @@ def sample_create_membership():
29872987
# Done; return the response.
29882988
return response
29892989

2990+
def update_membership(
2991+
self,
2992+
request: Optional[Union[gc_membership.UpdateMembershipRequest, dict]] = None,
2993+
*,
2994+
membership: Optional[gc_membership.Membership] = None,
2995+
update_mask: Optional[field_mask_pb2.FieldMask] = None,
2996+
retry: OptionalRetry = gapic_v1.method.DEFAULT,
2997+
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
2998+
metadata: Sequence[Tuple[str, str]] = (),
2999+
) -> gc_membership.Membership:
3000+
r"""Updates a membership. Requires `user
3001+
authentication <https://developers.google.com/chat/api/guides/auth/users>`__.
3002+
3003+
.. code-block:: python
3004+
3005+
# This snippet has been automatically generated and should be regarded as a
3006+
# code template only.
3007+
# It will require modifications to work:
3008+
# - It may require correct/in-range values for request initialization.
3009+
# - It may require specifying regional endpoints when creating the service
3010+
# client as shown in:
3011+
# https://googleapis.dev/python/google-api-core/latest/client_options.html
3012+
from google.apps import chat_v1
3013+
3014+
def sample_update_membership():
3015+
# Create a client
3016+
client = chat_v1.ChatServiceClient()
3017+
3018+
# Initialize request argument(s)
3019+
request = chat_v1.UpdateMembershipRequest(
3020+
)
3021+
3022+
# Make the request
3023+
response = client.update_membership(request=request)
3024+
3025+
# Handle the response
3026+
print(response)
3027+
3028+
Args:
3029+
request (Union[google.apps.chat_v1.types.UpdateMembershipRequest, dict]):
3030+
The request object. Request message for updating a
3031+
membership.
3032+
membership (google.apps.chat_v1.types.Membership):
3033+
Required. The membership to update. Only fields
3034+
specified by ``update_mask`` are updated.
3035+
3036+
This corresponds to the ``membership`` field
3037+
on the ``request`` instance; if ``request`` is provided, this
3038+
should not be set.
3039+
update_mask (google.protobuf.field_mask_pb2.FieldMask):
3040+
Required. The field paths to update. Separate multiple
3041+
values with commas or use ``*`` to update all field
3042+
paths.
3043+
3044+
Currently supported field paths:
3045+
3046+
- ``role``
3047+
3048+
This corresponds to the ``update_mask`` field
3049+
on the ``request`` instance; if ``request`` is provided, this
3050+
should not be set.
3051+
retry (google.api_core.retry.Retry): Designation of what errors, if any,
3052+
should be retried.
3053+
timeout (float): The timeout for this request.
3054+
metadata (Sequence[Tuple[str, str]]): Strings which should be
3055+
sent along with the request as metadata.
3056+
3057+
Returns:
3058+
google.apps.chat_v1.types.Membership:
3059+
Represents a membership relation in
3060+
Google Chat, such as whether a user or
3061+
Chat app is invited to, part of, or
3062+
absent from a space.
3063+
3064+
"""
3065+
# Create or coerce a protobuf request object.
3066+
# Quick check: If we got a request object, we should *not* have
3067+
# gotten any keyword arguments that map to the request.
3068+
has_flattened_params = any([membership, update_mask])
3069+
if request is not None and has_flattened_params:
3070+
raise ValueError(
3071+
"If the `request` argument is set, then none of "
3072+
"the individual field arguments should be set."
3073+
)
3074+
3075+
# Minor optimization to avoid making a copy if the user passes
3076+
# in a gc_membership.UpdateMembershipRequest.
3077+
# There's no risk of modifying the input as we've already verified
3078+
# there are no flattened fields.
3079+
if not isinstance(request, gc_membership.UpdateMembershipRequest):
3080+
request = gc_membership.UpdateMembershipRequest(request)
3081+
# If we have keyword arguments corresponding to fields on the
3082+
# request, apply these.
3083+
if membership is not None:
3084+
request.membership = membership
3085+
if update_mask is not None:
3086+
request.update_mask = update_mask
3087+
3088+
# Wrap the RPC method; this adds retry and timeout information,
3089+
# and friendly error handling.
3090+
rpc = self._transport._wrapped_methods[self._transport.update_membership]
3091+
3092+
# Certain fields should be provided within the metadata header;
3093+
# add these here.
3094+
metadata = tuple(metadata) + (
3095+
gapic_v1.routing_header.to_grpc_metadata(
3096+
(("membership.name", request.membership.name),)
3097+
),
3098+
)
3099+
3100+
# Validate the universe domain.
3101+
self._validate_universe_domain()
3102+
3103+
# Send the request.
3104+
response = rpc(
3105+
request,
3106+
retry=retry,
3107+
timeout=timeout,
3108+
metadata=metadata,
3109+
)
3110+
3111+
# Done; return the response.
3112+
return response
3113+
29903114
def delete_membership(
29913115
self,
29923116
request: Optional[Union[membership.DeleteMembershipRequest, dict]] = None,

packages/google-apps-chat/google/apps/chat_v1/services/chat_service/transports/base.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,20 @@ def _prep_wrapped_messages(self, client_info):
404404
default_timeout=30.0,
405405
client_info=client_info,
406406
),
407+
self.update_membership: gapic_v1.method.wrap_method(
408+
self.update_membership,
409+
default_retry=retries.Retry(
410+
initial=1.0,
411+
maximum=10.0,
412+
multiplier=1.3,
413+
predicate=retries.if_exception_type(
414+
core_exceptions.ServiceUnavailable,
415+
),
416+
deadline=30.0,
417+
),
418+
default_timeout=30.0,
419+
client_info=client_info,
420+
),
407421
self.delete_membership: gapic_v1.method.wrap_method(
408422
self.delete_membership,
409423
default_retry=retries.Retry(
@@ -633,6 +647,15 @@ def create_membership(
633647
]:
634648
raise NotImplementedError()
635649

650+
@property
651+
def update_membership(
652+
self,
653+
) -> Callable[
654+
[gc_membership.UpdateMembershipRequest],
655+
Union[gc_membership.Membership, Awaitable[gc_membership.Membership]],
656+
]:
657+
raise NotImplementedError()
658+
636659
@property
637660
def delete_membership(
638661
self,

0 commit comments

Comments
 (0)