All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.chime.DefaultChimeClient Maven / Gradle / Ivy

/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package software.amazon.awssdk.services.chime;

import java.util.Collections;
import java.util.List;
import java.util.function.Consumer;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkInternalApi;
import software.amazon.awssdk.awscore.AwsRequestOverrideConfiguration;
import software.amazon.awssdk.awscore.client.handler.AwsSyncClientHandler;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.core.ApiName;
import software.amazon.awssdk.core.RequestOverrideConfiguration;
import software.amazon.awssdk.core.client.config.SdkClientConfiguration;
import software.amazon.awssdk.core.client.config.SdkClientOption;
import software.amazon.awssdk.core.client.handler.ClientExecutionParams;
import software.amazon.awssdk.core.client.handler.SyncClientHandler;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.core.http.HttpResponseHandler;
import software.amazon.awssdk.core.metrics.CoreMetric;
import software.amazon.awssdk.core.util.VersionInfo;
import software.amazon.awssdk.metrics.MetricCollector;
import software.amazon.awssdk.metrics.MetricPublisher;
import software.amazon.awssdk.metrics.NoOpMetricCollector;
import software.amazon.awssdk.protocols.core.ExceptionMetadata;
import software.amazon.awssdk.protocols.json.AwsJsonProtocol;
import software.amazon.awssdk.protocols.json.AwsJsonProtocolFactory;
import software.amazon.awssdk.protocols.json.BaseAwsJsonProtocolFactory;
import software.amazon.awssdk.protocols.json.JsonOperationMetadata;
import software.amazon.awssdk.services.chime.model.AccessDeniedException;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumberWithUserRequest;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumberWithUserResponse;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumbersWithVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumbersWithVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumbersWithVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.AssociatePhoneNumbersWithVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.AssociateSigninDelegateGroupsWithAccountRequest;
import software.amazon.awssdk.services.chime.model.AssociateSigninDelegateGroupsWithAccountResponse;
import software.amazon.awssdk.services.chime.model.BadRequestException;
import software.amazon.awssdk.services.chime.model.BatchCreateAttendeeRequest;
import software.amazon.awssdk.services.chime.model.BatchCreateAttendeeResponse;
import software.amazon.awssdk.services.chime.model.BatchCreateChannelMembershipRequest;
import software.amazon.awssdk.services.chime.model.BatchCreateChannelMembershipResponse;
import software.amazon.awssdk.services.chime.model.BatchCreateRoomMembershipRequest;
import software.amazon.awssdk.services.chime.model.BatchCreateRoomMembershipResponse;
import software.amazon.awssdk.services.chime.model.BatchDeletePhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.BatchDeletePhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.BatchSuspendUserRequest;
import software.amazon.awssdk.services.chime.model.BatchSuspendUserResponse;
import software.amazon.awssdk.services.chime.model.BatchUnsuspendUserRequest;
import software.amazon.awssdk.services.chime.model.BatchUnsuspendUserResponse;
import software.amazon.awssdk.services.chime.model.BatchUpdatePhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.BatchUpdatePhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.BatchUpdateUserRequest;
import software.amazon.awssdk.services.chime.model.BatchUpdateUserResponse;
import software.amazon.awssdk.services.chime.model.ChimeException;
import software.amazon.awssdk.services.chime.model.ChimeRequest;
import software.amazon.awssdk.services.chime.model.ConflictException;
import software.amazon.awssdk.services.chime.model.CreateAccountRequest;
import software.amazon.awssdk.services.chime.model.CreateAccountResponse;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceAdminRequest;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceAdminResponse;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceRequest;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceResponse;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.CreateAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.CreateAttendeeRequest;
import software.amazon.awssdk.services.chime.model.CreateAttendeeResponse;
import software.amazon.awssdk.services.chime.model.CreateBotRequest;
import software.amazon.awssdk.services.chime.model.CreateBotResponse;
import software.amazon.awssdk.services.chime.model.CreateChannelBanRequest;
import software.amazon.awssdk.services.chime.model.CreateChannelBanResponse;
import software.amazon.awssdk.services.chime.model.CreateChannelMembershipRequest;
import software.amazon.awssdk.services.chime.model.CreateChannelMembershipResponse;
import software.amazon.awssdk.services.chime.model.CreateChannelModeratorRequest;
import software.amazon.awssdk.services.chime.model.CreateChannelModeratorResponse;
import software.amazon.awssdk.services.chime.model.CreateChannelRequest;
import software.amazon.awssdk.services.chime.model.CreateChannelResponse;
import software.amazon.awssdk.services.chime.model.CreateMediaCapturePipelineRequest;
import software.amazon.awssdk.services.chime.model.CreateMediaCapturePipelineResponse;
import software.amazon.awssdk.services.chime.model.CreateMeetingDialOutRequest;
import software.amazon.awssdk.services.chime.model.CreateMeetingDialOutResponse;
import software.amazon.awssdk.services.chime.model.CreateMeetingRequest;
import software.amazon.awssdk.services.chime.model.CreateMeetingResponse;
import software.amazon.awssdk.services.chime.model.CreateMeetingWithAttendeesRequest;
import software.amazon.awssdk.services.chime.model.CreateMeetingWithAttendeesResponse;
import software.amazon.awssdk.services.chime.model.CreatePhoneNumberOrderRequest;
import software.amazon.awssdk.services.chime.model.CreatePhoneNumberOrderResponse;
import software.amazon.awssdk.services.chime.model.CreateProxySessionRequest;
import software.amazon.awssdk.services.chime.model.CreateProxySessionResponse;
import software.amazon.awssdk.services.chime.model.CreateRoomMembershipRequest;
import software.amazon.awssdk.services.chime.model.CreateRoomMembershipResponse;
import software.amazon.awssdk.services.chime.model.CreateRoomRequest;
import software.amazon.awssdk.services.chime.model.CreateRoomResponse;
import software.amazon.awssdk.services.chime.model.CreateSipMediaApplicationCallRequest;
import software.amazon.awssdk.services.chime.model.CreateSipMediaApplicationCallResponse;
import software.amazon.awssdk.services.chime.model.CreateSipMediaApplicationRequest;
import software.amazon.awssdk.services.chime.model.CreateSipMediaApplicationResponse;
import software.amazon.awssdk.services.chime.model.CreateSipRuleRequest;
import software.amazon.awssdk.services.chime.model.CreateSipRuleResponse;
import software.amazon.awssdk.services.chime.model.CreateUserRequest;
import software.amazon.awssdk.services.chime.model.CreateUserResponse;
import software.amazon.awssdk.services.chime.model.CreateVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.CreateVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.CreateVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.CreateVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.DeleteAccountRequest;
import software.amazon.awssdk.services.chime.model.DeleteAccountResponse;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceAdminRequest;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceAdminResponse;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceRequest;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceResponse;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceStreamingConfigurationsRequest;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceStreamingConfigurationsResponse;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.DeleteAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.DeleteAttendeeRequest;
import software.amazon.awssdk.services.chime.model.DeleteAttendeeResponse;
import software.amazon.awssdk.services.chime.model.DeleteChannelBanRequest;
import software.amazon.awssdk.services.chime.model.DeleteChannelBanResponse;
import software.amazon.awssdk.services.chime.model.DeleteChannelMembershipRequest;
import software.amazon.awssdk.services.chime.model.DeleteChannelMembershipResponse;
import software.amazon.awssdk.services.chime.model.DeleteChannelMessageRequest;
import software.amazon.awssdk.services.chime.model.DeleteChannelMessageResponse;
import software.amazon.awssdk.services.chime.model.DeleteChannelModeratorRequest;
import software.amazon.awssdk.services.chime.model.DeleteChannelModeratorResponse;
import software.amazon.awssdk.services.chime.model.DeleteChannelRequest;
import software.amazon.awssdk.services.chime.model.DeleteChannelResponse;
import software.amazon.awssdk.services.chime.model.DeleteEventsConfigurationRequest;
import software.amazon.awssdk.services.chime.model.DeleteEventsConfigurationResponse;
import software.amazon.awssdk.services.chime.model.DeleteMediaCapturePipelineRequest;
import software.amazon.awssdk.services.chime.model.DeleteMediaCapturePipelineResponse;
import software.amazon.awssdk.services.chime.model.DeleteMeetingRequest;
import software.amazon.awssdk.services.chime.model.DeleteMeetingResponse;
import software.amazon.awssdk.services.chime.model.DeletePhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.DeletePhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.DeleteProxySessionRequest;
import software.amazon.awssdk.services.chime.model.DeleteProxySessionResponse;
import software.amazon.awssdk.services.chime.model.DeleteRoomMembershipRequest;
import software.amazon.awssdk.services.chime.model.DeleteRoomMembershipResponse;
import software.amazon.awssdk.services.chime.model.DeleteRoomRequest;
import software.amazon.awssdk.services.chime.model.DeleteRoomResponse;
import software.amazon.awssdk.services.chime.model.DeleteSipMediaApplicationRequest;
import software.amazon.awssdk.services.chime.model.DeleteSipMediaApplicationResponse;
import software.amazon.awssdk.services.chime.model.DeleteSipRuleRequest;
import software.amazon.awssdk.services.chime.model.DeleteSipRuleResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorEmergencyCallingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorEmergencyCallingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorOriginationRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorOriginationResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorProxyRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorProxyResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorStreamingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorStreamingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorTerminationCredentialsRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorTerminationCredentialsResponse;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorTerminationRequest;
import software.amazon.awssdk.services.chime.model.DeleteVoiceConnectorTerminationResponse;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceAdminRequest;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceAdminResponse;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceRequest;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceResponse;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.DescribeAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelBanRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelBanResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelMembershipForAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelMembershipForAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelMembershipRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelMembershipResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelModeratedByAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelModeratedByAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelModeratorRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelModeratorResponse;
import software.amazon.awssdk.services.chime.model.DescribeChannelRequest;
import software.amazon.awssdk.services.chime.model.DescribeChannelResponse;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumberFromUserRequest;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumberFromUserResponse;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumbersFromVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumbersFromVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumbersFromVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.DisassociatePhoneNumbersFromVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.DisassociateSigninDelegateGroupsFromAccountRequest;
import software.amazon.awssdk.services.chime.model.DisassociateSigninDelegateGroupsFromAccountResponse;
import software.amazon.awssdk.services.chime.model.ForbiddenException;
import software.amazon.awssdk.services.chime.model.GetAccountRequest;
import software.amazon.awssdk.services.chime.model.GetAccountResponse;
import software.amazon.awssdk.services.chime.model.GetAccountSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetAccountSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetAppInstanceRetentionSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetAppInstanceRetentionSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetAppInstanceStreamingConfigurationsRequest;
import software.amazon.awssdk.services.chime.model.GetAppInstanceStreamingConfigurationsResponse;
import software.amazon.awssdk.services.chime.model.GetAttendeeRequest;
import software.amazon.awssdk.services.chime.model.GetAttendeeResponse;
import software.amazon.awssdk.services.chime.model.GetBotRequest;
import software.amazon.awssdk.services.chime.model.GetBotResponse;
import software.amazon.awssdk.services.chime.model.GetChannelMessageRequest;
import software.amazon.awssdk.services.chime.model.GetChannelMessageResponse;
import software.amazon.awssdk.services.chime.model.GetEventsConfigurationRequest;
import software.amazon.awssdk.services.chime.model.GetEventsConfigurationResponse;
import software.amazon.awssdk.services.chime.model.GetGlobalSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetGlobalSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetMediaCapturePipelineRequest;
import software.amazon.awssdk.services.chime.model.GetMediaCapturePipelineResponse;
import software.amazon.awssdk.services.chime.model.GetMeetingRequest;
import software.amazon.awssdk.services.chime.model.GetMeetingResponse;
import software.amazon.awssdk.services.chime.model.GetMessagingSessionEndpointRequest;
import software.amazon.awssdk.services.chime.model.GetMessagingSessionEndpointResponse;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberOrderRequest;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberOrderResponse;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetPhoneNumberSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetProxySessionRequest;
import software.amazon.awssdk.services.chime.model.GetProxySessionResponse;
import software.amazon.awssdk.services.chime.model.GetRetentionSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetRetentionSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetRoomRequest;
import software.amazon.awssdk.services.chime.model.GetRoomResponse;
import software.amazon.awssdk.services.chime.model.GetSipMediaApplicationLoggingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.GetSipMediaApplicationLoggingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.GetSipMediaApplicationRequest;
import software.amazon.awssdk.services.chime.model.GetSipMediaApplicationResponse;
import software.amazon.awssdk.services.chime.model.GetSipRuleRequest;
import software.amazon.awssdk.services.chime.model.GetSipRuleResponse;
import software.amazon.awssdk.services.chime.model.GetUserRequest;
import software.amazon.awssdk.services.chime.model.GetUserResponse;
import software.amazon.awssdk.services.chime.model.GetUserSettingsRequest;
import software.amazon.awssdk.services.chime.model.GetUserSettingsResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorEmergencyCallingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorEmergencyCallingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorLoggingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorLoggingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorOriginationRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorOriginationResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorProxyRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorProxyResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorStreamingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorStreamingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorTerminationHealthRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorTerminationHealthResponse;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorTerminationRequest;
import software.amazon.awssdk.services.chime.model.GetVoiceConnectorTerminationResponse;
import software.amazon.awssdk.services.chime.model.InviteUsersRequest;
import software.amazon.awssdk.services.chime.model.InviteUsersResponse;
import software.amazon.awssdk.services.chime.model.ListAccountsRequest;
import software.amazon.awssdk.services.chime.model.ListAccountsResponse;
import software.amazon.awssdk.services.chime.model.ListAppInstanceAdminsRequest;
import software.amazon.awssdk.services.chime.model.ListAppInstanceAdminsResponse;
import software.amazon.awssdk.services.chime.model.ListAppInstanceUsersRequest;
import software.amazon.awssdk.services.chime.model.ListAppInstanceUsersResponse;
import software.amazon.awssdk.services.chime.model.ListAppInstancesRequest;
import software.amazon.awssdk.services.chime.model.ListAppInstancesResponse;
import software.amazon.awssdk.services.chime.model.ListAttendeeTagsRequest;
import software.amazon.awssdk.services.chime.model.ListAttendeeTagsResponse;
import software.amazon.awssdk.services.chime.model.ListAttendeesRequest;
import software.amazon.awssdk.services.chime.model.ListAttendeesResponse;
import software.amazon.awssdk.services.chime.model.ListBotsRequest;
import software.amazon.awssdk.services.chime.model.ListBotsResponse;
import software.amazon.awssdk.services.chime.model.ListChannelBansRequest;
import software.amazon.awssdk.services.chime.model.ListChannelBansResponse;
import software.amazon.awssdk.services.chime.model.ListChannelMembershipsForAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.ListChannelMembershipsForAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.ListChannelMembershipsRequest;
import software.amazon.awssdk.services.chime.model.ListChannelMembershipsResponse;
import software.amazon.awssdk.services.chime.model.ListChannelMessagesRequest;
import software.amazon.awssdk.services.chime.model.ListChannelMessagesResponse;
import software.amazon.awssdk.services.chime.model.ListChannelModeratorsRequest;
import software.amazon.awssdk.services.chime.model.ListChannelModeratorsResponse;
import software.amazon.awssdk.services.chime.model.ListChannelsModeratedByAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.ListChannelsModeratedByAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.ListChannelsRequest;
import software.amazon.awssdk.services.chime.model.ListChannelsResponse;
import software.amazon.awssdk.services.chime.model.ListMediaCapturePipelinesRequest;
import software.amazon.awssdk.services.chime.model.ListMediaCapturePipelinesResponse;
import software.amazon.awssdk.services.chime.model.ListMeetingTagsRequest;
import software.amazon.awssdk.services.chime.model.ListMeetingTagsResponse;
import software.amazon.awssdk.services.chime.model.ListMeetingsRequest;
import software.amazon.awssdk.services.chime.model.ListMeetingsResponse;
import software.amazon.awssdk.services.chime.model.ListPhoneNumberOrdersRequest;
import software.amazon.awssdk.services.chime.model.ListPhoneNumberOrdersResponse;
import software.amazon.awssdk.services.chime.model.ListPhoneNumbersRequest;
import software.amazon.awssdk.services.chime.model.ListPhoneNumbersResponse;
import software.amazon.awssdk.services.chime.model.ListProxySessionsRequest;
import software.amazon.awssdk.services.chime.model.ListProxySessionsResponse;
import software.amazon.awssdk.services.chime.model.ListRoomMembershipsRequest;
import software.amazon.awssdk.services.chime.model.ListRoomMembershipsResponse;
import software.amazon.awssdk.services.chime.model.ListRoomsRequest;
import software.amazon.awssdk.services.chime.model.ListRoomsResponse;
import software.amazon.awssdk.services.chime.model.ListSipMediaApplicationsRequest;
import software.amazon.awssdk.services.chime.model.ListSipMediaApplicationsResponse;
import software.amazon.awssdk.services.chime.model.ListSipRulesRequest;
import software.amazon.awssdk.services.chime.model.ListSipRulesResponse;
import software.amazon.awssdk.services.chime.model.ListSupportedPhoneNumberCountriesRequest;
import software.amazon.awssdk.services.chime.model.ListSupportedPhoneNumberCountriesResponse;
import software.amazon.awssdk.services.chime.model.ListTagsForResourceRequest;
import software.amazon.awssdk.services.chime.model.ListTagsForResourceResponse;
import software.amazon.awssdk.services.chime.model.ListUsersRequest;
import software.amazon.awssdk.services.chime.model.ListUsersResponse;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorGroupsRequest;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorGroupsResponse;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorTerminationCredentialsRequest;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorTerminationCredentialsResponse;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorsRequest;
import software.amazon.awssdk.services.chime.model.ListVoiceConnectorsResponse;
import software.amazon.awssdk.services.chime.model.LogoutUserRequest;
import software.amazon.awssdk.services.chime.model.LogoutUserResponse;
import software.amazon.awssdk.services.chime.model.NotFoundException;
import software.amazon.awssdk.services.chime.model.PutAppInstanceRetentionSettingsRequest;
import software.amazon.awssdk.services.chime.model.PutAppInstanceRetentionSettingsResponse;
import software.amazon.awssdk.services.chime.model.PutAppInstanceStreamingConfigurationsRequest;
import software.amazon.awssdk.services.chime.model.PutAppInstanceStreamingConfigurationsResponse;
import software.amazon.awssdk.services.chime.model.PutEventsConfigurationRequest;
import software.amazon.awssdk.services.chime.model.PutEventsConfigurationResponse;
import software.amazon.awssdk.services.chime.model.PutRetentionSettingsRequest;
import software.amazon.awssdk.services.chime.model.PutRetentionSettingsResponse;
import software.amazon.awssdk.services.chime.model.PutSipMediaApplicationLoggingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.PutSipMediaApplicationLoggingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorEmergencyCallingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorEmergencyCallingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorLoggingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorLoggingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorOriginationRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorOriginationResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorProxyRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorProxyResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorStreamingConfigurationRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorStreamingConfigurationResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorTerminationCredentialsRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorTerminationCredentialsResponse;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorTerminationRequest;
import software.amazon.awssdk.services.chime.model.PutVoiceConnectorTerminationResponse;
import software.amazon.awssdk.services.chime.model.RedactChannelMessageRequest;
import software.amazon.awssdk.services.chime.model.RedactChannelMessageResponse;
import software.amazon.awssdk.services.chime.model.RedactConversationMessageRequest;
import software.amazon.awssdk.services.chime.model.RedactConversationMessageResponse;
import software.amazon.awssdk.services.chime.model.RedactRoomMessageRequest;
import software.amazon.awssdk.services.chime.model.RedactRoomMessageResponse;
import software.amazon.awssdk.services.chime.model.RegenerateSecurityTokenRequest;
import software.amazon.awssdk.services.chime.model.RegenerateSecurityTokenResponse;
import software.amazon.awssdk.services.chime.model.ResetPersonalPinRequest;
import software.amazon.awssdk.services.chime.model.ResetPersonalPinResponse;
import software.amazon.awssdk.services.chime.model.ResourceLimitExceededException;
import software.amazon.awssdk.services.chime.model.RestorePhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.RestorePhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.SearchAvailablePhoneNumbersRequest;
import software.amazon.awssdk.services.chime.model.SearchAvailablePhoneNumbersResponse;
import software.amazon.awssdk.services.chime.model.SendChannelMessageRequest;
import software.amazon.awssdk.services.chime.model.SendChannelMessageResponse;
import software.amazon.awssdk.services.chime.model.ServiceFailureException;
import software.amazon.awssdk.services.chime.model.ServiceUnavailableException;
import software.amazon.awssdk.services.chime.model.StartMeetingTranscriptionRequest;
import software.amazon.awssdk.services.chime.model.StartMeetingTranscriptionResponse;
import software.amazon.awssdk.services.chime.model.StopMeetingTranscriptionRequest;
import software.amazon.awssdk.services.chime.model.StopMeetingTranscriptionResponse;
import software.amazon.awssdk.services.chime.model.TagAttendeeRequest;
import software.amazon.awssdk.services.chime.model.TagAttendeeResponse;
import software.amazon.awssdk.services.chime.model.TagMeetingRequest;
import software.amazon.awssdk.services.chime.model.TagMeetingResponse;
import software.amazon.awssdk.services.chime.model.TagResourceRequest;
import software.amazon.awssdk.services.chime.model.TagResourceResponse;
import software.amazon.awssdk.services.chime.model.ThrottledClientException;
import software.amazon.awssdk.services.chime.model.UnauthorizedClientException;
import software.amazon.awssdk.services.chime.model.UnprocessableEntityException;
import software.amazon.awssdk.services.chime.model.UntagAttendeeRequest;
import software.amazon.awssdk.services.chime.model.UntagAttendeeResponse;
import software.amazon.awssdk.services.chime.model.UntagMeetingRequest;
import software.amazon.awssdk.services.chime.model.UntagMeetingResponse;
import software.amazon.awssdk.services.chime.model.UntagResourceRequest;
import software.amazon.awssdk.services.chime.model.UntagResourceResponse;
import software.amazon.awssdk.services.chime.model.UpdateAccountRequest;
import software.amazon.awssdk.services.chime.model.UpdateAccountResponse;
import software.amazon.awssdk.services.chime.model.UpdateAccountSettingsRequest;
import software.amazon.awssdk.services.chime.model.UpdateAccountSettingsResponse;
import software.amazon.awssdk.services.chime.model.UpdateAppInstanceRequest;
import software.amazon.awssdk.services.chime.model.UpdateAppInstanceResponse;
import software.amazon.awssdk.services.chime.model.UpdateAppInstanceUserRequest;
import software.amazon.awssdk.services.chime.model.UpdateAppInstanceUserResponse;
import software.amazon.awssdk.services.chime.model.UpdateBotRequest;
import software.amazon.awssdk.services.chime.model.UpdateBotResponse;
import software.amazon.awssdk.services.chime.model.UpdateChannelMessageRequest;
import software.amazon.awssdk.services.chime.model.UpdateChannelMessageResponse;
import software.amazon.awssdk.services.chime.model.UpdateChannelReadMarkerRequest;
import software.amazon.awssdk.services.chime.model.UpdateChannelReadMarkerResponse;
import software.amazon.awssdk.services.chime.model.UpdateChannelRequest;
import software.amazon.awssdk.services.chime.model.UpdateChannelResponse;
import software.amazon.awssdk.services.chime.model.UpdateGlobalSettingsRequest;
import software.amazon.awssdk.services.chime.model.UpdateGlobalSettingsResponse;
import software.amazon.awssdk.services.chime.model.UpdatePhoneNumberRequest;
import software.amazon.awssdk.services.chime.model.UpdatePhoneNumberResponse;
import software.amazon.awssdk.services.chime.model.UpdatePhoneNumberSettingsRequest;
import software.amazon.awssdk.services.chime.model.UpdatePhoneNumberSettingsResponse;
import software.amazon.awssdk.services.chime.model.UpdateProxySessionRequest;
import software.amazon.awssdk.services.chime.model.UpdateProxySessionResponse;
import software.amazon.awssdk.services.chime.model.UpdateRoomMembershipRequest;
import software.amazon.awssdk.services.chime.model.UpdateRoomMembershipResponse;
import software.amazon.awssdk.services.chime.model.UpdateRoomRequest;
import software.amazon.awssdk.services.chime.model.UpdateRoomResponse;
import software.amazon.awssdk.services.chime.model.UpdateSipMediaApplicationCallRequest;
import software.amazon.awssdk.services.chime.model.UpdateSipMediaApplicationCallResponse;
import software.amazon.awssdk.services.chime.model.UpdateSipMediaApplicationRequest;
import software.amazon.awssdk.services.chime.model.UpdateSipMediaApplicationResponse;
import software.amazon.awssdk.services.chime.model.UpdateSipRuleRequest;
import software.amazon.awssdk.services.chime.model.UpdateSipRuleResponse;
import software.amazon.awssdk.services.chime.model.UpdateUserRequest;
import software.amazon.awssdk.services.chime.model.UpdateUserResponse;
import software.amazon.awssdk.services.chime.model.UpdateUserSettingsRequest;
import software.amazon.awssdk.services.chime.model.UpdateUserSettingsResponse;
import software.amazon.awssdk.services.chime.model.UpdateVoiceConnectorGroupRequest;
import software.amazon.awssdk.services.chime.model.UpdateVoiceConnectorGroupResponse;
import software.amazon.awssdk.services.chime.model.UpdateVoiceConnectorRequest;
import software.amazon.awssdk.services.chime.model.UpdateVoiceConnectorResponse;
import software.amazon.awssdk.services.chime.model.ValidateE911AddressRequest;
import software.amazon.awssdk.services.chime.model.ValidateE911AddressResponse;
import software.amazon.awssdk.services.chime.paginators.ListAccountsIterable;
import software.amazon.awssdk.services.chime.paginators.ListAppInstanceAdminsIterable;
import software.amazon.awssdk.services.chime.paginators.ListAppInstanceUsersIterable;
import software.amazon.awssdk.services.chime.paginators.ListAppInstancesIterable;
import software.amazon.awssdk.services.chime.paginators.ListAttendeesIterable;
import software.amazon.awssdk.services.chime.paginators.ListBotsIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelBansIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsForAppInstanceUserIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelMessagesIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelModeratorsIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelsIterable;
import software.amazon.awssdk.services.chime.paginators.ListChannelsModeratedByAppInstanceUserIterable;
import software.amazon.awssdk.services.chime.paginators.ListMediaCapturePipelinesIterable;
import software.amazon.awssdk.services.chime.paginators.ListMeetingsIterable;
import software.amazon.awssdk.services.chime.paginators.ListPhoneNumberOrdersIterable;
import software.amazon.awssdk.services.chime.paginators.ListPhoneNumbersIterable;
import software.amazon.awssdk.services.chime.paginators.ListProxySessionsIterable;
import software.amazon.awssdk.services.chime.paginators.ListRoomMembershipsIterable;
import software.amazon.awssdk.services.chime.paginators.ListRoomsIterable;
import software.amazon.awssdk.services.chime.paginators.ListSipMediaApplicationsIterable;
import software.amazon.awssdk.services.chime.paginators.ListSipRulesIterable;
import software.amazon.awssdk.services.chime.paginators.ListUsersIterable;
import software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorGroupsIterable;
import software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorsIterable;
import software.amazon.awssdk.services.chime.paginators.SearchAvailablePhoneNumbersIterable;
import software.amazon.awssdk.services.chime.transform.AssociatePhoneNumberWithUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.AssociatePhoneNumbersWithVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.AssociatePhoneNumbersWithVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.AssociateSigninDelegateGroupsWithAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchCreateAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchCreateChannelMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchCreateRoomMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchDeletePhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchSuspendUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchUnsuspendUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchUpdatePhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.BatchUpdateUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateAppInstanceAdminRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateAppInstanceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateBotRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateChannelBanRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateChannelMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateChannelModeratorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateChannelRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateMediaCapturePipelineRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateMeetingDialOutRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateMeetingRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateMeetingWithAttendeesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreatePhoneNumberOrderRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateProxySessionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateRoomMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateRoomRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateSipMediaApplicationCallRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateSipMediaApplicationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateSipRuleRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.CreateVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAppInstanceAdminRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAppInstanceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAppInstanceStreamingConfigurationsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteChannelBanRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteChannelMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteChannelMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteChannelModeratorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteChannelRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteEventsConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteMediaCapturePipelineRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteMeetingRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeletePhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteProxySessionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteRoomMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteRoomRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteSipMediaApplicationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteSipRuleRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorEmergencyCallingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorOriginationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorProxyRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorStreamingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorTerminationCredentialsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DeleteVoiceConnectorTerminationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeAppInstanceAdminRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeAppInstanceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelBanRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelMembershipForAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelModeratedByAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelModeratorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DescribeChannelRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DisassociatePhoneNumberFromUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DisassociatePhoneNumbersFromVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DisassociatePhoneNumbersFromVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.DisassociateSigninDelegateGroupsFromAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetAccountSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetAppInstanceRetentionSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetAppInstanceStreamingConfigurationsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetBotRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetChannelMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetEventsConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetGlobalSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetMediaCapturePipelineRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetMeetingRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetMessagingSessionEndpointRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetPhoneNumberOrderRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetPhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetPhoneNumberSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetProxySessionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetRetentionSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetRoomRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetSipMediaApplicationLoggingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetSipMediaApplicationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetSipRuleRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetUserSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorEmergencyCallingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorLoggingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorOriginationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorProxyRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorStreamingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorTerminationHealthRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.GetVoiceConnectorTerminationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.InviteUsersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAccountsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAppInstanceAdminsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAppInstanceUsersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAppInstancesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAttendeeTagsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListAttendeesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListBotsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelBansRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelMembershipsForAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelMembershipsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelMessagesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelModeratorsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelsModeratedByAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListChannelsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListMediaCapturePipelinesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListMeetingTagsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListMeetingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListPhoneNumberOrdersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListPhoneNumbersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListProxySessionsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListRoomMembershipsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListRoomsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListSipMediaApplicationsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListSipRulesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListSupportedPhoneNumberCountriesRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListTagsForResourceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListUsersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListVoiceConnectorGroupsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListVoiceConnectorTerminationCredentialsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ListVoiceConnectorsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.LogoutUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutAppInstanceRetentionSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutAppInstanceStreamingConfigurationsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutEventsConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutRetentionSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutSipMediaApplicationLoggingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorEmergencyCallingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorLoggingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorOriginationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorProxyRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorStreamingConfigurationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorTerminationCredentialsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.PutVoiceConnectorTerminationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.RedactChannelMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.RedactConversationMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.RedactRoomMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.RegenerateSecurityTokenRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ResetPersonalPinRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.RestorePhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.SearchAvailablePhoneNumbersRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.SendChannelMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.StartMeetingTranscriptionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.StopMeetingTranscriptionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.TagAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.TagMeetingRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.TagResourceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UntagAttendeeRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UntagMeetingRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UntagResourceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateAccountRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateAccountSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateAppInstanceRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateAppInstanceUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateBotRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateChannelMessageRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateChannelReadMarkerRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateChannelRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateGlobalSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdatePhoneNumberRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdatePhoneNumberSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateProxySessionRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateRoomMembershipRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateRoomRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateSipMediaApplicationCallRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateSipMediaApplicationRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateSipRuleRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateUserRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateUserSettingsRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateVoiceConnectorGroupRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.UpdateVoiceConnectorRequestMarshaller;
import software.amazon.awssdk.services.chime.transform.ValidateE911AddressRequestMarshaller;
import software.amazon.awssdk.utils.Logger;

/**
 * Internal implementation of {@link ChimeClient}.
 *
 * @see ChimeClient#builder()
 */
@Generated("software.amazon.awssdk:codegen")
@SdkInternalApi
final class DefaultChimeClient implements ChimeClient {
    private static final Logger log = Logger.loggerFor(DefaultChimeClient.class);

    private final SyncClientHandler clientHandler;

    private final AwsJsonProtocolFactory protocolFactory;

    private final SdkClientConfiguration clientConfiguration;

    private final ChimeServiceClientConfiguration serviceClientConfiguration;

    protected DefaultChimeClient(ChimeServiceClientConfiguration serviceClientConfiguration,
            SdkClientConfiguration clientConfiguration) {
        this.clientHandler = new AwsSyncClientHandler(clientConfiguration);
        this.clientConfiguration = clientConfiguration;
        this.serviceClientConfiguration = serviceClientConfiguration;
        this.protocolFactory = init(AwsJsonProtocolFactory.builder()).build();
    }

    /**
     * 

* Associates a phone number with the specified Amazon Chime user. *

* * @param associatePhoneNumberWithUserRequest * @return Result of the AssociatePhoneNumberWithUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.AssociatePhoneNumberWithUser * @see AWS API Documentation */ @Override public AssociatePhoneNumberWithUserResponse associatePhoneNumberWithUser( AssociatePhoneNumberWithUserRequest associatePhoneNumberWithUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, AccessDeniedException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, AssociatePhoneNumberWithUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, associatePhoneNumberWithUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociatePhoneNumberWithUser"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("AssociatePhoneNumberWithUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(associatePhoneNumberWithUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new AssociatePhoneNumberWithUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Associates phone numbers with the specified Amazon Chime Voice Connector. *

* * @param associatePhoneNumbersWithVoiceConnectorRequest * @return Result of the AssociatePhoneNumbersWithVoiceConnector operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.AssociatePhoneNumbersWithVoiceConnector * @see AWS API Documentation */ @Override public AssociatePhoneNumbersWithVoiceConnectorResponse associatePhoneNumbersWithVoiceConnector( AssociatePhoneNumbersWithVoiceConnectorRequest associatePhoneNumbersWithVoiceConnectorRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, AccessDeniedException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, AssociatePhoneNumbersWithVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, associatePhoneNumbersWithVoiceConnectorRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociatePhoneNumbersWithVoiceConnector"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("AssociatePhoneNumbersWithVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(associatePhoneNumbersWithVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new AssociatePhoneNumbersWithVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Associates phone numbers with the specified Amazon Chime Voice Connector group. *

* * @param associatePhoneNumbersWithVoiceConnectorGroupRequest * @return Result of the AssociatePhoneNumbersWithVoiceConnectorGroup operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.AssociatePhoneNumbersWithVoiceConnectorGroup * @see AWS API Documentation */ @Override public AssociatePhoneNumbersWithVoiceConnectorGroupResponse associatePhoneNumbersWithVoiceConnectorGroup( AssociatePhoneNumbersWithVoiceConnectorGroupRequest associatePhoneNumbersWithVoiceConnectorGroupRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, AccessDeniedException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, AssociatePhoneNumbersWithVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, associatePhoneNumbersWithVoiceConnectorGroupRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociatePhoneNumbersWithVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("AssociatePhoneNumbersWithVoiceConnectorGroup") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(associatePhoneNumbersWithVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new AssociatePhoneNumbersWithVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Associates the specified sign-in delegate groups with the specified Amazon Chime account. *

* * @param associateSigninDelegateGroupsWithAccountRequest * @return Result of the AssociateSigninDelegateGroupsWithAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.AssociateSigninDelegateGroupsWithAccount * @see AWS API Documentation */ @Override public AssociateSigninDelegateGroupsWithAccountResponse associateSigninDelegateGroupsWithAccount( AssociateSigninDelegateGroupsWithAccountRequest associateSigninDelegateGroupsWithAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, AssociateSigninDelegateGroupsWithAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, associateSigninDelegateGroupsWithAccountRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateSigninDelegateGroupsWithAccount"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("AssociateSigninDelegateGroupsWithAccount").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(associateSigninDelegateGroupsWithAccountRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new AssociateSigninDelegateGroupsWithAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates up to 100 new attendees for an active Amazon Chime SDK meeting. For more information about the Amazon * Chime SDK, see Using the Amazon Chime * SDK in the Amazon Chime Developer Guide. *

* * @param batchCreateAttendeeRequest * @return Result of the BatchCreateAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchCreateAttendee * @see AWS API * Documentation */ @Override public BatchCreateAttendeeResponse batchCreateAttendee(BatchCreateAttendeeRequest batchCreateAttendeeRequest) throws BadRequestException, ForbiddenException, NotFoundException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchCreateAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchCreateAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchCreateAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("BatchCreateAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchCreateAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchCreateAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds a specified number of users to a channel. *

* * @param batchCreateChannelMembershipRequest * @return Result of the BatchCreateChannelMembership operation returned by the service. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchCreateChannelMembership * @see AWS API Documentation */ @Override public BatchCreateChannelMembershipResponse batchCreateChannelMembership( BatchCreateChannelMembershipRequest batchCreateChannelMembershipRequest) throws ServiceFailureException, ServiceUnavailableException, UnauthorizedClientException, BadRequestException, ForbiddenException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchCreateChannelMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchCreateChannelMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchCreateChannelMembership"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("BatchCreateChannelMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(batchCreateChannelMembershipRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchCreateChannelMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds up to 50 members to a chat room in an Amazon Chime Enterprise account. Members can be users or bots. The * member role designates whether the member is a chat room administrator or a general chat room member. *

* * @param batchCreateRoomMembershipRequest * @return Result of the BatchCreateRoomMembership operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchCreateRoomMembership * @see AWS API Documentation */ @Override public BatchCreateRoomMembershipResponse batchCreateRoomMembership( BatchCreateRoomMembershipRequest batchCreateRoomMembershipRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchCreateRoomMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchCreateRoomMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchCreateRoomMembership"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("BatchCreateRoomMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchCreateRoomMembershipRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchCreateRoomMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Moves phone numbers into the Deletion queue. Phone numbers must be disassociated from any users or Amazon * Chime Voice Connectors before they can be deleted. *

*

* Phone numbers remain in the Deletion queue for 7 days before they are deleted permanently. *

* * @param batchDeletePhoneNumberRequest * @return Result of the BatchDeletePhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchDeletePhoneNumber * @see AWS * API Documentation */ @Override public BatchDeletePhoneNumberResponse batchDeletePhoneNumber(BatchDeletePhoneNumberRequest batchDeletePhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchDeletePhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchDeletePhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchDeletePhoneNumber"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("BatchDeletePhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchDeletePhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchDeletePhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Suspends up to 50 users from a Team or EnterpriseLWA Amazon Chime account. For more * information about different account types, see Managing Your Amazon Chime * Accounts in the Amazon Chime Administration Guide. *

*

* Users suspended from a Team account are disassociated from the account,but they can continue to use * Amazon Chime as free users. To remove the suspension from suspended Team account users, invite them * to the Team account again. You can use the InviteUsers action to do so. *

*

* Users suspended from an EnterpriseLWA account are immediately signed out of Amazon Chime and can no * longer sign in. To remove the suspension from suspended EnterpriseLWA account users, use the * BatchUnsuspendUser action. *

*

* To sign out users without suspending them, use the LogoutUser action. *

* * @param batchSuspendUserRequest * @return Result of the BatchSuspendUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchSuspendUser * @see AWS API * Documentation */ @Override public BatchSuspendUserResponse batchSuspendUser(BatchSuspendUserRequest batchSuspendUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, BatchSuspendUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchSuspendUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchSuspendUser"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("BatchSuspendUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchSuspendUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchSuspendUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Removes the suspension from up to 50 previously suspended users for the specified Amazon Chime * EnterpriseLWA account. Only users on EnterpriseLWA accounts can be unsuspended using * this action. For more information about different account types, see Managing Your Amazon Chime Accounts * in the account types, in the Amazon Chime Administration Guide. *

*

* Previously suspended users who are unsuspended using this action are returned to Registered status. * Users who are not previously suspended are ignored. *

* * @param batchUnsuspendUserRequest * @return Result of the BatchUnsuspendUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchUnsuspendUser * @see AWS API * Documentation */ @Override public BatchUnsuspendUserResponse batchUnsuspendUser(BatchUnsuspendUserRequest batchUnsuspendUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchUnsuspendUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchUnsuspendUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchUnsuspendUser"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("BatchUnsuspendUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchUnsuspendUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchUnsuspendUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates phone number product types or calling names. You can update one attribute at a time for each * UpdatePhoneNumberRequestItem. For example, you can update the product type or the calling name. *

*

* For toll-free numbers, you cannot use the Amazon Chime Business Calling product type. For numbers outside the * U.S., you must use the Amazon Chime SIP Media Application Dial-In product type. *

*

* Updates to outbound calling names can take up to 72 hours to complete. Pending updates to outbound calling names * must be complete before you can request another update. *

* * @param batchUpdatePhoneNumberRequest * @return Result of the BatchUpdatePhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchUpdatePhoneNumber * @see AWS * API Documentation */ @Override public BatchUpdatePhoneNumberResponse batchUpdatePhoneNumber(BatchUpdatePhoneNumberRequest batchUpdatePhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, BatchUpdatePhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchUpdatePhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchUpdatePhoneNumber"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("BatchUpdatePhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchUpdatePhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchUpdatePhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates user details within the UpdateUserRequestItem object for up to 20 users for the specified Amazon * Chime account. Currently, only LicenseType updates are supported for this action. *

* * @param batchUpdateUserRequest * @return Result of the BatchUpdateUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.BatchUpdateUser * @see AWS API * Documentation */ @Override public BatchUpdateUserResponse batchUpdateUser(BatchUpdateUserRequest batchUpdateUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, BatchUpdateUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, batchUpdateUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "BatchUpdateUser"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("BatchUpdateUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(batchUpdateUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new BatchUpdateUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an Amazon Chime account under the administrator's AWS account. Only Team account types are * currently supported for this action. For more information about different account types, see Managing Your Amazon Chime * Accounts in the Amazon Chime Administration Guide. *

* * @param createAccountRequest * @return Result of the CreateAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateAccount * @see AWS API * Documentation */ @Override public CreateAccountResponse createAccount(CreateAccountRequest createAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createAccountRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAccount"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateAccount").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createAccountRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an Amazon Chime SDK messaging AppInstance under an AWS account. Only SDK messaging customers * use this API. CreateAppInstance supports idempotency behavior as described in the AWS API Standard. *

* * @param createAppInstanceRequest * @return Result of the CreateAppInstance operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateAppInstance * @see AWS API * Documentation */ @Override public CreateAppInstanceResponse createAppInstance(CreateAppInstanceRequest createAppInstanceRequest) throws BadRequestException, ConflictException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateAppInstanceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createAppInstanceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAppInstance"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateAppInstance").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createAppInstanceRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateAppInstanceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Promotes an AppInstanceUser to an AppInstanceAdmin. The promoted user can perform the * following actions. *

*
    *
  • *

    * ChannelModerator actions across all channels in the AppInstance. *

    *
  • *
  • *

    * DeleteChannelMessage actions. *

    *
  • *
*

* Only an AppInstanceUser can be promoted to an AppInstanceAdmin role. *

* * @param createAppInstanceAdminRequest * @return Result of the CreateAppInstanceAdmin operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateAppInstanceAdmin * @see AWS * API Documentation */ @Override public CreateAppInstanceAdminResponse createAppInstanceAdmin(CreateAppInstanceAdminRequest createAppInstanceAdminRequest) throws BadRequestException, ConflictException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateAppInstanceAdminResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createAppInstanceAdminRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAppInstanceAdmin"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateAppInstanceAdmin").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createAppInstanceAdminRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateAppInstanceAdminRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a user under an Amazon Chime AppInstance. The request consists of a unique * appInstanceUserId and Name for that user. *

* * @param createAppInstanceUserRequest * @return Result of the CreateAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateAppInstanceUser * @see AWS * API Documentation */ @Override public CreateAppInstanceUserResponse createAppInstanceUser(CreateAppInstanceUserRequest createAppInstanceUserRequest) throws BadRequestException, ConflictException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createAppInstanceUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAppInstanceUser"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createAppInstanceUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a new attendee for an active Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, * see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

* * @param createAttendeeRequest * @return Result of the CreateAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateAttendee * @see AWS API * Documentation */ @Override public CreateAttendeeResponse createAttendee(CreateAttendeeRequest createAttendeeRequest) throws BadRequestException, ForbiddenException, NotFoundException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a bot for an Amazon Chime Enterprise account. *

* * @param createBotRequest * @return Result of the CreateBot operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateBot * @see AWS API * Documentation */ @Override public CreateBotResponse createBot(CreateBotRequest createBotRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, ResourceLimitExceededException, NotFoundException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateBotResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createBotRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateBot"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateBot").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createBotRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new CreateBotRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a channel to which you can add users and send messages. *

*

* Restriction: You can't change a channel's privacy. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param createChannelRequest * @return Result of the CreateChannel operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateChannel * @see AWS API * Documentation */ @Override public CreateChannelResponse createChannel(CreateChannelRequest createChannelRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ConflictException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateChannelResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createChannelRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateChannel"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateChannel").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createChannelRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateChannelRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Permanently bans a member from a channel. Moderators can't add banned members to a channel. To undo a ban, you * first have to DeleteChannelBan, and then CreateChannelMembership. Bans are cleaned up * when you delete users or channels. *

*

* If you ban a user who is already part of a channel, that user is automatically kicked from the channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param createChannelBanRequest * @return Result of the CreateChannelBan operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateChannelBan * @see AWS API * Documentation */ @Override public CreateChannelBanResponse createChannelBan(CreateChannelBanRequest createChannelBanRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ConflictException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateChannelBanResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createChannelBanRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateChannelBan"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateChannelBan").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createChannelBanRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateChannelBanRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds a user to a channel. The InvitedBy response field is derived from the request header. A channel * member can: *

*
    *
  • *

    * List messages *

    *
  • *
  • *

    * Send messages *

    *
  • *
  • *

    * Receive messages *

    *
  • *
  • *

    * Edit their own messages *

    *
  • *
  • *

    * Leave the channel *

    *
  • *
*

* Privacy settings impact this action as follows: *

*
    *
  • *

    * Public Channels: You do not need to be a member to list messages, but you must be a member to send messages. *

    *
  • *
  • *

    * Private Channels: You must be a member to list or send messages. *

    *
  • *
* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param createChannelMembershipRequest * @return Result of the CreateChannelMembership operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateChannelMembership * @see AWS * API Documentation */ @Override public CreateChannelMembershipResponse createChannelMembership(CreateChannelMembershipRequest createChannelMembershipRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ConflictException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateChannelMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createChannelMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateChannelMembership"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateChannelMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createChannelMembershipRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateChannelMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a new ChannelModerator. A channel moderator can: *

*
    *
  • *

    * Add and remove other members of the channel. *

    *
  • *
  • *

    * Add and remove other moderators of the channel. *

    *
  • *
  • *

    * Add and remove user bans for the channel. *

    *
  • *
  • *

    * Redact messages in the channel. *

    *
  • *
  • *

    * List messages in the channel. *

    *
  • *
* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param createChannelModeratorRequest * @return Result of the CreateChannelModerator operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateChannelModerator * @see AWS * API Documentation */ @Override public CreateChannelModeratorResponse createChannelModerator(CreateChannelModeratorRequest createChannelModeratorRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ConflictException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateChannelModeratorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createChannelModeratorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateChannelModerator"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateChannelModerator").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(createChannelModeratorRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateChannelModeratorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a media capture pipeline. *

* * @param createMediaCapturePipelineRequest * @return Result of the CreateMediaCapturePipeline operation returned by the service. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateMediaCapturePipeline * @see AWS API Documentation */ @Override public CreateMediaCapturePipelineResponse createMediaCapturePipeline( CreateMediaCapturePipelineRequest createMediaCapturePipelineRequest) throws ResourceLimitExceededException, ForbiddenException, BadRequestException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateMediaCapturePipelineResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createMediaCapturePipelineRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateMediaCapturePipeline"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateMediaCapturePipeline").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createMediaCapturePipelineRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateMediaCapturePipelineRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a new Amazon Chime SDK meeting in the specified media Region with no initial attendees. For more * information about specifying media Regions, see Amazon Chime SDK Media * Regions in the Amazon Chime Developer Guide . For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide . *

* * @param createMeetingRequest * @return Result of the CreateMeeting operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateMeeting * @see AWS API * Documentation */ @Override public CreateMeetingResponse createMeeting(CreateMeetingRequest createMeetingRequest) throws BadRequestException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateMeetingResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createMeetingRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateMeeting"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateMeeting").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createMeetingRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateMeetingRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Uses the join token and call metadata in a meeting request (From number, To number, and so forth) to initiate an * outbound call to a public switched telephone network (PSTN) and join them into a Chime meeting. Also ensures that * the From number belongs to the customer. *

*

* To play welcome audio or implement an interactive voice response (IVR), use the * CreateSipMediaApplicationCall action with the corresponding SIP media application ID. *

* * @param createMeetingDialOutRequest * @return Result of the CreateMeetingDialOut operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateMeetingDialOut * @see AWS * API Documentation */ @Override public CreateMeetingDialOutResponse createMeetingDialOut(CreateMeetingDialOutRequest createMeetingDialOutRequest) throws BadRequestException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, AccessDeniedException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateMeetingDialOutResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createMeetingDialOutRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateMeetingDialOut"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateMeetingDialOut").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createMeetingDialOutRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateMeetingDialOutRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a new Amazon Chime SDK meeting in the specified media Region, with attendees. For more information about * specifying media Regions, see Amazon Chime SDK Media * Regions in the Amazon Chime Developer Guide . For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide . *

* * @param createMeetingWithAttendeesRequest * @return Result of the CreateMeetingWithAttendees operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateMeetingWithAttendees * @see AWS API Documentation */ @Override public CreateMeetingWithAttendeesResponse createMeetingWithAttendees( CreateMeetingWithAttendeesRequest createMeetingWithAttendeesRequest) throws BadRequestException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateMeetingWithAttendeesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createMeetingWithAttendeesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateMeetingWithAttendees"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateMeetingWithAttendees").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createMeetingWithAttendeesRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateMeetingWithAttendeesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an order for phone numbers to be provisioned. For toll-free numbers, you cannot use the Amazon Chime * Business Calling product type. For numbers outside the U.S., you must use the Amazon Chime SIP Media Application * Dial-In product type. *

* * @param createPhoneNumberOrderRequest * @return Result of the CreatePhoneNumberOrder operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreatePhoneNumberOrder * @see AWS * API Documentation */ @Override public CreatePhoneNumberOrderResponse createPhoneNumberOrder(CreatePhoneNumberOrderRequest createPhoneNumberOrderRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ResourceLimitExceededException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreatePhoneNumberOrderResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createPhoneNumberOrderRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreatePhoneNumberOrder"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreatePhoneNumberOrder").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createPhoneNumberOrderRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreatePhoneNumberOrderRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a proxy session on the specified Amazon Chime Voice Connector for the specified participant phone * numbers. *

* * @param createProxySessionRequest * @return Result of the CreateProxySession operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateProxySession * @see AWS API * Documentation */ @Override public CreateProxySessionResponse createProxySession(CreateProxySessionRequest createProxySessionRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateProxySessionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createProxySessionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateProxySession"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateProxySession").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createProxySessionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateProxySessionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a chat room for the specified Amazon Chime Enterprise account. *

* * @param createRoomRequest * @return Result of the CreateRoom operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateRoom * @see AWS API * Documentation */ @Override public CreateRoomResponse createRoom(CreateRoomRequest createRoomRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateRoomResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createRoomRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateRoom"); return clientHandler .execute(new ClientExecutionParams().withOperationName("CreateRoom") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(createRoomRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateRoomRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds a member to a chat room in an Amazon Chime Enterprise account. A member can be either a user or a bot. The * member role designates whether the member is a chat room administrator or a general chat room member. *

* * @param createRoomMembershipRequest * @return Result of the CreateRoomMembership operation returned by the service. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateRoomMembership * @see AWS * API Documentation */ @Override public CreateRoomMembershipResponse createRoomMembership(CreateRoomMembershipRequest createRoomMembershipRequest) throws ConflictException, UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateRoomMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createRoomMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateRoomMembership"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateRoomMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createRoomMembershipRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateRoomMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a SIP media application. *

* * @param createSipMediaApplicationRequest * @return Result of the CreateSipMediaApplication operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateSipMediaApplication * @see AWS API Documentation */ @Override public CreateSipMediaApplicationResponse createSipMediaApplication( CreateSipMediaApplicationRequest createSipMediaApplicationRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ResourceLimitExceededException, ConflictException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateSipMediaApplicationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createSipMediaApplicationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateSipMediaApplication"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateSipMediaApplication").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createSipMediaApplicationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateSipMediaApplicationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an outbound call to a phone number from the phone number specified in the request, and it invokes the * endpoint of the specified sipMediaApplicationId. *

* * @param createSipMediaApplicationCallRequest * @return Result of the CreateSipMediaApplicationCall operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateSipMediaApplicationCall * @see AWS API Documentation */ @Override public CreateSipMediaApplicationCallResponse createSipMediaApplicationCall( CreateSipMediaApplicationCallRequest createSipMediaApplicationCallRequest) throws BadRequestException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, AccessDeniedException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateSipMediaApplicationCallResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createSipMediaApplicationCallRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateSipMediaApplicationCall"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateSipMediaApplicationCall").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createSipMediaApplicationCallRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateSipMediaApplicationCallRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a SIP rule which can be used to run a SIP media application as a target for a specific trigger type. *

* * @param createSipRuleRequest * @return Result of the CreateSipRule operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateSipRule * @see AWS API * Documentation */ @Override public CreateSipRuleResponse createSipRule(CreateSipRuleRequest createSipRuleRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ResourceLimitExceededException, ConflictException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateSipRuleResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createSipRuleRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateSipRule"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateSipRule").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createSipRuleRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateSipRuleRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates a user under the specified Amazon Chime account. *

* * @param createUserRequest * @return Result of the CreateUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateUser * @see AWS API * Documentation */ @Override public CreateUserResponse createUser(CreateUserRequest createUserRequest) throws UnauthorizedClientException, NotFoundException, ConflictException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, CreateUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateUser"); return clientHandler .execute(new ClientExecutionParams().withOperationName("CreateUser") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(createUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an Amazon Chime Voice Connector under the administrator's AWS account. You can choose to create an Amazon * Chime Voice Connector in a specific AWS Region. *

*

* Enabling CreateVoiceConnectorRequest$RequireEncryption configures your Amazon Chime Voice Connector to * use TLS transport for SIP signaling and Secure RTP (SRTP) for media. Inbound calls use TLS transport, and * unencrypted outbound calls are blocked. *

* * @param createVoiceConnectorRequest * @return Result of the CreateVoiceConnector operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateVoiceConnector * @see AWS * API Documentation */ @Override public CreateVoiceConnectorResponse createVoiceConnector(CreateVoiceConnectorRequest createVoiceConnectorRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ResourceLimitExceededException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createVoiceConnectorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateVoiceConnector"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("CreateVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an Amazon Chime Voice Connector group under the administrator's AWS account. You can associate Amazon * Chime Voice Connectors with the Amazon Chime Voice Connector group by including VoiceConnectorItems * in the request. *

*

* You can include Amazon Chime Voice Connectors from different AWS Regions in your group. This creates a fault * tolerant mechanism for fallback in case of availability events. *

* * @param createVoiceConnectorGroupRequest * @return Result of the CreateVoiceConnectorGroup operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.CreateVoiceConnectorGroup * @see AWS API Documentation */ @Override public CreateVoiceConnectorGroupResponse createVoiceConnectorGroup( CreateVoiceConnectorGroupRequest createVoiceConnectorGroupRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ResourceLimitExceededException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, CreateVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, createVoiceConnectorGroupRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("CreateVoiceConnectorGroup").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(createVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new CreateVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified Amazon Chime account. You must suspend all users before deleting Team account. * You can use the BatchSuspendUser action to dodo. *

*

* For EnterpriseLWA and EnterpriseAD accounts, you must release the claimed domains for * your Amazon Chime account before deletion. As soon as you release the domain, all users under that account are * suspended. *

*

* Deleted accounts appear in your Disabled accounts list for 90 days. To restore deleted account from * your Disabled accounts list, you must contact AWS Support. *

*

* After 90 days, deleted accounts are permanently removed from your Disabled accounts list. *

* * @param deleteAccountRequest * @return Result of the DeleteAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnprocessableEntityException * The request was well-formed but was unable to be followed due to semantic errors. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAccount * @see AWS API * Documentation */ @Override public DeleteAccountResponse deleteAccount(DeleteAccountRequest deleteAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, UnprocessableEntityException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAccountRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAccount"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteAccount").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteAccountRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes an AppInstance and all associated data asynchronously. *

* * @param deleteAppInstanceRequest * @return Result of the DeleteAppInstance operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAppInstance * @see AWS API * Documentation */ @Override public DeleteAppInstanceResponse deleteAppInstance(DeleteAppInstanceRequest deleteAppInstanceRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteAppInstanceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAppInstanceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAppInstance"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteAppInstance").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteAppInstanceRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAppInstanceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Demotes an AppInstanceAdmin to an AppInstanceUser. This action does not delete the * user. *

* * @param deleteAppInstanceAdminRequest * @return Result of the DeleteAppInstanceAdmin operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAppInstanceAdmin * @see AWS * API Documentation */ @Override public DeleteAppInstanceAdminResponse deleteAppInstanceAdmin(DeleteAppInstanceAdminRequest deleteAppInstanceAdminRequest) throws BadRequestException, ConflictException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteAppInstanceAdminResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAppInstanceAdminRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAppInstanceAdmin"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteAppInstanceAdmin").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteAppInstanceAdminRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAppInstanceAdminRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the streaming configurations of an AppInstance. *

* * @param deleteAppInstanceStreamingConfigurationsRequest * @return Result of the DeleteAppInstanceStreamingConfigurations operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAppInstanceStreamingConfigurations * @see AWS API Documentation */ @Override public DeleteAppInstanceStreamingConfigurationsResponse deleteAppInstanceStreamingConfigurations( DeleteAppInstanceStreamingConfigurationsRequest deleteAppInstanceStreamingConfigurationsRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DeleteAppInstanceStreamingConfigurationsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAppInstanceStreamingConfigurationsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAppInstanceStreamingConfigurations"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteAppInstanceStreamingConfigurations").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(deleteAppInstanceStreamingConfigurationsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAppInstanceStreamingConfigurationsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes an AppInstanceUser. *

* * @param deleteAppInstanceUserRequest * @return Result of the DeleteAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAppInstanceUser * @see AWS * API Documentation */ @Override public DeleteAppInstanceUserResponse deleteAppInstanceUser(DeleteAppInstanceUserRequest deleteAppInstanceUserRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAppInstanceUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAppInstanceUser"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteAppInstanceUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes an attendee from the specified Amazon Chime SDK meeting and deletes their JoinToken. * Attendees are automatically deleted when a Amazon Chime SDK meeting is deleted. For more information about the * Amazon Chime SDK, see Using the Amazon * Chime SDK in the Amazon Chime Developer Guide. *

* * @param deleteAttendeeRequest * @return Result of the DeleteAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteAttendee * @see AWS API * Documentation */ @Override public DeleteAttendeeResponse deleteAttendee(DeleteAttendeeRequest deleteAttendeeRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Immediately makes a channel and its memberships inaccessible and marks them for deletion. This is an irreversible * process. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param deleteChannelRequest * @return Result of the DeleteChannel operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteChannel * @see AWS API * Documentation */ @Override public DeleteChannelResponse deleteChannel(DeleteChannelRequest deleteChannelRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteChannelResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteChannelRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteChannel"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteChannel").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteChannelRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteChannelRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Removes a user from a channel's ban list. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param deleteChannelBanRequest * @return Result of the DeleteChannelBan operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteChannelBan * @see AWS API * Documentation */ @Override public DeleteChannelBanResponse deleteChannelBan(DeleteChannelBanRequest deleteChannelBanRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteChannelBanResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteChannelBanRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteChannelBan"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteChannelBan").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteChannelBanRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteChannelBanRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Removes a member from a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param deleteChannelMembershipRequest * @return Result of the DeleteChannelMembership operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteChannelMembership * @see AWS * API Documentation */ @Override public DeleteChannelMembershipResponse deleteChannelMembership(DeleteChannelMembershipRequest deleteChannelMembershipRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteChannelMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteChannelMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteChannelMembership"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteChannelMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteChannelMembershipRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteChannelMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes a channel message. Only admins can perform this action. Deletion makes messages inaccessible immediately. * A background process deletes any revisions created by UpdateChannelMessage. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param deleteChannelMessageRequest * @return Result of the DeleteChannelMessage operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteChannelMessage * @see AWS * API Documentation */ @Override public DeleteChannelMessageResponse deleteChannelMessage(DeleteChannelMessageRequest deleteChannelMessageRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteChannelMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteChannelMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteChannelMessage"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteChannelMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteChannelMessageRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteChannelMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes a channel moderator. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param deleteChannelModeratorRequest * @return Result of the DeleteChannelModerator operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteChannelModerator * @see AWS * API Documentation */ @Override public DeleteChannelModeratorResponse deleteChannelModerator(DeleteChannelModeratorRequest deleteChannelModeratorRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteChannelModeratorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteChannelModeratorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteChannelModerator"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteChannelModerator").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(deleteChannelModeratorRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteChannelModeratorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the events configuration that allows a bot to receive outgoing events. *

* * @param deleteEventsConfigurationRequest * @return Result of the DeleteEventsConfiguration operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteEventsConfiguration * @see AWS API Documentation */ @Override public DeleteEventsConfigurationResponse deleteEventsConfiguration( DeleteEventsConfigurationRequest deleteEventsConfigurationRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, ResourceLimitExceededException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteEventsConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteEventsConfigurationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteEventsConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteEventsConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteEventsConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteEventsConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the media capture pipeline. *

* * @param deleteMediaCapturePipelineRequest * @return Result of the DeleteMediaCapturePipeline operation returned by the service. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteMediaCapturePipeline * @see AWS API Documentation */ @Override public DeleteMediaCapturePipelineResponse deleteMediaCapturePipeline( DeleteMediaCapturePipelineRequest deleteMediaCapturePipelineRequest) throws ForbiddenException, NotFoundException, BadRequestException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteMediaCapturePipelineResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteMediaCapturePipelineRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteMediaCapturePipeline"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteMediaCapturePipeline").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteMediaCapturePipelineRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteMediaCapturePipelineRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified Amazon Chime SDK meeting. The operation deletes all attendees, disconnects all clients, and * prevents new clients from joining the meeting. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

* * @param deleteMeetingRequest * @return Result of the DeleteMeeting operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteMeeting * @see AWS API * Documentation */ @Override public DeleteMeetingResponse deleteMeeting(DeleteMeetingRequest deleteMeetingRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteMeetingResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteMeetingRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteMeeting"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteMeeting").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteMeetingRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteMeetingRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Moves the specified phone number into the Deletion queue. A phone number must be disassociated from any * users or Amazon Chime Voice Connectors before it can be deleted. *

*

* Deleted phone numbers remain in the Deletion queue for 7 days before they are deleted permanently. *

* * @param deletePhoneNumberRequest * @return Result of the DeletePhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeletePhoneNumber * @see AWS API * Documentation */ @Override public DeletePhoneNumberResponse deletePhoneNumber(DeletePhoneNumberRequest deletePhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeletePhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deletePhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeletePhoneNumber"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeletePhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deletePhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeletePhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified proxy session from the specified Amazon Chime Voice Connector. *

* * @param deleteProxySessionRequest * @return Result of the DeleteProxySession operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteProxySession * @see AWS API * Documentation */ @Override public DeleteProxySessionResponse deleteProxySession(DeleteProxySessionRequest deleteProxySessionRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteProxySessionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteProxySessionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteProxySession"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteProxySession").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteProxySessionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteProxySessionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes a chat room in an Amazon Chime Enterprise account. *

* * @param deleteRoomRequest * @return Result of the DeleteRoom operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteRoom * @see AWS API * Documentation */ @Override public DeleteRoomResponse deleteRoom(DeleteRoomRequest deleteRoomRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteRoomResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteRoomRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteRoom"); return clientHandler .execute(new ClientExecutionParams().withOperationName("DeleteRoom") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(deleteRoomRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteRoomRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Removes a member from a chat room in an Amazon Chime Enterprise account. *

* * @param deleteRoomMembershipRequest * @return Result of the DeleteRoomMembership operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteRoomMembership * @see AWS * API Documentation */ @Override public DeleteRoomMembershipResponse deleteRoomMembership(DeleteRoomMembershipRequest deleteRoomMembershipRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteRoomMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteRoomMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteRoomMembership"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteRoomMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteRoomMembershipRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteRoomMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes a SIP media application. *

* * @param deleteSipMediaApplicationRequest * @return Result of the DeleteSipMediaApplication operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteSipMediaApplication * @see AWS API Documentation */ @Override public DeleteSipMediaApplicationResponse deleteSipMediaApplication( DeleteSipMediaApplicationRequest deleteSipMediaApplicationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteSipMediaApplicationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteSipMediaApplicationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteSipMediaApplication"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteSipMediaApplication").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteSipMediaApplicationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteSipMediaApplicationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes a SIP rule. You must disable a SIP rule before you can delete it. *

* * @param deleteSipRuleRequest * @return Result of the DeleteSipRule operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteSipRule * @see AWS API * Documentation */ @Override public DeleteSipRuleResponse deleteSipRule(DeleteSipRuleRequest deleteSipRuleRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DeleteSipRuleResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteSipRuleRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteSipRule"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteSipRule").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteSipRuleRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteSipRuleRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified Amazon Chime Voice Connector. Any phone numbers associated with the Amazon Chime Voice * Connector must be disassociated from it before it can be deleted. *

* * @param deleteVoiceConnectorRequest * @return Result of the DeleteVoiceConnector operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnector * @see AWS * API Documentation */ @Override public DeleteVoiceConnectorResponse deleteVoiceConnector(DeleteVoiceConnectorRequest deleteVoiceConnectorRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnector"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the emergency calling configuration details from the specified Amazon Chime Voice Connector. *

* * @param deleteVoiceConnectorEmergencyCallingConfigurationRequest * @return Result of the DeleteVoiceConnectorEmergencyCallingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorEmergencyCallingConfiguration * @see AWS API Documentation */ @Override public DeleteVoiceConnectorEmergencyCallingConfigurationResponse deleteVoiceConnectorEmergencyCallingConfiguration( DeleteVoiceConnectorEmergencyCallingConfigurationRequest deleteVoiceConnectorEmergencyCallingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DeleteVoiceConnectorEmergencyCallingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorEmergencyCallingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorEmergencyCallingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorEmergencyCallingConfiguration") .withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(deleteVoiceConnectorEmergencyCallingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller( new DeleteVoiceConnectorEmergencyCallingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified Amazon Chime Voice Connector group. Any VoiceConnectorItems and phone numbers * associated with the group must be removed before it can be deleted. *

* * @param deleteVoiceConnectorGroupRequest * @return Result of the DeleteVoiceConnectorGroup operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorGroup * @see AWS API Documentation */ @Override public DeleteVoiceConnectorGroupResponse deleteVoiceConnectorGroup( DeleteVoiceConnectorGroupRequest deleteVoiceConnectorGroupRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorGroupRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorGroup").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the origination settings for the specified Amazon Chime Voice Connector. *

* *

* If emergency calling is configured for the Amazon Chime Voice Connector, it must be deleted prior to deleting the * origination settings. *

*
* * @param deleteVoiceConnectorOriginationRequest * @return Result of the DeleteVoiceConnectorOrigination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorOrigination * @see AWS API Documentation */ @Override public DeleteVoiceConnectorOriginationResponse deleteVoiceConnectorOrigination( DeleteVoiceConnectorOriginationRequest deleteVoiceConnectorOriginationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteVoiceConnectorOriginationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorOriginationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorOrigination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorOrigination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteVoiceConnectorOriginationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorOriginationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the proxy configuration from the specified Amazon Chime Voice Connector. *

* * @param deleteVoiceConnectorProxyRequest * @return Result of the DeleteVoiceConnectorProxy operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorProxy * @see AWS API Documentation */ @Override public DeleteVoiceConnectorProxyResponse deleteVoiceConnectorProxy( DeleteVoiceConnectorProxyRequest deleteVoiceConnectorProxyRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteVoiceConnectorProxyResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorProxyRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorProxy"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorProxy").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteVoiceConnectorProxyRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorProxyRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the streaming configuration for the specified Amazon Chime Voice Connector. *

* * @param deleteVoiceConnectorStreamingConfigurationRequest * @return Result of the DeleteVoiceConnectorStreamingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorStreamingConfiguration * @see AWS API Documentation */ @Override public DeleteVoiceConnectorStreamingConfigurationResponse deleteVoiceConnectorStreamingConfiguration( DeleteVoiceConnectorStreamingConfigurationRequest deleteVoiceConnectorStreamingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DeleteVoiceConnectorStreamingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorStreamingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorStreamingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorStreamingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(deleteVoiceConnectorStreamingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorStreamingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the termination settings for the specified Amazon Chime Voice Connector. *

* *

* If emergency calling is configured for the Amazon Chime Voice Connector, it must be deleted prior to deleting the * termination settings. *

*
* * @param deleteVoiceConnectorTerminationRequest * @return Result of the DeleteVoiceConnectorTermination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorTermination * @see AWS API Documentation */ @Override public DeleteVoiceConnectorTerminationResponse deleteVoiceConnectorTermination( DeleteVoiceConnectorTerminationRequest deleteVoiceConnectorTerminationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DeleteVoiceConnectorTerminationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorTerminationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorTermination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorTermination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(deleteVoiceConnectorTerminationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorTerminationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Deletes the specified SIP credentials used by your equipment to authenticate during call termination. *

* * @param deleteVoiceConnectorTerminationCredentialsRequest * @return Result of the DeleteVoiceConnectorTerminationCredentials operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DeleteVoiceConnectorTerminationCredentials * @see AWS API Documentation */ @Override public DeleteVoiceConnectorTerminationCredentialsResponse deleteVoiceConnectorTerminationCredentials( DeleteVoiceConnectorTerminationCredentialsRequest deleteVoiceConnectorTerminationCredentialsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DeleteVoiceConnectorTerminationCredentialsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteVoiceConnectorTerminationCredentialsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteVoiceConnectorTerminationCredentials"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DeleteVoiceConnectorTerminationCredentials").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(deleteVoiceConnectorTerminationCredentialsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DeleteVoiceConnectorTerminationCredentialsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of an AppInstance. *

* * @param describeAppInstanceRequest * @return Result of the DescribeAppInstance operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeAppInstance * @see AWS API * Documentation */ @Override public DescribeAppInstanceResponse describeAppInstance(DescribeAppInstanceRequest describeAppInstanceRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeAppInstanceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeAppInstanceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeAppInstance"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DescribeAppInstance").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeAppInstanceRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeAppInstanceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of an AppInstanceAdmin. *

* * @param describeAppInstanceAdminRequest * @return Result of the DescribeAppInstanceAdmin operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeAppInstanceAdmin * @see AWS API Documentation */ @Override public DescribeAppInstanceAdminResponse describeAppInstanceAdmin( DescribeAppInstanceAdminRequest describeAppInstanceAdminRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeAppInstanceAdminResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeAppInstanceAdminRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeAppInstanceAdmin"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeAppInstanceAdmin").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeAppInstanceAdminRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeAppInstanceAdminRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of an AppInstanceUser. *

* * @param describeAppInstanceUserRequest * @return Result of the DescribeAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeAppInstanceUser * @see AWS * API Documentation */ @Override public DescribeAppInstanceUserResponse describeAppInstanceUser(DescribeAppInstanceUserRequest describeAppInstanceUserRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeAppInstanceUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeAppInstanceUser"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeAppInstanceUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of a channel in an Amazon Chime AppInstance. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelRequest * @return Result of the DescribeChannel operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannel * @see AWS API * Documentation */ @Override public DescribeChannelResponse describeChannel(DescribeChannelRequest describeChannelRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, DescribeChannelResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannel"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DescribeChannel").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of a channel ban. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelBanRequest * @return Result of the DescribeChannelBan operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannelBan * @see AWS API * Documentation */ @Override public DescribeChannelBanResponse describeChannelBan(DescribeChannelBanRequest describeChannelBanRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeChannelBanResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelBanRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannelBan"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("DescribeChannelBan").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelBanRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelBanRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of a user's channel membership. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelMembershipRequest * @return Result of the DescribeChannelMembership operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannelMembership * @see AWS API Documentation */ @Override public DescribeChannelMembershipResponse describeChannelMembership( DescribeChannelMembershipRequest describeChannelMembershipRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeChannelMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannelMembership"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeChannelMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelMembershipRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the details of a channel based on the membership of the specified AppInstanceUser. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelMembershipForAppInstanceUserRequest * @return Result of the DescribeChannelMembershipForAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannelMembershipForAppInstanceUser * @see AWS API Documentation */ @Override public DescribeChannelMembershipForAppInstanceUserResponse describeChannelMembershipForAppInstanceUser( DescribeChannelMembershipForAppInstanceUserRequest describeChannelMembershipForAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DescribeChannelMembershipForAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelMembershipForAppInstanceUserRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannelMembershipForAppInstanceUser"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeChannelMembershipForAppInstanceUser") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelMembershipForAppInstanceUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelMembershipForAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of a channel moderated by the specified AppInstanceUser. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelModeratedByAppInstanceUserRequest * @return Result of the DescribeChannelModeratedByAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannelModeratedByAppInstanceUser * @see AWS API Documentation */ @Override public DescribeChannelModeratedByAppInstanceUserResponse describeChannelModeratedByAppInstanceUser( DescribeChannelModeratedByAppInstanceUserRequest describeChannelModeratedByAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DescribeChannelModeratedByAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelModeratedByAppInstanceUserRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannelModeratedByAppInstanceUser"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeChannelModeratedByAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelModeratedByAppInstanceUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelModeratedByAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the full details of a single ChannelModerator. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param describeChannelModeratorRequest * @return Result of the DescribeChannelModerator operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DescribeChannelModerator * @see AWS API Documentation */ @Override public DescribeChannelModeratorResponse describeChannelModerator( DescribeChannelModeratorRequest describeChannelModeratorRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DescribeChannelModeratorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, describeChannelModeratorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DescribeChannelModerator"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("DescribeChannelModerator").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(describeChannelModeratorRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new DescribeChannelModeratorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Disassociates the primary provisioned phone number from the specified Amazon Chime user. *

* * @param disassociatePhoneNumberFromUserRequest * @return Result of the DisassociatePhoneNumberFromUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DisassociatePhoneNumberFromUser * @see AWS API Documentation */ @Override public DisassociatePhoneNumberFromUserResponse disassociatePhoneNumberFromUser( DisassociatePhoneNumberFromUserRequest disassociatePhoneNumberFromUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, DisassociatePhoneNumberFromUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociatePhoneNumberFromUserRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociatePhoneNumberFromUser"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DisassociatePhoneNumberFromUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(disassociatePhoneNumberFromUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DisassociatePhoneNumberFromUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Disassociates the specified phone numbers from the specified Amazon Chime Voice Connector. *

* * @param disassociatePhoneNumbersFromVoiceConnectorRequest * @return Result of the DisassociatePhoneNumbersFromVoiceConnector operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DisassociatePhoneNumbersFromVoiceConnector * @see AWS API Documentation */ @Override public DisassociatePhoneNumbersFromVoiceConnectorResponse disassociatePhoneNumbersFromVoiceConnector( DisassociatePhoneNumbersFromVoiceConnectorRequest disassociatePhoneNumbersFromVoiceConnectorRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DisassociatePhoneNumbersFromVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociatePhoneNumbersFromVoiceConnectorRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociatePhoneNumbersFromVoiceConnector"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DisassociatePhoneNumbersFromVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(disassociatePhoneNumbersFromVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DisassociatePhoneNumbersFromVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Disassociates the specified phone numbers from the specified Amazon Chime Voice Connector group. *

* * @param disassociatePhoneNumbersFromVoiceConnectorGroupRequest * @return Result of the DisassociatePhoneNumbersFromVoiceConnectorGroup operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DisassociatePhoneNumbersFromVoiceConnectorGroup * @see AWS API Documentation */ @Override public DisassociatePhoneNumbersFromVoiceConnectorGroupResponse disassociatePhoneNumbersFromVoiceConnectorGroup( DisassociatePhoneNumbersFromVoiceConnectorGroupRequest disassociatePhoneNumbersFromVoiceConnectorGroupRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DisassociatePhoneNumbersFromVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociatePhoneNumbersFromVoiceConnectorGroupRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociatePhoneNumbersFromVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DisassociatePhoneNumbersFromVoiceConnectorGroup") .withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(disassociatePhoneNumbersFromVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DisassociatePhoneNumbersFromVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Disassociates the specified sign-in delegate groups from the specified Amazon Chime account. *

* * @param disassociateSigninDelegateGroupsFromAccountRequest * @return Result of the DisassociateSigninDelegateGroupsFromAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.DisassociateSigninDelegateGroupsFromAccount * @see AWS API Documentation */ @Override public DisassociateSigninDelegateGroupsFromAccountResponse disassociateSigninDelegateGroupsFromAccount( DisassociateSigninDelegateGroupsFromAccountRequest disassociateSigninDelegateGroupsFromAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, DisassociateSigninDelegateGroupsFromAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociateSigninDelegateGroupsFromAccountRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateSigninDelegateGroupsFromAccount"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("DisassociateSigninDelegateGroupsFromAccount") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(disassociateSigninDelegateGroupsFromAccountRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new DisassociateSigninDelegateGroupsFromAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified Amazon Chime account, such as account type and supported licenses. *

* * @param getAccountRequest * @return Result of the GetAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetAccount * @see AWS API * Documentation */ @Override public GetAccountResponse getAccount(GetAccountRequest getAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getAccountRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAccount"); return clientHandler .execute(new ClientExecutionParams().withOperationName("GetAccount") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(getAccountRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves account settings for the specified Amazon Chime account ID, such as remote control and dialout * settings. For more information about these settings, see Use the Policies Page in the Amazon Chime * Administration Guide. *

* * @param getAccountSettingsRequest * @return Result of the GetAccountSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetAccountSettings * @see AWS API * Documentation */ @Override public GetAccountSettingsResponse getAccountSettings(GetAccountSettingsRequest getAccountSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetAccountSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getAccountSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAccountSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetAccountSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getAccountSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetAccountSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the retention settings for an AppInstance. *

* * @param getAppInstanceRetentionSettingsRequest * @return Result of the GetAppInstanceRetentionSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetAppInstanceRetentionSettings * @see AWS API Documentation */ @Override public GetAppInstanceRetentionSettingsResponse getAppInstanceRetentionSettings( GetAppInstanceRetentionSettingsRequest getAppInstanceRetentionSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetAppInstanceRetentionSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getAppInstanceRetentionSettingsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAppInstanceRetentionSettings"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetAppInstanceRetentionSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(getAppInstanceRetentionSettingsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetAppInstanceRetentionSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the streaming settings for an AppInstance. *

* * @param getAppInstanceStreamingConfigurationsRequest * @return Result of the GetAppInstanceStreamingConfigurations operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetAppInstanceStreamingConfigurations * @see AWS API Documentation */ @Override public GetAppInstanceStreamingConfigurationsResponse getAppInstanceStreamingConfigurations( GetAppInstanceStreamingConfigurationsRequest getAppInstanceStreamingConfigurationsRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, GetAppInstanceStreamingConfigurationsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getAppInstanceStreamingConfigurationsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAppInstanceStreamingConfigurations"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetAppInstanceStreamingConfigurations").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(getAppInstanceStreamingConfigurationsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetAppInstanceStreamingConfigurationsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the Amazon Chime SDK attendee details for a specified meeting ID and attendee ID. For more information about * the Amazon Chime SDK, see Using the * Amazon Chime SDK in the Amazon Chime Developer Guide . *

* * @param getAttendeeRequest * @return Result of the GetAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetAttendee * @see AWS API * Documentation */ @Override public GetAttendeeResponse getAttendee(GetAttendeeRequest getAttendeeRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified bot, such as bot email address, bot type, status, and display name. *

* * @param getBotRequest * @return Result of the GetBot operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetBot * @see AWS API * Documentation */ @Override public GetBotResponse getBot(GetBotRequest getBotRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, UnauthorizedClientException, NotFoundException, BadRequestException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetBotResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getBotRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetBot"); return clientHandler.execute(new ClientExecutionParams().withOperationName("GetBot") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler).withInput(getBotRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new GetBotRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the full details of a channel message. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the user that * makes the API call as the value in the header. *

*
* * @param getChannelMessageRequest * @return Result of the GetChannelMessage operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetChannelMessage * @see AWS API * Documentation */ @Override public GetChannelMessageResponse getChannelMessage(GetChannelMessageRequest getChannelMessageRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetChannelMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getChannelMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetChannelMessage"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetChannelMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(getChannelMessageRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetChannelMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets details for an events configuration that allows a bot to receive outgoing events, such as an HTTPS endpoint * or Lambda function ARN. *

* * @param getEventsConfigurationRequest * @return Result of the GetEventsConfiguration operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetEventsConfiguration * @see AWS * API Documentation */ @Override public GetEventsConfigurationResponse getEventsConfiguration(GetEventsConfigurationRequest getEventsConfigurationRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, ResourceLimitExceededException, NotFoundException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetEventsConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getEventsConfigurationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetEventsConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetEventsConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getEventsConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetEventsConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves global settings for the administrator's AWS account, such as Amazon Chime Business Calling and Amazon * Chime Voice Connector settings. *

* * @param getGlobalSettingsRequest * @return Result of the GetGlobalSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetGlobalSettings * @see AWS API * Documentation */ @Override public GetGlobalSettingsResponse getGlobalSettings(GetGlobalSettingsRequest getGlobalSettingsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetGlobalSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getGlobalSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetGlobalSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetGlobalSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getGlobalSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetGlobalSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets an existing media capture pipeline. *

* * @param getMediaCapturePipelineRequest * @return Result of the GetMediaCapturePipeline operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetMediaCapturePipeline * @see AWS * API Documentation */ @Override public GetMediaCapturePipelineResponse getMediaCapturePipeline(GetMediaCapturePipelineRequest getMediaCapturePipelineRequest) throws NotFoundException, ForbiddenException, BadRequestException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetMediaCapturePipelineResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getMediaCapturePipelineRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetMediaCapturePipeline"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetMediaCapturePipeline").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getMediaCapturePipelineRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetMediaCapturePipelineRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the Amazon Chime SDK meeting details for the specified meeting ID. For more information about the Amazon * Chime SDK, see Using the Amazon Chime * SDK in the Amazon Chime Developer Guide . *

* * @param getMeetingRequest * @return Result of the GetMeeting operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetMeeting * @see AWS API * Documentation */ @Override public GetMeetingResponse getMeeting(GetMeetingRequest getMeetingRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetMeetingResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getMeetingRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetMeeting"); return clientHandler .execute(new ClientExecutionParams().withOperationName("GetMeeting") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(getMeetingRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetMeetingRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* The details of the endpoint for the messaging session. *

* * @param getMessagingSessionEndpointRequest * @return Result of the GetMessagingSessionEndpoint operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetMessagingSessionEndpoint * @see AWS API Documentation */ @Override public GetMessagingSessionEndpointResponse getMessagingSessionEndpoint( GetMessagingSessionEndpointRequest getMessagingSessionEndpointRequest) throws UnauthorizedClientException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetMessagingSessionEndpointResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getMessagingSessionEndpointRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetMessagingSessionEndpoint"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetMessagingSessionEndpoint").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(getMessagingSessionEndpointRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetMessagingSessionEndpointRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified phone number ID, such as associations, capabilities, and product type. *

* * @param getPhoneNumberRequest * @return Result of the GetPhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetPhoneNumber * @see AWS API * Documentation */ @Override public GetPhoneNumberResponse getPhoneNumber(GetPhoneNumberRequest getPhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetPhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getPhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetPhoneNumber"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetPhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getPhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetPhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified phone number order, such as the order creation timestamp, phone numbers in * E.164 format, product type, and order status. *

* * @param getPhoneNumberOrderRequest * @return Result of the GetPhoneNumberOrder operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetPhoneNumberOrder * @see AWS API * Documentation */ @Override public GetPhoneNumberOrderResponse getPhoneNumberOrder(GetPhoneNumberOrderRequest getPhoneNumberOrderRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetPhoneNumberOrderResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getPhoneNumberOrderRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetPhoneNumberOrder"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetPhoneNumberOrder").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getPhoneNumberOrderRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetPhoneNumberOrderRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves the phone number settings for the administrator's AWS account, such as the default outbound calling * name. *

* * @param getPhoneNumberSettingsRequest * @return Result of the GetPhoneNumberSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetPhoneNumberSettings * @see AWS * API Documentation */ @Override public GetPhoneNumberSettingsResponse getPhoneNumberSettings(GetPhoneNumberSettingsRequest getPhoneNumberSettingsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetPhoneNumberSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getPhoneNumberSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetPhoneNumberSettings"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetPhoneNumberSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getPhoneNumberSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetPhoneNumberSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the specified proxy session details for the specified Amazon Chime Voice Connector. *

* * @param getProxySessionRequest * @return Result of the GetProxySession operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetProxySession * @see AWS API * Documentation */ @Override public GetProxySessionResponse getProxySession(GetProxySessionRequest getProxySessionRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetProxySessionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getProxySessionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetProxySession"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetProxySession").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getProxySessionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetProxySessionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the retention settings for the specified Amazon Chime Enterprise account. For more information about * retention settings, see Managing Chat * Retention Policies in the Amazon Chime Administration Guide. *

* * @param getRetentionSettingsRequest * @return Result of the GetRetentionSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetRetentionSettings * @see AWS * API Documentation */ @Override public GetRetentionSettingsResponse getRetentionSettings(GetRetentionSettingsRequest getRetentionSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetRetentionSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getRetentionSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetRetentionSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetRetentionSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getRetentionSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetRetentionSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves room details, such as the room name, for a room in an Amazon Chime Enterprise account. *

* * @param getRoomRequest * @return Result of the GetRoom operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetRoom * @see AWS API * Documentation */ @Override public GetRoomResponse getRoom(GetRoomRequest getRoomRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetRoomResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getRoomRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetRoom"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetRoom").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getRoomRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new GetRoomRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves the information for a SIP media application, including name, AWS Region, and endpoints. *

* * @param getSipMediaApplicationRequest * @return Result of the GetSipMediaApplication operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetSipMediaApplication * @see AWS * API Documentation */ @Override public GetSipMediaApplicationResponse getSipMediaApplication(GetSipMediaApplicationRequest getSipMediaApplicationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetSipMediaApplicationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getSipMediaApplicationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetSipMediaApplication"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetSipMediaApplication").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getSipMediaApplicationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetSipMediaApplicationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns the logging configuration for the specified SIP media application. *

* * @param getSipMediaApplicationLoggingConfigurationRequest * @return Result of the GetSipMediaApplicationLoggingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetSipMediaApplicationLoggingConfiguration * @see AWS API Documentation */ @Override public GetSipMediaApplicationLoggingConfigurationResponse getSipMediaApplicationLoggingConfiguration( GetSipMediaApplicationLoggingConfigurationRequest getSipMediaApplicationLoggingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, GetSipMediaApplicationLoggingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getSipMediaApplicationLoggingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetSipMediaApplicationLoggingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetSipMediaApplicationLoggingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(getSipMediaApplicationLoggingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetSipMediaApplicationLoggingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves the details of a SIP rule, such as the rule ID, name, triggers, and target endpoints. *

* * @param getSipRuleRequest * @return Result of the GetSipRule operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetSipRule * @see AWS API * Documentation */ @Override public GetSipRuleResponse getSipRule(GetSipRuleRequest getSipRuleRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetSipRuleResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getSipRuleRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetSipRule"); return clientHandler .execute(new ClientExecutionParams().withOperationName("GetSipRule") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(getSipRuleRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetSipRuleRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified user ID, such as primary email address, license type,and personal meeting * PIN. *

*

* To retrieve user details with an email address instead of a user ID, use the ListUsers action, and then * filter by email address. *

* * @param getUserRequest * @return Result of the GetUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetUser * @see AWS API * Documentation */ @Override public GetUserResponse getUser(GetUserRequest getUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetUser"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getUserRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new GetUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves settings for the specified user ID, such as any associated phone number settings. *

* * @param getUserSettingsRequest * @return Result of the GetUserSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetUserSettings * @see AWS API * Documentation */ @Override public GetUserSettingsResponse getUserSettings(GetUserSettingsRequest getUserSettingsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetUserSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getUserSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetUserSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetUserSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getUserSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetUserSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified Amazon Chime Voice Connector, such as timestamps,name, outbound host, and * encryption requirements. *

* * @param getVoiceConnectorRequest * @return Result of the GetVoiceConnector operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnector * @see AWS API * Documentation */ @Override public GetVoiceConnectorResponse getVoiceConnector(GetVoiceConnectorRequest getVoiceConnectorRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, GetVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnector"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("GetVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the emergency calling configuration details for the specified Amazon Chime Voice Connector. *

* * @param getVoiceConnectorEmergencyCallingConfigurationRequest * @return Result of the GetVoiceConnectorEmergencyCallingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorEmergencyCallingConfiguration * @see AWS API Documentation */ @Override public GetVoiceConnectorEmergencyCallingConfigurationResponse getVoiceConnectorEmergencyCallingConfiguration( GetVoiceConnectorEmergencyCallingConfigurationRequest getVoiceConnectorEmergencyCallingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, GetVoiceConnectorEmergencyCallingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorEmergencyCallingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorEmergencyCallingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorEmergencyCallingConfiguration") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(getVoiceConnectorEmergencyCallingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorEmergencyCallingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves details for the specified Amazon Chime Voice Connector group, such as timestamps,name, and associated * VoiceConnectorItems. *

* * @param getVoiceConnectorGroupRequest * @return Result of the GetVoiceConnectorGroup operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorGroup * @see AWS * API Documentation */ @Override public GetVoiceConnectorGroupResponse getVoiceConnectorGroup(GetVoiceConnectorGroupRequest getVoiceConnectorGroupRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorGroupRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorGroup").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves the logging configuration details for the specified Amazon Chime Voice Connector. Shows whether SIP * message logs are enabled for sending to Amazon CloudWatch Logs. *

* * @param getVoiceConnectorLoggingConfigurationRequest * @return Result of the GetVoiceConnectorLoggingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorLoggingConfiguration * @see AWS API Documentation */ @Override public GetVoiceConnectorLoggingConfigurationResponse getVoiceConnectorLoggingConfiguration( GetVoiceConnectorLoggingConfigurationRequest getVoiceConnectorLoggingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, GetVoiceConnectorLoggingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorLoggingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorLoggingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorLoggingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(getVoiceConnectorLoggingConfigurationRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorLoggingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves origination setting details for the specified Amazon Chime Voice Connector. *

* * @param getVoiceConnectorOriginationRequest * @return Result of the GetVoiceConnectorOrigination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorOrigination * @see AWS API Documentation */ @Override public GetVoiceConnectorOriginationResponse getVoiceConnectorOrigination( GetVoiceConnectorOriginationRequest getVoiceConnectorOriginationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetVoiceConnectorOriginationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorOriginationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorOrigination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorOrigination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorOriginationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorOriginationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Gets the proxy configuration details for the specified Amazon Chime Voice Connector. *

* * @param getVoiceConnectorProxyRequest * @return Result of the GetVoiceConnectorProxy operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorProxy * @see AWS * API Documentation */ @Override public GetVoiceConnectorProxyResponse getVoiceConnectorProxy(GetVoiceConnectorProxyRequest getVoiceConnectorProxyRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetVoiceConnectorProxyResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorProxyRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorProxy"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorProxy").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorProxyRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorProxyRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves the streaming configuration details for the specified Amazon Chime Voice Connector. Shows whether media * streaming is enabled for sending to Amazon Kinesis. It also shows the retention period, in hours, for the Amazon * Kinesis data. *

* * @param getVoiceConnectorStreamingConfigurationRequest * @return Result of the GetVoiceConnectorStreamingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorStreamingConfiguration * @see AWS API Documentation */ @Override public GetVoiceConnectorStreamingConfigurationResponse getVoiceConnectorStreamingConfiguration( GetVoiceConnectorStreamingConfigurationRequest getVoiceConnectorStreamingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, GetVoiceConnectorStreamingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorStreamingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorStreamingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorStreamingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(getVoiceConnectorStreamingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorStreamingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves termination setting details for the specified Amazon Chime Voice Connector. *

* * @param getVoiceConnectorTerminationRequest * @return Result of the GetVoiceConnectorTermination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorTermination * @see AWS API Documentation */ @Override public GetVoiceConnectorTerminationResponse getVoiceConnectorTermination( GetVoiceConnectorTerminationRequest getVoiceConnectorTerminationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetVoiceConnectorTerminationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorTerminationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorTermination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorTermination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorTerminationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorTerminationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Retrieves information about the last time a SIP OPTIONS ping was received from your SIP * infrastructure for the specified Amazon Chime Voice Connector. *

* * @param getVoiceConnectorTerminationHealthRequest * @return Result of the GetVoiceConnectorTerminationHealth operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.GetVoiceConnectorTerminationHealth * @see AWS API Documentation */ @Override public GetVoiceConnectorTerminationHealthResponse getVoiceConnectorTerminationHealth( GetVoiceConnectorTerminationHealthRequest getVoiceConnectorTerminationHealthRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, GetVoiceConnectorTerminationHealthResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, getVoiceConnectorTerminationHealthRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetVoiceConnectorTerminationHealth"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("GetVoiceConnectorTerminationHealth").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(getVoiceConnectorTerminationHealthRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new GetVoiceConnectorTerminationHealthRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Sends email to a maximum of 50 users, inviting them to the specified Amazon Chime Team account. Only * Team account types are currently supported for this action. *

* * @param inviteUsersRequest * @return Result of the InviteUsers operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.InviteUsers * @see AWS API * Documentation */ @Override public InviteUsersResponse inviteUsers(InviteUsersRequest inviteUsersRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, InviteUsersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, inviteUsersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "InviteUsers"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("InviteUsers").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(inviteUsersRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new InviteUsersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the Amazon Chime accounts under the administrator's AWS account. You can filter accounts by account name * prefix. To find out which Amazon Chime account a user belongs to, you can filter by the user's email address, * which returns one account result. *

* * @param listAccountsRequest * @return Result of the ListAccounts operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAccounts * @see AWS API * Documentation */ @Override public ListAccountsResponse listAccounts(ListAccountsRequest listAccountsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListAccountsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAccountsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAccounts"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAccounts").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listAccountsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAccountsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the Amazon Chime accounts under the administrator's AWS account. You can filter accounts by account name * prefix. To find out which Amazon Chime account a user belongs to, you can filter by the user's email address, * which returns one account result. *

*
*

* This is a variant of {@link #listAccounts(software.amazon.awssdk.services.chime.model.ListAccountsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAccountsIterable responses = client.listAccountsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListAccountsIterable responses = client.listAccountsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListAccountsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAccountsIterable responses = client.listAccountsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listAccounts(software.amazon.awssdk.services.chime.model.ListAccountsRequest)} operation. *

* * @param listAccountsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAccounts * @see AWS API * Documentation */ @Override public ListAccountsIterable listAccountsPaginator(ListAccountsRequest listAccountsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListAccountsIterable(this, applyPaginatorUserAgent(listAccountsRequest)); } /** *

* Returns a list of the administrators in the AppInstance. *

* * @param listAppInstanceAdminsRequest * @return Result of the ListAppInstanceAdmins operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstanceAdmins * @see AWS * API Documentation */ @Override public ListAppInstanceAdminsResponse listAppInstanceAdmins(ListAppInstanceAdminsRequest listAppInstanceAdminsRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListAppInstanceAdminsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAppInstanceAdminsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAppInstanceAdmins"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAppInstanceAdmins").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listAppInstanceAdminsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAppInstanceAdminsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns a list of the administrators in the AppInstance. *

*
*

* This is a variant of * {@link #listAppInstanceAdmins(software.amazon.awssdk.services.chime.model.ListAppInstanceAdminsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstanceAdminsIterable responses = client.listAppInstanceAdminsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListAppInstanceAdminsIterable responses = client
     *             .listAppInstanceAdminsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListAppInstanceAdminsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstanceAdminsIterable responses = client.listAppInstanceAdminsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listAppInstanceAdmins(software.amazon.awssdk.services.chime.model.ListAppInstanceAdminsRequest)} * operation. *

* * @param listAppInstanceAdminsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstanceAdmins * @see AWS * API Documentation */ @Override public ListAppInstanceAdminsIterable listAppInstanceAdminsPaginator(ListAppInstanceAdminsRequest listAppInstanceAdminsRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListAppInstanceAdminsIterable(this, applyPaginatorUserAgent(listAppInstanceAdminsRequest)); } /** *

* List all AppInstanceUsers created under a single AppInstance. *

* * @param listAppInstanceUsersRequest * @return Result of the ListAppInstanceUsers operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstanceUsers * @see AWS * API Documentation */ @Override public ListAppInstanceUsersResponse listAppInstanceUsers(ListAppInstanceUsersRequest listAppInstanceUsersRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListAppInstanceUsersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAppInstanceUsersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAppInstanceUsers"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAppInstanceUsers").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listAppInstanceUsersRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAppInstanceUsersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* List all AppInstanceUsers created under a single AppInstance. *

*
*

* This is a variant of * {@link #listAppInstanceUsers(software.amazon.awssdk.services.chime.model.ListAppInstanceUsersRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstanceUsersIterable responses = client.listAppInstanceUsersPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListAppInstanceUsersIterable responses = client
     *             .listAppInstanceUsersPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListAppInstanceUsersResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstanceUsersIterable responses = client.listAppInstanceUsersPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listAppInstanceUsers(software.amazon.awssdk.services.chime.model.ListAppInstanceUsersRequest)} * operation. *

* * @param listAppInstanceUsersRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstanceUsers * @see AWS * API Documentation */ @Override public ListAppInstanceUsersIterable listAppInstanceUsersPaginator(ListAppInstanceUsersRequest listAppInstanceUsersRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListAppInstanceUsersIterable(this, applyPaginatorUserAgent(listAppInstanceUsersRequest)); } /** *

* Lists all Amazon Chime AppInstances created under a single AWS account. *

* * @param listAppInstancesRequest * @return Result of the ListAppInstances operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstances * @see AWS API * Documentation */ @Override public ListAppInstancesResponse listAppInstances(ListAppInstancesRequest listAppInstancesRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListAppInstancesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAppInstancesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAppInstances"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAppInstances").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listAppInstancesRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAppInstancesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all Amazon Chime AppInstances created under a single AWS account. *

*
*

* This is a variant of * {@link #listAppInstances(software.amazon.awssdk.services.chime.model.ListAppInstancesRequest)} operation. The * return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle * making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstancesIterable responses = client.listAppInstancesPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListAppInstancesIterable responses = client
     *             .listAppInstancesPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListAppInstancesResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAppInstancesIterable responses = client.listAppInstancesPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listAppInstances(software.amazon.awssdk.services.chime.model.ListAppInstancesRequest)} operation. *

* * @param listAppInstancesRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAppInstances * @see AWS API * Documentation */ @Override public ListAppInstancesIterable listAppInstancesPaginator(ListAppInstancesRequest listAppInstancesRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListAppInstancesIterable(this, applyPaginatorUserAgent(listAppInstancesRequest)); } /** *

* Lists the tags applied to an Amazon Chime SDK attendee resource. *

* * @param listAttendeeTagsRequest * @return Result of the ListAttendeeTags operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAttendeeTags * @see AWS API * Documentation */ @Override public ListAttendeeTagsResponse listAttendeeTags(ListAttendeeTagsRequest listAttendeeTagsRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListAttendeeTagsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAttendeeTagsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAttendeeTags"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAttendeeTags").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listAttendeeTagsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAttendeeTagsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the attendees for the specified Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, * see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

* * @param listAttendeesRequest * @return Result of the ListAttendees operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAttendees * @see AWS API * Documentation */ @Override public ListAttendeesResponse listAttendees(ListAttendeesRequest listAttendeesRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListAttendeesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listAttendeesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListAttendees"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListAttendees").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listAttendeesRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListAttendeesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the attendees for the specified Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, * see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

*
*

* This is a variant of {@link #listAttendees(software.amazon.awssdk.services.chime.model.ListAttendeesRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAttendeesIterable responses = client.listAttendeesPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListAttendeesIterable responses = client.listAttendeesPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListAttendeesResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListAttendeesIterable responses = client.listAttendeesPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listAttendees(software.amazon.awssdk.services.chime.model.ListAttendeesRequest)} operation. *

* * @param listAttendeesRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListAttendees * @see AWS API * Documentation */ @Override public ListAttendeesIterable listAttendeesPaginator(ListAttendeesRequest listAttendeesRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListAttendeesIterable(this, applyPaginatorUserAgent(listAttendeesRequest)); } /** *

* Lists the bots associated with the administrator's Amazon Chime Enterprise account ID. *

* * @param listBotsRequest * @return Result of the ListBots operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListBots * @see AWS API * Documentation */ @Override public ListBotsResponse listBots(ListBotsRequest listBotsRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, UnauthorizedClientException, BadRequestException, NotFoundException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListBotsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listBotsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListBots"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListBots").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listBotsRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new ListBotsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the bots associated with the administrator's Amazon Chime Enterprise account ID. *

*
*

* This is a variant of {@link #listBots(software.amazon.awssdk.services.chime.model.ListBotsRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListBotsIterable responses = client.listBotsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListBotsIterable responses = client.listBotsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListBotsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListBotsIterable responses = client.listBotsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listBots(software.amazon.awssdk.services.chime.model.ListBotsRequest)} operation. *

* * @param listBotsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListBots * @see AWS API * Documentation */ @Override public ListBotsIterable listBotsPaginator(ListBotsRequest listBotsRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, UnauthorizedClientException, BadRequestException, NotFoundException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { return new ListBotsIterable(this, applyPaginatorUserAgent(listBotsRequest)); } /** *

* Lists all the users banned from a particular channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelBansRequest * @return Result of the ListChannelBans operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelBans * @see AWS API * Documentation */ @Override public ListChannelBansResponse listChannelBans(ListChannelBansRequest listChannelBansRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListChannelBansResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelBansRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelBans"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListChannelBans").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelBansRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelBansRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all the users banned from a particular channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of {@link #listChannelBans(software.amazon.awssdk.services.chime.model.ListChannelBansRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelBansIterable responses = client.listChannelBansPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelBansIterable responses = client.listChannelBansPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelBansResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelBansIterable responses = client.listChannelBansPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelBans(software.amazon.awssdk.services.chime.model.ListChannelBansRequest)} operation. *

* * @param listChannelBansRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelBans * @see AWS API * Documentation */ @Override public ListChannelBansIterable listChannelBansPaginator(ListChannelBansRequest listChannelBansRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelBansIterable(this, applyPaginatorUserAgent(listChannelBansRequest)); } /** *

* Lists all channel memberships in a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelMembershipsRequest * @return Result of the ListChannelMemberships operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMemberships * @see AWS * API Documentation */ @Override public ListChannelMembershipsResponse listChannelMemberships(ListChannelMembershipsRequest listChannelMembershipsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListChannelMembershipsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelMembershipsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelMemberships"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListChannelMemberships").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelMembershipsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelMembershipsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all channel memberships in a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of * {@link #listChannelMemberships(software.amazon.awssdk.services.chime.model.ListChannelMembershipsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsIterable responses = client.listChannelMembershipsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsIterable responses = client
     *             .listChannelMembershipsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelMembershipsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsIterable responses = client.listChannelMembershipsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelMemberships(software.amazon.awssdk.services.chime.model.ListChannelMembershipsRequest)} * operation. *

* * @param listChannelMembershipsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMemberships * @see AWS * API Documentation */ @Override public ListChannelMembershipsIterable listChannelMembershipsPaginator( ListChannelMembershipsRequest listChannelMembershipsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelMembershipsIterable(this, applyPaginatorUserAgent(listChannelMembershipsRequest)); } /** *

* Lists all channels that a particular AppInstanceUser is a part of. Only an * AppInstanceAdmin can call the API with a user ARN that is not their own. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelMembershipsForAppInstanceUserRequest * @return Result of the ListChannelMembershipsForAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMembershipsForAppInstanceUser * @see AWS API Documentation */ @Override public ListChannelMembershipsForAppInstanceUserResponse listChannelMembershipsForAppInstanceUser( ListChannelMembershipsForAppInstanceUserRequest listChannelMembershipsForAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, ListChannelMembershipsForAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelMembershipsForAppInstanceUserRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelMembershipsForAppInstanceUser"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListChannelMembershipsForAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelMembershipsForAppInstanceUserRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelMembershipsForAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all channels that a particular AppInstanceUser is a part of. Only an * AppInstanceAdmin can call the API with a user ARN that is not their own. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of * {@link #listChannelMembershipsForAppInstanceUser(software.amazon.awssdk.services.chime.model.ListChannelMembershipsForAppInstanceUserRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsForAppInstanceUserIterable responses = client.listChannelMembershipsForAppInstanceUserPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsForAppInstanceUserIterable responses = client
     *             .listChannelMembershipsForAppInstanceUserPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelMembershipsForAppInstanceUserResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMembershipsForAppInstanceUserIterable responses = client.listChannelMembershipsForAppInstanceUserPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelMembershipsForAppInstanceUser(software.amazon.awssdk.services.chime.model.ListChannelMembershipsForAppInstanceUserRequest)} * operation. *

* * @param listChannelMembershipsForAppInstanceUserRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMembershipsForAppInstanceUser * @see AWS API Documentation */ @Override public ListChannelMembershipsForAppInstanceUserIterable listChannelMembershipsForAppInstanceUserPaginator( ListChannelMembershipsForAppInstanceUserRequest listChannelMembershipsForAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelMembershipsForAppInstanceUserIterable(this, applyPaginatorUserAgent(listChannelMembershipsForAppInstanceUserRequest)); } /** *

* List all the messages in a channel. Returns a paginated list of ChannelMessages. By default, sorted * by creation timestamp in descending order. *

* *

* Redacted messages appear in the results as empty, since they are only redacted, not deleted. Deleted messages do * not appear in the results. This action always returns the latest version of an edited message. *

*

* Also, the x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the user * that makes the API call as the value in the header. *

*
* * @param listChannelMessagesRequest * @return Result of the ListChannelMessages operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMessages * @see AWS API * Documentation */ @Override public ListChannelMessagesResponse listChannelMessages(ListChannelMessagesRequest listChannelMessagesRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListChannelMessagesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelMessagesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelMessages"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListChannelMessages").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelMessagesRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelMessagesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* List all the messages in a channel. Returns a paginated list of ChannelMessages. By default, sorted * by creation timestamp in descending order. *

* *

* Redacted messages appear in the results as empty, since they are only redacted, not deleted. Deleted messages do * not appear in the results. This action always returns the latest version of an edited message. *

*

* Also, the x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the user * that makes the API call as the value in the header. *

*

*

* This is a variant of * {@link #listChannelMessages(software.amazon.awssdk.services.chime.model.ListChannelMessagesRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMessagesIterable responses = client.listChannelMessagesPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelMessagesIterable responses = client
     *             .listChannelMessagesPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelMessagesResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelMessagesIterable responses = client.listChannelMessagesPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelMessages(software.amazon.awssdk.services.chime.model.ListChannelMessagesRequest)} * operation. *

* * @param listChannelMessagesRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelMessages * @see AWS API * Documentation */ @Override public ListChannelMessagesIterable listChannelMessagesPaginator(ListChannelMessagesRequest listChannelMessagesRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelMessagesIterable(this, applyPaginatorUserAgent(listChannelMessagesRequest)); } /** *

* Lists all the moderators for a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelModeratorsRequest * @return Result of the ListChannelModerators operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelModerators * @see AWS * API Documentation */ @Override public ListChannelModeratorsResponse listChannelModerators(ListChannelModeratorsRequest listChannelModeratorsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListChannelModeratorsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelModeratorsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelModerators"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListChannelModerators").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelModeratorsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelModeratorsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all the moderators for a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of * {@link #listChannelModerators(software.amazon.awssdk.services.chime.model.ListChannelModeratorsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelModeratorsIterable responses = client.listChannelModeratorsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelModeratorsIterable responses = client
     *             .listChannelModeratorsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelModeratorsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelModeratorsIterable responses = client.listChannelModeratorsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelModerators(software.amazon.awssdk.services.chime.model.ListChannelModeratorsRequest)} * operation. *

* * @param listChannelModeratorsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelModerators * @see AWS * API Documentation */ @Override public ListChannelModeratorsIterable listChannelModeratorsPaginator(ListChannelModeratorsRequest listChannelModeratorsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelModeratorsIterable(this, applyPaginatorUserAgent(listChannelModeratorsRequest)); } /** *

* Lists all Channels created under a single Chime App as a paginated list. You can specify filters to narrow * results. *

*

* Functionality & restrictions *

*
    *
  • *

    * Use privacy = PUBLIC to retrieve all public channels in the account. *

    *
  • *
  • *

    * Only an AppInstanceAdmin can set privacy = PRIVATE to list the private channels in an * account. *

    *
  • *
* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelsRequest * @return Result of the ListChannels operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannels * @see AWS API * Documentation */ @Override public ListChannelsResponse listChannels(ListChannelsRequest listChannelsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListChannelsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannels"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListChannels").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists all Channels created under a single Chime App as a paginated list. You can specify filters to narrow * results. *

*

* Functionality & restrictions *

*
    *
  • *

    * Use privacy = PUBLIC to retrieve all public channels in the account. *

    *
  • *
  • *

    * Only an AppInstanceAdmin can set privacy = PRIVATE to list the private channels in an * account. *

    *
  • *
* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of {@link #listChannels(software.amazon.awssdk.services.chime.model.ListChannelsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelsIterable responses = client.listChannelsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelsIterable responses = client.listChannelsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelsIterable responses = client.listChannelsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannels(software.amazon.awssdk.services.chime.model.ListChannelsRequest)} operation. *

* * @param listChannelsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannels * @see AWS API * Documentation */ @Override public ListChannelsIterable listChannelsPaginator(ListChannelsRequest listChannelsRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelsIterable(this, applyPaginatorUserAgent(listChannelsRequest)); } /** *

* A list of the channels moderated by an AppInstanceUser. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param listChannelsModeratedByAppInstanceUserRequest * @return Result of the ListChannelsModeratedByAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelsModeratedByAppInstanceUser * @see AWS API Documentation */ @Override public ListChannelsModeratedByAppInstanceUserResponse listChannelsModeratedByAppInstanceUser( ListChannelsModeratedByAppInstanceUserRequest listChannelsModeratedByAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, ListChannelsModeratedByAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listChannelsModeratedByAppInstanceUserRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListChannelsModeratedByAppInstanceUser"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListChannelsModeratedByAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(listChannelsModeratedByAppInstanceUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListChannelsModeratedByAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* A list of the channels moderated by an AppInstanceUser. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

*

* This is a variant of * {@link #listChannelsModeratedByAppInstanceUser(software.amazon.awssdk.services.chime.model.ListChannelsModeratedByAppInstanceUserRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelsModeratedByAppInstanceUserIterable responses = client.listChannelsModeratedByAppInstanceUserPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListChannelsModeratedByAppInstanceUserIterable responses = client
     *             .listChannelsModeratedByAppInstanceUserPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListChannelsModeratedByAppInstanceUserResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListChannelsModeratedByAppInstanceUserIterable responses = client.listChannelsModeratedByAppInstanceUserPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listChannelsModeratedByAppInstanceUser(software.amazon.awssdk.services.chime.model.ListChannelsModeratedByAppInstanceUserRequest)} * operation. *

* * @param listChannelsModeratedByAppInstanceUserRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListChannelsModeratedByAppInstanceUser * @see AWS API Documentation */ @Override public ListChannelsModeratedByAppInstanceUserIterable listChannelsModeratedByAppInstanceUserPaginator( ListChannelsModeratedByAppInstanceUserRequest listChannelsModeratedByAppInstanceUserRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListChannelsModeratedByAppInstanceUserIterable(this, applyPaginatorUserAgent(listChannelsModeratedByAppInstanceUserRequest)); } /** *

* Returns a list of media capture pipelines. *

* * @param listMediaCapturePipelinesRequest * @return Result of the ListMediaCapturePipelines operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListMediaCapturePipelines * @see AWS API Documentation */ @Override public ListMediaCapturePipelinesResponse listMediaCapturePipelines( ListMediaCapturePipelinesRequest listMediaCapturePipelinesRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListMediaCapturePipelinesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listMediaCapturePipelinesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListMediaCapturePipelines"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListMediaCapturePipelines").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listMediaCapturePipelinesRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListMediaCapturePipelinesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Returns a list of media capture pipelines. *

*
*

* This is a variant of * {@link #listMediaCapturePipelines(software.amazon.awssdk.services.chime.model.ListMediaCapturePipelinesRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListMediaCapturePipelinesIterable responses = client.listMediaCapturePipelinesPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListMediaCapturePipelinesIterable responses = client
     *             .listMediaCapturePipelinesPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListMediaCapturePipelinesResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListMediaCapturePipelinesIterable responses = client.listMediaCapturePipelinesPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listMediaCapturePipelines(software.amazon.awssdk.services.chime.model.ListMediaCapturePipelinesRequest)} * operation. *

* * @param listMediaCapturePipelinesRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListMediaCapturePipelines * @see AWS API Documentation */ @Override public ListMediaCapturePipelinesIterable listMediaCapturePipelinesPaginator( ListMediaCapturePipelinesRequest listMediaCapturePipelinesRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListMediaCapturePipelinesIterable(this, applyPaginatorUserAgent(listMediaCapturePipelinesRequest)); } /** *

* Lists the tags applied to an Amazon Chime SDK meeting resource. *

* * @param listMeetingTagsRequest * @return Result of the ListMeetingTags operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListMeetingTags * @see AWS API * Documentation */ @Override public ListMeetingTagsResponse listMeetingTags(ListMeetingTagsRequest listMeetingTagsRequest) throws BadRequestException, ForbiddenException, NotFoundException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListMeetingTagsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listMeetingTagsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListMeetingTags"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListMeetingTags").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listMeetingTagsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListMeetingTagsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists up to 100 active Amazon Chime SDK meetings. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

* * @param listMeetingsRequest * @return Result of the ListMeetings operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListMeetings * @see AWS API * Documentation */ @Override public ListMeetingsResponse listMeetings(ListMeetingsRequest listMeetingsRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListMeetingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listMeetingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListMeetings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListMeetings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listMeetingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListMeetingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists up to 100 active Amazon Chime SDK meetings. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the * Amazon Chime Developer Guide. *

*
*

* This is a variant of {@link #listMeetings(software.amazon.awssdk.services.chime.model.ListMeetingsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListMeetingsIterable responses = client.listMeetingsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListMeetingsIterable responses = client.listMeetingsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListMeetingsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListMeetingsIterable responses = client.listMeetingsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listMeetings(software.amazon.awssdk.services.chime.model.ListMeetingsRequest)} operation. *

* * @param listMeetingsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListMeetings * @see AWS API * Documentation */ @Override public ListMeetingsIterable listMeetingsPaginator(ListMeetingsRequest listMeetingsRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListMeetingsIterable(this, applyPaginatorUserAgent(listMeetingsRequest)); } /** *

* Lists the phone number orders for the administrator's Amazon Chime account. *

* * @param listPhoneNumberOrdersRequest * @return Result of the ListPhoneNumberOrders operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListPhoneNumberOrders * @see AWS * API Documentation */ @Override public ListPhoneNumberOrdersResponse listPhoneNumberOrders(ListPhoneNumberOrdersRequest listPhoneNumberOrdersRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListPhoneNumberOrdersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listPhoneNumberOrdersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListPhoneNumberOrders"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListPhoneNumberOrders").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listPhoneNumberOrdersRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListPhoneNumberOrdersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the phone number orders for the administrator's Amazon Chime account. *

*
*

* This is a variant of * {@link #listPhoneNumberOrders(software.amazon.awssdk.services.chime.model.ListPhoneNumberOrdersRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListPhoneNumberOrdersIterable responses = client.listPhoneNumberOrdersPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListPhoneNumberOrdersIterable responses = client
     *             .listPhoneNumberOrdersPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListPhoneNumberOrdersResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListPhoneNumberOrdersIterable responses = client.listPhoneNumberOrdersPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listPhoneNumberOrders(software.amazon.awssdk.services.chime.model.ListPhoneNumberOrdersRequest)} * operation. *

* * @param listPhoneNumberOrdersRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListPhoneNumberOrders * @see AWS * API Documentation */ @Override public ListPhoneNumberOrdersIterable listPhoneNumberOrdersPaginator(ListPhoneNumberOrdersRequest listPhoneNumberOrdersRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListPhoneNumberOrdersIterable(this, applyPaginatorUserAgent(listPhoneNumberOrdersRequest)); } /** *

* Lists the phone numbers for the specified Amazon Chime account, Amazon Chime user, Amazon Chime Voice Connector, * or Amazon Chime Voice Connector group. *

* * @param listPhoneNumbersRequest * @return Result of the ListPhoneNumbers operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListPhoneNumbers * @see AWS API * Documentation */ @Override public ListPhoneNumbersResponse listPhoneNumbers(ListPhoneNumbersRequest listPhoneNumbersRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, NotFoundException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListPhoneNumbersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listPhoneNumbersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListPhoneNumbers"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListPhoneNumbers").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listPhoneNumbersRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListPhoneNumbersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the phone numbers for the specified Amazon Chime account, Amazon Chime user, Amazon Chime Voice Connector, * or Amazon Chime Voice Connector group. *

*
*

* This is a variant of * {@link #listPhoneNumbers(software.amazon.awssdk.services.chime.model.ListPhoneNumbersRequest)} operation. The * return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle * making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListPhoneNumbersIterable responses = client.listPhoneNumbersPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListPhoneNumbersIterable responses = client
     *             .listPhoneNumbersPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListPhoneNumbersResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListPhoneNumbersIterable responses = client.listPhoneNumbersPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listPhoneNumbers(software.amazon.awssdk.services.chime.model.ListPhoneNumbersRequest)} operation. *

* * @param listPhoneNumbersRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListPhoneNumbers * @see AWS API * Documentation */ @Override public ListPhoneNumbersIterable listPhoneNumbersPaginator(ListPhoneNumbersRequest listPhoneNumbersRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, NotFoundException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListPhoneNumbersIterable(this, applyPaginatorUserAgent(listPhoneNumbersRequest)); } /** *

* Lists the proxy sessions for the specified Amazon Chime Voice Connector. *

* * @param listProxySessionsRequest * @return Result of the ListProxySessions operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListProxySessions * @see AWS API * Documentation */ @Override public ListProxySessionsResponse listProxySessions(ListProxySessionsRequest listProxySessionsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListProxySessionsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listProxySessionsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListProxySessions"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListProxySessions").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listProxySessionsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListProxySessionsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the proxy sessions for the specified Amazon Chime Voice Connector. *

*
*

* This is a variant of * {@link #listProxySessions(software.amazon.awssdk.services.chime.model.ListProxySessionsRequest)} operation. The * return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle * making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListProxySessionsIterable responses = client.listProxySessionsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListProxySessionsIterable responses = client
     *             .listProxySessionsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListProxySessionsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListProxySessionsIterable responses = client.listProxySessionsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listProxySessions(software.amazon.awssdk.services.chime.model.ListProxySessionsRequest)} operation. *

* * @param listProxySessionsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListProxySessions * @see AWS API * Documentation */ @Override public ListProxySessionsIterable listProxySessionsPaginator(ListProxySessionsRequest listProxySessionsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListProxySessionsIterable(this, applyPaginatorUserAgent(listProxySessionsRequest)); } /** *

* Lists the membership details for the specified room in an Amazon Chime Enterprise account, such as the members' * IDs, email addresses, and names. *

* * @param listRoomMembershipsRequest * @return Result of the ListRoomMemberships operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListRoomMemberships * @see AWS API * Documentation */ @Override public ListRoomMembershipsResponse listRoomMemberships(ListRoomMembershipsRequest listRoomMembershipsRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListRoomMembershipsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listRoomMembershipsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListRoomMemberships"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListRoomMemberships").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listRoomMembershipsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListRoomMembershipsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the membership details for the specified room in an Amazon Chime Enterprise account, such as the members' * IDs, email addresses, and names. *

*
*

* This is a variant of * {@link #listRoomMemberships(software.amazon.awssdk.services.chime.model.ListRoomMembershipsRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListRoomMembershipsIterable responses = client.listRoomMembershipsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListRoomMembershipsIterable responses = client
     *             .listRoomMembershipsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListRoomMembershipsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListRoomMembershipsIterable responses = client.listRoomMembershipsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listRoomMemberships(software.amazon.awssdk.services.chime.model.ListRoomMembershipsRequest)} * operation. *

* * @param listRoomMembershipsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListRoomMemberships * @see AWS API * Documentation */ @Override public ListRoomMembershipsIterable listRoomMembershipsPaginator(ListRoomMembershipsRequest listRoomMembershipsRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListRoomMembershipsIterable(this, applyPaginatorUserAgent(listRoomMembershipsRequest)); } /** *

* Lists the room details for the specified Amazon Chime Enterprise account. Optionally, filter the results by a * member ID (user ID or bot ID) to see a list of rooms that the member belongs to. *

* * @param listRoomsRequest * @return Result of the ListRooms operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListRooms * @see AWS API * Documentation */ @Override public ListRoomsResponse listRooms(ListRoomsRequest listRoomsRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListRoomsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listRoomsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListRooms"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListRooms").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listRoomsRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new ListRoomsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the room details for the specified Amazon Chime Enterprise account. Optionally, filter the results by a * member ID (user ID or bot ID) to see a list of rooms that the member belongs to. *

*
*

* This is a variant of {@link #listRooms(software.amazon.awssdk.services.chime.model.ListRoomsRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListRoomsIterable responses = client.listRoomsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListRoomsIterable responses = client.listRoomsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListRoomsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListRoomsIterable responses = client.listRoomsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listRooms(software.amazon.awssdk.services.chime.model.ListRoomsRequest)} operation. *

* * @param listRoomsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListRooms * @see AWS API * Documentation */ @Override public ListRoomsIterable listRoomsPaginator(ListRoomsRequest listRoomsRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListRoomsIterable(this, applyPaginatorUserAgent(listRoomsRequest)); } /** *

* Lists the SIP media applications under the administrator's AWS account. *

* * @param listSipMediaApplicationsRequest * @return Result of the ListSipMediaApplications operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListSipMediaApplications * @see AWS API Documentation */ @Override public ListSipMediaApplicationsResponse listSipMediaApplications( ListSipMediaApplicationsRequest listSipMediaApplicationsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListSipMediaApplicationsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listSipMediaApplicationsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSipMediaApplications"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListSipMediaApplications").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listSipMediaApplicationsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListSipMediaApplicationsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the SIP media applications under the administrator's AWS account. *

*
*

* This is a variant of * {@link #listSipMediaApplications(software.amazon.awssdk.services.chime.model.ListSipMediaApplicationsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListSipMediaApplicationsIterable responses = client.listSipMediaApplicationsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListSipMediaApplicationsIterable responses = client
     *             .listSipMediaApplicationsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListSipMediaApplicationsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListSipMediaApplicationsIterable responses = client.listSipMediaApplicationsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listSipMediaApplications(software.amazon.awssdk.services.chime.model.ListSipMediaApplicationsRequest)} * operation. *

* * @param listSipMediaApplicationsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListSipMediaApplications * @see AWS API Documentation */ @Override public ListSipMediaApplicationsIterable listSipMediaApplicationsPaginator( ListSipMediaApplicationsRequest listSipMediaApplicationsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListSipMediaApplicationsIterable(this, applyPaginatorUserAgent(listSipMediaApplicationsRequest)); } /** *

* Lists the SIP rules under the administrator's AWS account. *

* * @param listSipRulesRequest * @return Result of the ListSipRules operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListSipRules * @see AWS API * Documentation */ @Override public ListSipRulesResponse listSipRules(ListSipRulesRequest listSipRulesRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListSipRulesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listSipRulesRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSipRules"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListSipRules").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listSipRulesRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListSipRulesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the SIP rules under the administrator's AWS account. *

*
*

* This is a variant of {@link #listSipRules(software.amazon.awssdk.services.chime.model.ListSipRulesRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListSipRulesIterable responses = client.listSipRulesPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListSipRulesIterable responses = client.listSipRulesPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListSipRulesResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListSipRulesIterable responses = client.listSipRulesPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listSipRules(software.amazon.awssdk.services.chime.model.ListSipRulesRequest)} operation. *

* * @param listSipRulesRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListSipRules * @see AWS API * Documentation */ @Override public ListSipRulesIterable listSipRulesPaginator(ListSipRulesRequest listSipRulesRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListSipRulesIterable(this, applyPaginatorUserAgent(listSipRulesRequest)); } /** *

* Lists supported phone number countries. *

* * @param listSupportedPhoneNumberCountriesRequest * @return Result of the ListSupportedPhoneNumberCountries operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListSupportedPhoneNumberCountries * @see AWS API Documentation */ @Override public ListSupportedPhoneNumberCountriesResponse listSupportedPhoneNumberCountries( ListSupportedPhoneNumberCountriesRequest listSupportedPhoneNumberCountriesRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListSupportedPhoneNumberCountriesResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listSupportedPhoneNumberCountriesRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSupportedPhoneNumberCountries"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListSupportedPhoneNumberCountries").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listSupportedPhoneNumberCountriesRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListSupportedPhoneNumberCountriesRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the tags applied to an Amazon Chime SDK meeting resource. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListTagsForResource * @see AWS API * Documentation */ @Override public ListTagsForResourceResponse listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListTagsForResourceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listTagsForResourceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListTagsForResource"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListTagsForResource").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listTagsForResourceRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListTagsForResourceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the users that belong to the specified Amazon Chime account. You can specify an email address to list only * the user that the email address belongs to. *

* * @param listUsersRequest * @return Result of the ListUsers operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListUsers * @see AWS API * Documentation */ @Override public ListUsersResponse listUsers(ListUsersRequest listUsersRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ListUsersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listUsersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListUsers"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListUsers").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listUsersRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new ListUsersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the users that belong to the specified Amazon Chime account. You can specify an email address to list only * the user that the email address belongs to. *

*
*

* This is a variant of {@link #listUsers(software.amazon.awssdk.services.chime.model.ListUsersRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListUsersIterable responses = client.listUsersPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListUsersIterable responses = client.listUsersPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListUsersResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListUsersIterable responses = client.listUsersPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listUsers(software.amazon.awssdk.services.chime.model.ListUsersRequest)} operation. *

* * @param listUsersRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListUsers * @see AWS API * Documentation */ @Override public ListUsersIterable listUsersPaginator(ListUsersRequest listUsersRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListUsersIterable(this, applyPaginatorUserAgent(listUsersRequest)); } /** *

* Lists the Amazon Chime Voice Connector groups for the administrator's AWS account. *

* * @param listVoiceConnectorGroupsRequest * @return Result of the ListVoiceConnectorGroups operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListVoiceConnectorGroups * @see AWS API Documentation */ @Override public ListVoiceConnectorGroupsResponse listVoiceConnectorGroups( ListVoiceConnectorGroupsRequest listVoiceConnectorGroupsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListVoiceConnectorGroupsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listVoiceConnectorGroupsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListVoiceConnectorGroups"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListVoiceConnectorGroups").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listVoiceConnectorGroupsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListVoiceConnectorGroupsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the Amazon Chime Voice Connector groups for the administrator's AWS account. *

*
*

* This is a variant of * {@link #listVoiceConnectorGroups(software.amazon.awssdk.services.chime.model.ListVoiceConnectorGroupsRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorGroupsIterable responses = client.listVoiceConnectorGroupsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorGroupsIterable responses = client
     *             .listVoiceConnectorGroupsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListVoiceConnectorGroupsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorGroupsIterable responses = client.listVoiceConnectorGroupsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listVoiceConnectorGroups(software.amazon.awssdk.services.chime.model.ListVoiceConnectorGroupsRequest)} * operation. *

* * @param listVoiceConnectorGroupsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListVoiceConnectorGroups * @see AWS API Documentation */ @Override public ListVoiceConnectorGroupsIterable listVoiceConnectorGroupsPaginator( ListVoiceConnectorGroupsRequest listVoiceConnectorGroupsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListVoiceConnectorGroupsIterable(this, applyPaginatorUserAgent(listVoiceConnectorGroupsRequest)); } /** *

* Lists the SIP credentials for the specified Amazon Chime Voice Connector. *

* * @param listVoiceConnectorTerminationCredentialsRequest * @return Result of the ListVoiceConnectorTerminationCredentials operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListVoiceConnectorTerminationCredentials * @see AWS API Documentation */ @Override public ListVoiceConnectorTerminationCredentialsResponse listVoiceConnectorTerminationCredentials( ListVoiceConnectorTerminationCredentialsRequest listVoiceConnectorTerminationCredentialsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, ListVoiceConnectorTerminationCredentialsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listVoiceConnectorTerminationCredentialsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListVoiceConnectorTerminationCredentials"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("ListVoiceConnectorTerminationCredentials").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(listVoiceConnectorTerminationCredentialsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListVoiceConnectorTerminationCredentialsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the Amazon Chime Voice Connectors for the administrator's AWS account. *

* * @param listVoiceConnectorsRequest * @return Result of the ListVoiceConnectors operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListVoiceConnectors * @see AWS API * Documentation */ @Override public ListVoiceConnectorsResponse listVoiceConnectors(ListVoiceConnectorsRequest listVoiceConnectorsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ListVoiceConnectorsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, listVoiceConnectorsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListVoiceConnectors"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ListVoiceConnectors").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(listVoiceConnectorsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ListVoiceConnectorsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Lists the Amazon Chime Voice Connectors for the administrator's AWS account. *

*
*

* This is a variant of * {@link #listVoiceConnectors(software.amazon.awssdk.services.chime.model.ListVoiceConnectorsRequest)} operation. * The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally * handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorsIterable responses = client.listVoiceConnectorsPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorsIterable responses = client
     *             .listVoiceConnectorsPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.ListVoiceConnectorsResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.ListVoiceConnectorsIterable responses = client.listVoiceConnectorsPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #listVoiceConnectors(software.amazon.awssdk.services.chime.model.ListVoiceConnectorsRequest)} * operation. *

* * @param listVoiceConnectorsRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ListVoiceConnectors * @see AWS API * Documentation */ @Override public ListVoiceConnectorsIterable listVoiceConnectorsPaginator(ListVoiceConnectorsRequest listVoiceConnectorsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new ListVoiceConnectorsIterable(this, applyPaginatorUserAgent(listVoiceConnectorsRequest)); } /** *

* Logs out the specified user from all of the devices they are currently logged into. *

* * @param logoutUserRequest * @return Result of the LogoutUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.LogoutUser * @see AWS API * Documentation */ @Override public LogoutUserResponse logoutUser(LogoutUserRequest logoutUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, LogoutUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, logoutUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "LogoutUser"); return clientHandler .execute(new ClientExecutionParams().withOperationName("LogoutUser") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(logoutUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new LogoutUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Sets the amount of time in days that a given AppInstance retains data. *

* * @param putAppInstanceRetentionSettingsRequest * @return Result of the PutAppInstanceRetentionSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutAppInstanceRetentionSettings * @see AWS API Documentation */ @Override public PutAppInstanceRetentionSettingsResponse putAppInstanceRetentionSettings( PutAppInstanceRetentionSettingsRequest putAppInstanceRetentionSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutAppInstanceRetentionSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putAppInstanceRetentionSettingsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutAppInstanceRetentionSettings"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutAppInstanceRetentionSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(putAppInstanceRetentionSettingsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutAppInstanceRetentionSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* The data streaming configurations of an AppInstance. *

* * @param putAppInstanceStreamingConfigurationsRequest * @return Result of the PutAppInstanceStreamingConfigurations operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutAppInstanceStreamingConfigurations * @see AWS API Documentation */ @Override public PutAppInstanceStreamingConfigurationsResponse putAppInstanceStreamingConfigurations( PutAppInstanceStreamingConfigurationsRequest putAppInstanceStreamingConfigurationsRequest) throws NotFoundException, BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutAppInstanceStreamingConfigurationsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putAppInstanceStreamingConfigurationsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutAppInstanceStreamingConfigurations"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutAppInstanceStreamingConfigurations").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(putAppInstanceStreamingConfigurationsRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutAppInstanceStreamingConfigurationsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Creates an events configuration that allows a bot to receive outgoing events sent by Amazon Chime. Choose either * an HTTPS endpoint or a Lambda function ARN. For more information, see Bot. *

* * @param putEventsConfigurationRequest * @return Result of the PutEventsConfiguration operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutEventsConfiguration * @see AWS * API Documentation */ @Override public PutEventsConfigurationResponse putEventsConfiguration(PutEventsConfigurationRequest putEventsConfigurationRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, ResourceLimitExceededException, NotFoundException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutEventsConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putEventsConfigurationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutEventsConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutEventsConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(putEventsConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutEventsConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Puts retention settings for the specified Amazon Chime Enterprise account. We recommend using AWS CloudTrail to * monitor usage of this API for your account. For more information, see Logging Amazon Chime API Calls with AWS * CloudTrail in the Amazon Chime Administration Guide. *

*

* To turn off existing retention settings, remove the number of days from the corresponding RetentionDays * field in the RetentionSettings object. For more information about retention settings, see Managing Chat Retention Policies in * the Amazon Chime Administration Guide. *

* * @param putRetentionSettingsRequest * @return Result of the PutRetentionSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutRetentionSettings * @see AWS * API Documentation */ @Override public PutRetentionSettingsResponse putRetentionSettings(PutRetentionSettingsRequest putRetentionSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutRetentionSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putRetentionSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutRetentionSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("PutRetentionSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(putRetentionSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutRetentionSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the logging configuration for the specified SIP media application. *

* * @param putSipMediaApplicationLoggingConfigurationRequest * @return Result of the PutSipMediaApplicationLoggingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutSipMediaApplicationLoggingConfiguration * @see AWS API Documentation */ @Override public PutSipMediaApplicationLoggingConfigurationResponse putSipMediaApplicationLoggingConfiguration( PutSipMediaApplicationLoggingConfigurationRequest putSipMediaApplicationLoggingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutSipMediaApplicationLoggingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putSipMediaApplicationLoggingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutSipMediaApplicationLoggingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutSipMediaApplicationLoggingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(putSipMediaApplicationLoggingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutSipMediaApplicationLoggingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Puts emergency calling configuration details to the specified Amazon Chime Voice Connector, such as emergency * phone numbers and calling countries. Origination and termination settings must be enabled for the Amazon Chime * Voice Connector before emergency calling can be configured. *

* * @param putVoiceConnectorEmergencyCallingConfigurationRequest * @return Result of the PutVoiceConnectorEmergencyCallingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorEmergencyCallingConfiguration * @see AWS API Documentation */ @Override public PutVoiceConnectorEmergencyCallingConfigurationResponse putVoiceConnectorEmergencyCallingConfiguration( PutVoiceConnectorEmergencyCallingConfigurationRequest putVoiceConnectorEmergencyCallingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutVoiceConnectorEmergencyCallingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorEmergencyCallingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorEmergencyCallingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorEmergencyCallingConfiguration") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(putVoiceConnectorEmergencyCallingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorEmergencyCallingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds a logging configuration for the specified Amazon Chime Voice Connector. The logging configuration specifies * whether SIP message logs are enabled for sending to Amazon CloudWatch Logs. *

* * @param putVoiceConnectorLoggingConfigurationRequest * @return Result of the PutVoiceConnectorLoggingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorLoggingConfiguration * @see AWS API Documentation */ @Override public PutVoiceConnectorLoggingConfigurationResponse putVoiceConnectorLoggingConfiguration( PutVoiceConnectorLoggingConfigurationRequest putVoiceConnectorLoggingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutVoiceConnectorLoggingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorLoggingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorLoggingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorLoggingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(putVoiceConnectorLoggingConfigurationRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorLoggingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds origination settings for the specified Amazon Chime Voice Connector. *

* *

* If emergency calling is configured for the Amazon Chime Voice Connector, it must be deleted prior to turning off * origination settings. *

*
* * @param putVoiceConnectorOriginationRequest * @return Result of the PutVoiceConnectorOrigination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorOrigination * @see AWS API Documentation */ @Override public PutVoiceConnectorOriginationResponse putVoiceConnectorOrigination( PutVoiceConnectorOriginationRequest putVoiceConnectorOriginationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutVoiceConnectorOriginationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorOriginationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorOrigination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorOrigination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(putVoiceConnectorOriginationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorOriginationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Puts the specified proxy configuration to the specified Amazon Chime Voice Connector. *

* * @param putVoiceConnectorProxyRequest * @return Result of the PutVoiceConnectorProxy operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorProxy * @see AWS * API Documentation */ @Override public PutVoiceConnectorProxyResponse putVoiceConnectorProxy(PutVoiceConnectorProxyRequest putVoiceConnectorProxyRequest) throws UnauthorizedClientException, AccessDeniedException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutVoiceConnectorProxyResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorProxyRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorProxy"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorProxy").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(putVoiceConnectorProxyRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorProxyRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds a streaming configuration for the specified Amazon Chime Voice Connector. The streaming configuration * specifies whether media streaming is enabled for sending to Kinesis. It also sets the retention period, in hours, * for the Amazon Kinesis data. *

* * @param putVoiceConnectorStreamingConfigurationRequest * @return Result of the PutVoiceConnectorStreamingConfiguration operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorStreamingConfiguration * @see AWS API Documentation */ @Override public PutVoiceConnectorStreamingConfigurationResponse putVoiceConnectorStreamingConfiguration( PutVoiceConnectorStreamingConfigurationRequest putVoiceConnectorStreamingConfigurationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutVoiceConnectorStreamingConfigurationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorStreamingConfigurationRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorStreamingConfiguration"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorStreamingConfiguration").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(putVoiceConnectorStreamingConfigurationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorStreamingConfigurationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds termination settings for the specified Amazon Chime Voice Connector. *

* *

* If emergency calling is configured for the Amazon Chime Voice Connector, it must be deleted prior to turning off * termination settings. *

*
* * @param putVoiceConnectorTerminationRequest * @return Result of the PutVoiceConnectorTermination operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorTermination * @see AWS API Documentation */ @Override public PutVoiceConnectorTerminationResponse putVoiceConnectorTermination( PutVoiceConnectorTerminationRequest putVoiceConnectorTerminationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, AccessDeniedException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, PutVoiceConnectorTerminationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorTerminationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorTermination"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorTermination").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(putVoiceConnectorTerminationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorTerminationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Adds termination SIP credentials for the specified Amazon Chime Voice Connector. *

* * @param putVoiceConnectorTerminationCredentialsRequest * @return Result of the PutVoiceConnectorTerminationCredentials operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.PutVoiceConnectorTerminationCredentials * @see AWS API Documentation */ @Override public PutVoiceConnectorTerminationCredentialsResponse putVoiceConnectorTerminationCredentials( PutVoiceConnectorTerminationCredentialsRequest putVoiceConnectorTerminationCredentialsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory .createResponseHandler(operationMetadata, PutVoiceConnectorTerminationCredentialsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, putVoiceConnectorTerminationCredentialsRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutVoiceConnectorTerminationCredentials"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("PutVoiceConnectorTerminationCredentials").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler) .withInput(putVoiceConnectorTerminationCredentialsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new PutVoiceConnectorTerminationCredentialsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Redacts message content, but not metadata. The message exists in the back end, but the action returns null * content, and the state shows as redacted. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param redactChannelMessageRequest * @return Result of the RedactChannelMessage operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.RedactChannelMessage * @see AWS * API Documentation */ @Override public RedactChannelMessageResponse redactChannelMessage(RedactChannelMessageRequest redactChannelMessageRequest) throws BadRequestException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, RedactChannelMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, redactChannelMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "RedactChannelMessage"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("RedactChannelMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(redactChannelMessageRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new RedactChannelMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Redacts the specified message from the specified Amazon Chime conversation. *

* * @param redactConversationMessageRequest * @return Result of the RedactConversationMessage operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.RedactConversationMessage * @see AWS API Documentation */ @Override public RedactConversationMessageResponse redactConversationMessage( RedactConversationMessageRequest redactConversationMessageRequest) throws NotFoundException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, BadRequestException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, RedactConversationMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, redactConversationMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "RedactConversationMessage"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("RedactConversationMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(redactConversationMessageRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new RedactConversationMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Redacts the specified message from the specified Amazon Chime channel. *

* * @param redactRoomMessageRequest * @return Result of the RedactRoomMessage operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.RedactRoomMessage * @see AWS API * Documentation */ @Override public RedactRoomMessageResponse redactRoomMessage(RedactRoomMessageRequest redactRoomMessageRequest) throws NotFoundException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, BadRequestException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, RedactRoomMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, redactRoomMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "RedactRoomMessage"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("RedactRoomMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(redactRoomMessageRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new RedactRoomMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Regenerates the security token for a bot. *

* * @param regenerateSecurityTokenRequest * @return Result of the RegenerateSecurityToken operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.RegenerateSecurityToken * @see AWS * API Documentation */ @Override public RegenerateSecurityTokenResponse regenerateSecurityToken(RegenerateSecurityTokenRequest regenerateSecurityTokenRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, NotFoundException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, RegenerateSecurityTokenResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, regenerateSecurityTokenRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "RegenerateSecurityToken"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("RegenerateSecurityToken").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(regenerateSecurityTokenRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new RegenerateSecurityTokenRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Resets the personal meeting PIN for the specified user on an Amazon Chime account. Returns the User object * with the updated personal meeting PIN. *

* * @param resetPersonalPinRequest * @return Result of the ResetPersonalPIN operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ResetPersonalPIN * @see AWS API * Documentation */ @Override public ResetPersonalPinResponse resetPersonalPIN(ResetPersonalPinRequest resetPersonalPinRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, ResetPersonalPinResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, resetPersonalPinRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ResetPersonalPIN"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ResetPersonalPIN").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(resetPersonalPinRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ResetPersonalPinRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Moves a phone number from the Deletion queue back into the phone number Inventory. *

* * @param restorePhoneNumberRequest * @return Result of the RestorePhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.RestorePhoneNumber * @see AWS API * Documentation */ @Override public RestorePhoneNumberResponse restorePhoneNumber(RestorePhoneNumberRequest restorePhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ResourceLimitExceededException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, RestorePhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, restorePhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "RestorePhoneNumber"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("RestorePhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(restorePhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new RestorePhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Searches for phone numbers that can be ordered. For US numbers, provide at least one of the following search * filters: AreaCode, City, State, or TollFreePrefix. If you * provide City, you must also provide State. Numbers outside the US only support the * PhoneNumberType filter, which you must use. *

* * @param searchAvailablePhoneNumbersRequest * @return Result of the SearchAvailablePhoneNumbers operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.SearchAvailablePhoneNumbers * @see AWS API Documentation */ @Override public SearchAvailablePhoneNumbersResponse searchAvailablePhoneNumbers( SearchAvailablePhoneNumbersRequest searchAvailablePhoneNumbersRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, SearchAvailablePhoneNumbersResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, searchAvailablePhoneNumbersRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "SearchAvailablePhoneNumbers"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("SearchAvailablePhoneNumbers").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(searchAvailablePhoneNumbersRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new SearchAvailablePhoneNumbersRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Searches for phone numbers that can be ordered. For US numbers, provide at least one of the following search * filters: AreaCode, City, State, or TollFreePrefix. If you * provide City, you must also provide State. Numbers outside the US only support the * PhoneNumberType filter, which you must use. *

*
*

* This is a variant of * {@link #searchAvailablePhoneNumbers(software.amazon.awssdk.services.chime.model.SearchAvailablePhoneNumbersRequest)} * operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will * internally handle making service calls for you. *

*

* When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no * guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response * pages by making service calls until there are no pages left or your iteration stops. If there are errors in your * request, you will see the failures only after you start iterating through the iterable. *

* *

* The following are few ways to iterate through the response pages: *

* 1) Using a Stream * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.SearchAvailablePhoneNumbersIterable responses = client.searchAvailablePhoneNumbersPaginator(request);
     * responses.stream().forEach(....);
     * }
     * 
* * 2) Using For loop * *
     * {
     *     @code
     *     software.amazon.awssdk.services.chime.paginators.SearchAvailablePhoneNumbersIterable responses = client
     *             .searchAvailablePhoneNumbersPaginator(request);
     *     for (software.amazon.awssdk.services.chime.model.SearchAvailablePhoneNumbersResponse response : responses) {
     *         // do something;
     *     }
     * }
     * 
* * 3) Use iterator directly * *
     * {@code
     * software.amazon.awssdk.services.chime.paginators.SearchAvailablePhoneNumbersIterable responses = client.searchAvailablePhoneNumbersPaginator(request);
     * responses.iterator().forEachRemaining(....);
     * }
     * 
*

* Please notice that the configuration of MaxResults won't limit the number of results you get with the * paginator. It only limits the number of results in each page. *

*

* Note: If you prefer to have control on service calls, use the * {@link #searchAvailablePhoneNumbers(software.amazon.awssdk.services.chime.model.SearchAvailablePhoneNumbersRequest)} * operation. *

* * @param searchAvailablePhoneNumbersRequest * @return A custom iterable that can be used to iterate through all the response pages. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws AccessDeniedException * You don't have permissions to perform the requested operation. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.SearchAvailablePhoneNumbers * @see AWS API Documentation */ @Override public SearchAvailablePhoneNumbersIterable searchAvailablePhoneNumbersPaginator( SearchAvailablePhoneNumbersRequest searchAvailablePhoneNumbersRequest) throws BadRequestException, ForbiddenException, AccessDeniedException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { return new SearchAvailablePhoneNumbersIterable(this, applyPaginatorUserAgent(searchAvailablePhoneNumbersRequest)); } /** *

* Sends a message to a particular channel that the member is a part of. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*

* Also, STANDARD messages can contain 4KB of data and the 1KB of metadata. CONTROL * messages can contain 30 bytes of data and no metadata. *

*
* * @param sendChannelMessageRequest * @return Result of the SendChannelMessage operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.SendChannelMessage * @see AWS API * Documentation */ @Override public SendChannelMessageResponse sendChannelMessage(SendChannelMessageRequest sendChannelMessageRequest) throws BadRequestException, ConflictException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, SendChannelMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, sendChannelMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "SendChannelMessage"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("SendChannelMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(sendChannelMessageRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new SendChannelMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Starts transcription for the specified meetingId. *

* * @param startMeetingTranscriptionRequest * @return Result of the StartMeetingTranscription operation returned by the service. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws UnprocessableEntityException * The request was well-formed but was unable to be followed due to semantic errors. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.StartMeetingTranscription * @see AWS API Documentation */ @Override public StartMeetingTranscriptionResponse startMeetingTranscription( StartMeetingTranscriptionRequest startMeetingTranscriptionRequest) throws NotFoundException, ForbiddenException, BadRequestException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, UnprocessableEntityException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, StartMeetingTranscriptionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, startMeetingTranscriptionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "StartMeetingTranscription"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("StartMeetingTranscription").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(startMeetingTranscriptionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new StartMeetingTranscriptionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Stops transcription for the specified meetingId. *

* * @param stopMeetingTranscriptionRequest * @return Result of the StopMeetingTranscription operation returned by the service. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws UnprocessableEntityException * The request was well-formed but was unable to be followed due to semantic errors. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.StopMeetingTranscription * @see AWS API Documentation */ @Override public StopMeetingTranscriptionResponse stopMeetingTranscription( StopMeetingTranscriptionRequest stopMeetingTranscriptionRequest) throws ForbiddenException, NotFoundException, BadRequestException, ThrottledClientException, UnauthorizedClientException, UnprocessableEntityException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, StopMeetingTranscriptionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, stopMeetingTranscriptionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "StopMeetingTranscription"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("StopMeetingTranscription").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(stopMeetingTranscriptionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new StopMeetingTranscriptionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Applies the specified tags to the specified Amazon Chime SDK attendee. *

* * @param tagAttendeeRequest * @return Result of the TagAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.TagAttendee * @see AWS API * Documentation */ @Override public TagAttendeeResponse tagAttendee(TagAttendeeRequest tagAttendeeRequest) throws BadRequestException, ForbiddenException, NotFoundException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, TagAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, tagAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "TagAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("TagAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(tagAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new TagAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Applies the specified tags to the specified Amazon Chime SDK meeting. *

* * @param tagMeetingRequest * @return Result of the TagMeeting operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.TagMeeting * @see AWS API * Documentation */ @Override public TagMeetingResponse tagMeeting(TagMeetingRequest tagMeetingRequest) throws BadRequestException, ForbiddenException, NotFoundException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, TagMeetingResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, tagMeetingRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "TagMeeting"); return clientHandler .execute(new ClientExecutionParams().withOperationName("TagMeeting") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(tagMeetingRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new TagMeetingRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Applies the specified tags to the specified Amazon Chime SDK meeting resource. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.TagResource * @see AWS API * Documentation */ @Override public TagResourceResponse tagResource(TagResourceRequest tagResourceRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, TagResourceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, tagResourceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "TagResource"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("TagResource").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(tagResourceRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new TagResourceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Untags the specified tags from the specified Amazon Chime SDK attendee. *

* * @param untagAttendeeRequest * @return Result of the UntagAttendee operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UntagAttendee * @see AWS API * Documentation */ @Override public UntagAttendeeResponse untagAttendee(UntagAttendeeRequest untagAttendeeRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UntagAttendeeResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, untagAttendeeRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UntagAttendee"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UntagAttendee").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(untagAttendeeRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UntagAttendeeRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Untags the specified tags from the specified Amazon Chime SDK meeting. *

* * @param untagMeetingRequest * @return Result of the UntagMeeting operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UntagMeeting * @see AWS API * Documentation */ @Override public UntagMeetingResponse untagMeeting(UntagMeetingRequest untagMeetingRequest) throws BadRequestException, ForbiddenException, ThrottledClientException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UntagMeetingResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, untagMeetingRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UntagMeeting"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UntagMeeting").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(untagMeetingRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UntagMeetingRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Untags the specified tags from the specified Amazon Chime SDK meeting resource. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UntagResource * @see AWS API * Documentation */ @Override public UntagResourceResponse untagResource(UntagResourceRequest untagResourceRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UntagResourceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, untagResourceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UntagResource"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UntagResource").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(untagResourceRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UntagResourceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates account details for the specified Amazon Chime account. Currently, only account name and default license * updates are supported for this action. *

* * @param updateAccountRequest * @return Result of the UpdateAccount operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateAccount * @see AWS API * Documentation */ @Override public UpdateAccountResponse updateAccount(UpdateAccountRequest updateAccountRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateAccountResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateAccountRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateAccount"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateAccount").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateAccountRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateAccountRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the settings for the specified Amazon Chime account. You can update settings for remote control of shared * screens, or for the dial-out option. For more information about these settings, see Use the Policies Page in the Amazon Chime * Administration Guide. *

* * @param updateAccountSettingsRequest * @return Result of the UpdateAccountSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateAccountSettings * @see AWS * API Documentation */ @Override public UpdateAccountSettingsResponse updateAccountSettings(UpdateAccountSettingsRequest updateAccountSettingsRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateAccountSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateAccountSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateAccountSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateAccountSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateAccountSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateAccountSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates AppInstance metadata. *

* * @param updateAppInstanceRequest * @return Result of the UpdateAppInstance operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateAppInstance * @see AWS API * Documentation */ @Override public UpdateAppInstanceResponse updateAppInstance(UpdateAppInstanceRequest updateAppInstanceRequest) throws BadRequestException, ConflictException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateAppInstanceResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateAppInstanceRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateAppInstance"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateAppInstance").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(updateAppInstanceRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateAppInstanceRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the details of an AppInstanceUser. You can update names and metadata. *

* * @param updateAppInstanceUserRequest * @return Result of the UpdateAppInstanceUser operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateAppInstanceUser * @see AWS * API Documentation */ @Override public UpdateAppInstanceUserResponse updateAppInstanceUser(UpdateAppInstanceUserRequest updateAppInstanceUserRequest) throws BadRequestException, ConflictException, ForbiddenException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateAppInstanceUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateAppInstanceUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateAppInstanceUser"); String hostPrefix = "identity-"; String resolvedHostExpression = "identity-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateAppInstanceUser").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(updateAppInstanceUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateAppInstanceUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the status of the specified bot, such as starting or stopping the bot from running in your Amazon Chime * Enterprise account. *

* * @param updateBotRequest * @return Result of the UpdateBot operation returned by the service. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateBot * @see AWS API * Documentation */ @Override public UpdateBotResponse updateBot(UpdateBotRequest updateBotRequest) throws ServiceUnavailableException, ServiceFailureException, ForbiddenException, BadRequestException, UnauthorizedClientException, NotFoundException, ThrottledClientException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateBotResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateBotRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateBot"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateBot").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateBotRequest) .withMetricCollector(apiCallMetricCollector).withMarshaller(new UpdateBotRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Update a channel's attributes. *

*

* Restriction: You can't change a channel's privacy. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param updateChannelRequest * @return Result of the UpdateChannel operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateChannel * @see AWS API * Documentation */ @Override public UpdateChannelResponse updateChannel(UpdateChannelRequest updateChannelRequest) throws BadRequestException, ForbiddenException, ConflictException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateChannelResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateChannelRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateChannel"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateChannel").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(updateChannelRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateChannelRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the content of a message. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param updateChannelMessageRequest * @return Result of the UpdateChannelMessage operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateChannelMessage * @see AWS * API Documentation */ @Override public UpdateChannelMessageResponse updateChannelMessage(UpdateChannelMessageRequest updateChannelMessageRequest) throws BadRequestException, ConflictException, ForbiddenException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateChannelMessageResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateChannelMessageRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateChannelMessage"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateChannelMessage").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(updateChannelMessageRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateChannelMessageRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* The details of the time when a user last read messages in a channel. *

* *

* The x-amz-chime-bearer request header is mandatory. Use the AppInstanceUserArn of the * user that makes the API call as the value in the header. *

*
* * @param updateChannelReadMarkerRequest * @return Result of the UpdateChannelReadMarker operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateChannelReadMarker * @see AWS * API Documentation */ @Override public UpdateChannelReadMarkerResponse updateChannelReadMarker(UpdateChannelReadMarkerRequest updateChannelReadMarkerRequest) throws BadRequestException, ForbiddenException, ConflictException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateChannelReadMarkerResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateChannelReadMarkerRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateChannelReadMarker"); String hostPrefix = "messaging-"; String resolvedHostExpression = "messaging-"; return clientHandler .execute(new ClientExecutionParams() .withOperationName("UpdateChannelReadMarker").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).hostPrefixExpression(resolvedHostExpression) .withInput(updateChannelReadMarkerRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateChannelReadMarkerRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates global settings for the administrator's AWS account, such as Amazon Chime Business Calling and Amazon * Chime Voice Connector settings. *

* * @param updateGlobalSettingsRequest * @return Result of the UpdateGlobalSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateGlobalSettings * @see AWS * API Documentation */ @Override public UpdateGlobalSettingsResponse updateGlobalSettings(UpdateGlobalSettingsRequest updateGlobalSettingsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateGlobalSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateGlobalSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateGlobalSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateGlobalSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateGlobalSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateGlobalSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates phone number details, such as product type or calling name, for the specified phone number ID. You can * update one phone number detail at a time. For example, you can update either the product type or the calling name * in one action. *

*

* For toll-free numbers, you cannot use the Amazon Chime Business Calling product type. For numbers outside the * U.S., you must use the Amazon Chime SIP Media Application Dial-In product type. *

*

* Updates to outbound calling names can take 72 hours to complete. Pending updates to outbound calling names must * be complete before you can request another update. *

* * @param updatePhoneNumberRequest * @return Result of the UpdatePhoneNumber operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdatePhoneNumber * @see AWS API * Documentation */ @Override public UpdatePhoneNumberResponse updatePhoneNumber(UpdatePhoneNumberRequest updatePhoneNumberRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ConflictException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdatePhoneNumberResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updatePhoneNumberRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdatePhoneNumber"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdatePhoneNumber").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updatePhoneNumberRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdatePhoneNumberRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the phone number settings for the administrator's AWS account, such as the default outbound calling name. * You can update the default outbound calling name once every seven days. Outbound calling names can take up to 72 * hours to update. *

* * @param updatePhoneNumberSettingsRequest * @return Result of the UpdatePhoneNumberSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdatePhoneNumberSettings * @see AWS API Documentation */ @Override public UpdatePhoneNumberSettingsResponse updatePhoneNumberSettings( UpdatePhoneNumberSettingsRequest updatePhoneNumberSettingsRequest) throws UnauthorizedClientException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdatePhoneNumberSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updatePhoneNumberSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdatePhoneNumberSettings"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("UpdatePhoneNumberSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updatePhoneNumberSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdatePhoneNumberSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the specified proxy session details, such as voice or SMS capabilities. *

* * @param updateProxySessionRequest * @return Result of the UpdateProxySession operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateProxySession * @see AWS API * Documentation */ @Override public UpdateProxySessionResponse updateProxySession(UpdateProxySessionRequest updateProxySessionRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateProxySessionResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateProxySessionRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateProxySession"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateProxySession").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateProxySessionRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateProxySessionRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates room details, such as the room name, for a room in an Amazon Chime Enterprise account. *

* * @param updateRoomRequest * @return Result of the UpdateRoom operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateRoom * @see AWS API * Documentation */ @Override public UpdateRoomResponse updateRoom(UpdateRoomRequest updateRoomRequest) throws BadRequestException, ForbiddenException, NotFoundException, UnauthorizedClientException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateRoomResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateRoomRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateRoom"); return clientHandler .execute(new ClientExecutionParams().withOperationName("UpdateRoom") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(updateRoomRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateRoomRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates room membership details, such as the member role, for a room in an Amazon Chime Enterprise account. The * member role designates whether the member is a chat room administrator or a general chat room member. The member * role can be updated only for user IDs. *

* * @param updateRoomMembershipRequest * @return Result of the UpdateRoomMembership operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateRoomMembership * @see AWS * API Documentation */ @Override public UpdateRoomMembershipResponse updateRoomMembership(UpdateRoomMembershipRequest updateRoomMembershipRequest) throws UnauthorizedClientException, NotFoundException, BadRequestException, ForbiddenException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateRoomMembershipResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateRoomMembershipRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateRoomMembership"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateRoomMembership").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateRoomMembershipRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateRoomMembershipRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the details of the specified SIP media application. *

* * @param updateSipMediaApplicationRequest * @return Result of the UpdateSipMediaApplication operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateSipMediaApplication * @see AWS API Documentation */ @Override public UpdateSipMediaApplicationResponse updateSipMediaApplication( UpdateSipMediaApplicationRequest updateSipMediaApplicationRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateSipMediaApplicationResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateSipMediaApplicationRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateSipMediaApplication"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("UpdateSipMediaApplication").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateSipMediaApplicationRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateSipMediaApplicationRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Invokes the AWS Lambda function associated with the SIP media application and transaction ID in an update * request. The Lambda function can then return a new set of actions. *

* * @param updateSipMediaApplicationCallRequest * @return Result of the UpdateSipMediaApplicationCall operation returned by the service. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateSipMediaApplicationCall * @see AWS API Documentation */ @Override public UpdateSipMediaApplicationCallResponse updateSipMediaApplicationCall( UpdateSipMediaApplicationCallRequest updateSipMediaApplicationCallRequest) throws BadRequestException, NotFoundException, ForbiddenException, ResourceLimitExceededException, ThrottledClientException, UnauthorizedClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateSipMediaApplicationCallResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateSipMediaApplicationCallRequest.overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateSipMediaApplicationCall"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("UpdateSipMediaApplicationCall").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateSipMediaApplicationCallRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateSipMediaApplicationCallRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the details of the specified SIP rule. *

* * @param updateSipRuleRequest * @return Result of the UpdateSipRule operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ResourceLimitExceededException * The request exceeds the resource limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateSipRule * @see AWS API * Documentation */ @Override public UpdateSipRuleResponse updateSipRule(UpdateSipRuleRequest updateSipRuleRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ResourceLimitExceededException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateSipRuleResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateSipRuleRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateSipRule"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateSipRule").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateSipRuleRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateSipRuleRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates user details for a specified user ID. Currently, only LicenseType updates are supported for * this action. *

* * @param updateUserRequest * @return Result of the UpdateUser operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateUser * @see AWS API * Documentation */ @Override public UpdateUserResponse updateUser(UpdateUserRequest updateUserRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata, UpdateUserResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateUserRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateUser"); return clientHandler .execute(new ClientExecutionParams().withOperationName("UpdateUser") .withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler) .withInput(updateUserRequest).withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateUserRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates the settings for the specified user, such as phone number settings. *

* * @param updateUserSettingsRequest * @return Result of the UpdateUserSettings operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateUserSettings * @see AWS API * Documentation */ @Override public UpdateUserSettingsResponse updateUserSettings(UpdateUserSettingsRequest updateUserSettingsRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateUserSettingsResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateUserSettingsRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateUserSettings"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateUserSettings").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateUserSettingsRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateUserSettingsRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates details for the specified Amazon Chime Voice Connector. *

* * @param updateVoiceConnectorRequest * @return Result of the UpdateVoiceConnector operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateVoiceConnector * @see AWS * API Documentation */ @Override public UpdateVoiceConnectorResponse updateVoiceConnector(UpdateVoiceConnectorRequest updateVoiceConnectorRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateVoiceConnectorResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateVoiceConnectorRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateVoiceConnector"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("UpdateVoiceConnector").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateVoiceConnectorRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateVoiceConnectorRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Updates details of the specified Amazon Chime Voice Connector group, such as the name and Amazon Chime Voice * Connector priority ranking. *

* * @param updateVoiceConnectorGroupRequest * @return Result of the UpdateVoiceConnectorGroup operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ConflictException * The request could not be processed because of conflict in the current state of the resource. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.UpdateVoiceConnectorGroup * @see AWS API Documentation */ @Override public UpdateVoiceConnectorGroupResponse updateVoiceConnectorGroup( UpdateVoiceConnectorGroupRequest updateVoiceConnectorGroupRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ConflictException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, UpdateVoiceConnectorGroupResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, updateVoiceConnectorGroupRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "UpdateVoiceConnectorGroup"); return clientHandler .execute(new ClientExecutionParams() .withOperationName("UpdateVoiceConnectorGroup").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(updateVoiceConnectorGroupRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new UpdateVoiceConnectorGroupRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } /** *

* Validates an address to be used for 911 calls made with Amazon Chime Voice Connectors. You can use validated * addresses in a Presence Information Data Format Location Object file that you include in SIP requests. That helps * ensure that addresses are routed to the appropriate Public Safety Answering Point. *

* * @param validateE911AddressRequest * @return Result of the ValidateE911Address operation returned by the service. * @throws UnauthorizedClientException * The client is not currently authorized to make the request. * @throws NotFoundException * One or more of the resources in the request does not exist in the system. * @throws ForbiddenException * The client is permanently forbidden from making the request. * @throws BadRequestException * The input parameters don't match the service's restrictions. * @throws ThrottledClientException * The client exceeded its request rate limit. * @throws ServiceUnavailableException * The service is currently unavailable. * @throws ServiceFailureException * The service encountered an unexpected error. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws ChimeException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample ChimeClient.ValidateE911Address * @see AWS API * Documentation */ @Override public ValidateE911AddressResponse validateE911Address(ValidateE911AddressRequest validateE911AddressRequest) throws UnauthorizedClientException, NotFoundException, ForbiddenException, BadRequestException, ThrottledClientException, ServiceUnavailableException, ServiceFailureException, AwsServiceException, SdkClientException, ChimeException { JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false) .isPayloadJson(true).build(); HttpResponseHandler responseHandler = protocolFactory.createResponseHandler( operationMetadata, ValidateE911AddressResponse::builder); HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory, operationMetadata); List metricPublishers = resolveMetricPublishers(clientConfiguration, validateE911AddressRequest .overrideConfiguration().orElse(null)); MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector .create("ApiCall"); try { apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Chime"); apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ValidateE911Address"); return clientHandler.execute(new ClientExecutionParams() .withOperationName("ValidateE911Address").withResponseHandler(responseHandler) .withErrorResponseHandler(errorResponseHandler).withInput(validateE911AddressRequest) .withMetricCollector(apiCallMetricCollector) .withMarshaller(new ValidateE911AddressRequestMarshaller(protocolFactory))); } finally { metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect())); } } private T applyPaginatorUserAgent(T request) { Consumer userAgentApplier = b -> b.addApiName(ApiName.builder() .version(VersionInfo.SDK_VERSION).name("PAGINATED").build()); AwsRequestOverrideConfiguration overrideConfiguration = request.overrideConfiguration() .map(c -> c.toBuilder().applyMutation(userAgentApplier).build()) .orElse((AwsRequestOverrideConfiguration.builder().applyMutation(userAgentApplier).build())); return (T) request.toBuilder().overrideConfiguration(overrideConfiguration).build(); } @Override public final String serviceName() { return SERVICE_NAME; } private static List resolveMetricPublishers(SdkClientConfiguration clientConfiguration, RequestOverrideConfiguration requestOverrideConfiguration) { List publishers = null; if (requestOverrideConfiguration != null) { publishers = requestOverrideConfiguration.metricPublishers(); } if (publishers == null || publishers.isEmpty()) { publishers = clientConfiguration.option(SdkClientOption.METRIC_PUBLISHERS); } if (publishers == null) { publishers = Collections.emptyList(); } return publishers; } private HttpResponseHandler createErrorResponseHandler(BaseAwsJsonProtocolFactory protocolFactory, JsonOperationMetadata operationMetadata) { return protocolFactory.createErrorResponseHandler(operationMetadata); } private > T init(T builder) { return builder .clientConfiguration(clientConfiguration) .defaultServiceExceptionSupplier(ChimeException::builder) .protocol(AwsJsonProtocol.REST_JSON) .protocolVersion("1.1") .registerModeledException( ExceptionMetadata.builder().errorCode("ForbiddenException") .exceptionBuilderSupplier(ForbiddenException::builder).httpStatusCode(403).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("NotFoundException") .exceptionBuilderSupplier(NotFoundException::builder).httpStatusCode(404).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("ServiceFailureException") .exceptionBuilderSupplier(ServiceFailureException::builder).httpStatusCode(500).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("ConflictException") .exceptionBuilderSupplier(ConflictException::builder).httpStatusCode(409).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("UnprocessableEntityException") .exceptionBuilderSupplier(UnprocessableEntityException::builder).httpStatusCode(422).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("BadRequestException") .exceptionBuilderSupplier(BadRequestException::builder).httpStatusCode(400).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("ResourceLimitExceededException") .exceptionBuilderSupplier(ResourceLimitExceededException::builder).httpStatusCode(400).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("UnauthorizedClientException") .exceptionBuilderSupplier(UnauthorizedClientException::builder).httpStatusCode(401).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("AccessDeniedException") .exceptionBuilderSupplier(AccessDeniedException::builder).httpStatusCode(403).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("ThrottledClientException") .exceptionBuilderSupplier(ThrottledClientException::builder).httpStatusCode(429).build()) .registerModeledException( ExceptionMetadata.builder().errorCode("ServiceUnavailableException") .exceptionBuilderSupplier(ServiceUnavailableException::builder).httpStatusCode(503).build()); } @Override public final ChimeServiceClientConfiguration serviceClientConfiguration() { return this.serviceClientConfiguration; } @Override public void close() { clientHandler.close(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy