software.amazon.awssdk.services.alexaforbusiness.DefaultAlexaForBusinessClient 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.alexaforbusiness;
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.alexaforbusiness.model.AlexaForBusinessException;
import software.amazon.awssdk.services.alexaforbusiness.model.AlexaForBusinessRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AlreadyExistsException;
import software.amazon.awssdk.services.alexaforbusiness.model.ApproveSkillRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ApproveSkillResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateContactWithAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateContactWithAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateDeviceWithNetworkProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateDeviceWithNetworkProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateDeviceWithRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateDeviceWithRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillGroupWithRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillGroupWithRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillWithSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillWithSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillWithUsersRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.AssociateSkillWithUsersResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ConcurrentModificationException;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateBusinessReportScheduleRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateBusinessReportScheduleResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateConferenceProviderRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateConferenceProviderResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateContactRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateContactResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateGatewayGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateGatewayGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateNetworkProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateNetworkProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateUserRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.CreateUserResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteBusinessReportScheduleRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteBusinessReportScheduleResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteConferenceProviderRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteConferenceProviderResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteContactRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteContactResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteDeviceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteDeviceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteDeviceUsageDataRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteDeviceUsageDataResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteGatewayGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteGatewayGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteNetworkProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteNetworkProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteRoomSkillParameterRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteRoomSkillParameterResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteSkillAuthorizationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteSkillAuthorizationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteUserRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DeleteUserResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DeviceNotRegisteredException;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateContactFromAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateContactFromAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateDeviceFromRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateDeviceFromRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillFromSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillFromSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillFromUsersRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillFromUsersResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillGroupFromRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.DisassociateSkillGroupFromRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ForgetSmartHomeAppliancesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ForgetSmartHomeAppliancesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetConferencePreferenceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetConferencePreferenceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetConferenceProviderRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetConferenceProviderResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetContactRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetContactResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetDeviceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetDeviceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetGatewayGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetGatewayGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetGatewayRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetGatewayResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetInvitationConfigurationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetInvitationConfigurationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetNetworkProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetNetworkProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetRoomSkillParameterRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetRoomSkillParameterResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.GetSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.GetSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.InvalidCertificateAuthorityException;
import software.amazon.awssdk.services.alexaforbusiness.model.InvalidDeviceException;
import software.amazon.awssdk.services.alexaforbusiness.model.InvalidSecretsManagerResourceException;
import software.amazon.awssdk.services.alexaforbusiness.model.InvalidServiceLinkedRoleStateException;
import software.amazon.awssdk.services.alexaforbusiness.model.InvalidUserStatusException;
import software.amazon.awssdk.services.alexaforbusiness.model.LimitExceededException;
import software.amazon.awssdk.services.alexaforbusiness.model.ListBusinessReportSchedulesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListBusinessReportSchedulesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListConferenceProvidersRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListConferenceProvidersResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListDeviceEventsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListDeviceEventsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListGatewayGroupsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListGatewayGroupsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListGatewaysRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListGatewaysResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreCategoriesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreCategoriesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreSkillsByCategoryRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreSkillsByCategoryResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSmartHomeAppliancesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListSmartHomeAppliancesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ListTagsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ListTagsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.NameInUseException;
import software.amazon.awssdk.services.alexaforbusiness.model.NotFoundException;
import software.amazon.awssdk.services.alexaforbusiness.model.PutConferencePreferenceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.PutConferencePreferenceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.PutInvitationConfigurationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.PutInvitationConfigurationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.PutRoomSkillParameterRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.PutRoomSkillParameterResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.PutSkillAuthorizationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.PutSkillAuthorizationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.RegisterAvsDeviceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.RegisterAvsDeviceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.RejectSkillRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.RejectSkillResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ResolveRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.ResolveRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.ResourceAssociatedException;
import software.amazon.awssdk.services.alexaforbusiness.model.ResourceInUseException;
import software.amazon.awssdk.services.alexaforbusiness.model.RevokeInvitationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.RevokeInvitationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchAddressBooksRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchAddressBooksResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchContactsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchContactsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchDevicesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchDevicesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchNetworkProfilesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchNetworkProfilesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchProfilesRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchProfilesResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchRoomsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchRoomsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchSkillGroupsRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchSkillGroupsResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchUsersRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SearchUsersResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SendAnnouncementRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SendAnnouncementResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SendInvitationRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.SendInvitationResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.SkillNotLinkedException;
import software.amazon.awssdk.services.alexaforbusiness.model.StartDeviceSyncRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.StartDeviceSyncResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.StartSmartHomeApplianceDiscoveryRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.StartSmartHomeApplianceDiscoveryResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.TagResourceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.TagResourceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UnauthorizedException;
import software.amazon.awssdk.services.alexaforbusiness.model.UntagResourceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UntagResourceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateAddressBookRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateAddressBookResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateBusinessReportScheduleRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateBusinessReportScheduleResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateConferenceProviderRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateConferenceProviderResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateContactRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateContactResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateDeviceRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateDeviceResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateGatewayGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateGatewayGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateGatewayRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateGatewayResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateNetworkProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateNetworkProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateProfileRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateProfileResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateRoomRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateRoomResponse;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateSkillGroupRequest;
import software.amazon.awssdk.services.alexaforbusiness.model.UpdateSkillGroupResponse;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListBusinessReportSchedulesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListConferenceProvidersIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListDeviceEventsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewayGroupsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewaysIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreCategoriesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreSkillsByCategoryIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListSmartHomeAppliancesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.ListTagsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchAddressBooksIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchContactsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchDevicesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchNetworkProfilesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchProfilesIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchRoomsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchSkillGroupsIterable;
import software.amazon.awssdk.services.alexaforbusiness.paginators.SearchUsersIterable;
import software.amazon.awssdk.services.alexaforbusiness.transform.ApproveSkillRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateContactWithAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateDeviceWithNetworkProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateDeviceWithRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateSkillGroupWithRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateSkillWithSkillGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.AssociateSkillWithUsersRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateBusinessReportScheduleRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateConferenceProviderRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateContactRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateGatewayGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateNetworkProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateSkillGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.CreateUserRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteBusinessReportScheduleRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteConferenceProviderRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteContactRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteDeviceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteDeviceUsageDataRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteGatewayGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteNetworkProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteRoomSkillParameterRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteSkillAuthorizationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteSkillGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DeleteUserRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DisassociateContactFromAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DisassociateDeviceFromRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DisassociateSkillFromSkillGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DisassociateSkillFromUsersRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.DisassociateSkillGroupFromRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ForgetSmartHomeAppliancesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetConferencePreferenceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetConferenceProviderRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetContactRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetDeviceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetGatewayGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetGatewayRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetInvitationConfigurationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetNetworkProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetRoomSkillParameterRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.GetSkillGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListBusinessReportSchedulesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListConferenceProvidersRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListDeviceEventsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListGatewayGroupsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListGatewaysRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListSkillsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListSkillsStoreCategoriesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListSkillsStoreSkillsByCategoryRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListSmartHomeAppliancesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ListTagsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.PutConferencePreferenceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.PutInvitationConfigurationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.PutRoomSkillParameterRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.PutSkillAuthorizationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.RegisterAvsDeviceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.RejectSkillRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.ResolveRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.RevokeInvitationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchAddressBooksRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchContactsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchDevicesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchNetworkProfilesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchProfilesRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchRoomsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchSkillGroupsRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SearchUsersRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SendAnnouncementRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.SendInvitationRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.StartDeviceSyncRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.StartSmartHomeApplianceDiscoveryRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.TagResourceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UntagResourceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateAddressBookRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateBusinessReportScheduleRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateConferenceProviderRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateContactRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateDeviceRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateGatewayGroupRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateGatewayRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateNetworkProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateProfileRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateRoomRequestMarshaller;
import software.amazon.awssdk.services.alexaforbusiness.transform.UpdateSkillGroupRequestMarshaller;
import software.amazon.awssdk.utils.Logger;
/**
* Internal implementation of {@link AlexaForBusinessClient}.
*
* @see AlexaForBusinessClient#builder()
*/
@Generated("software.amazon.awssdk:codegen")
@SdkInternalApi
final class DefaultAlexaForBusinessClient implements AlexaForBusinessClient {
private static final Logger log = Logger.loggerFor(DefaultAlexaForBusinessClient.class);
private final SyncClientHandler clientHandler;
private final AwsJsonProtocolFactory protocolFactory;
private final SdkClientConfiguration clientConfiguration;
protected DefaultAlexaForBusinessClient(SdkClientConfiguration clientConfiguration) {
this.clientHandler = new AwsSyncClientHandler(clientConfiguration);
this.clientConfiguration = clientConfiguration;
this.protocolFactory = init(AwsJsonProtocolFactory.builder()).build();
}
@Override
public final String serviceName() {
return SERVICE_NAME;
}
/**
*
* Associates a skill with the organization under the customer's AWS account. If a skill is private, the user
* implicitly accepts access to this skill during enablement.
*
*
* @param approveSkillRequest
* @return Result of the ApproveSkill operation returned by the service.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ApproveSkill
* @see AWS
* API Documentation
*/
@Override
public ApproveSkillResponse approveSkill(ApproveSkillRequest approveSkillRequest) throws LimitExceededException,
NotFoundException, ConcurrentModificationException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ApproveSkillResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, approveSkillRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ApproveSkill");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("ApproveSkill").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(approveSkillRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ApproveSkillRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Associates a contact with a given address book.
*
*
* @param associateContactWithAddressBookRequest
* @return Result of the AssociateContactWithAddressBook operation returned by the service.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateContactWithAddressBook
* @see AWS API Documentation
*/
@Override
public AssociateContactWithAddressBookResponse associateContactWithAddressBook(
AssociateContactWithAddressBookRequest associateContactWithAddressBookRequest) throws LimitExceededException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateContactWithAddressBookResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
associateContactWithAddressBookRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateContactWithAddressBook");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateContactWithAddressBook").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateContactWithAddressBookRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateContactWithAddressBookRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Associates a device with the specified network profile.
*
*
* @param associateDeviceWithNetworkProfileRequest
* @return Result of the AssociateDeviceWithNetworkProfile operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws DeviceNotRegisteredException
* The request failed because this device is no longer registered and therefore no longer managed by this
* account.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateDeviceWithNetworkProfile
* @see AWS API Documentation
*/
@Override
public AssociateDeviceWithNetworkProfileResponse associateDeviceWithNetworkProfile(
AssociateDeviceWithNetworkProfileRequest associateDeviceWithNetworkProfileRequest) throws NotFoundException,
ConcurrentModificationException, DeviceNotRegisteredException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateDeviceWithNetworkProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
associateDeviceWithNetworkProfileRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateDeviceWithNetworkProfile");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateDeviceWithNetworkProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateDeviceWithNetworkProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateDeviceWithNetworkProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Associates a device with a given room. This applies all the settings from the room profile to the device, and all
* the skills in any skill groups added to that room. This operation requires the device to be online, or else a
* manual sync is required.
*
*
* @param associateDeviceWithRoomRequest
* @return Result of the AssociateDeviceWithRoom operation returned by the service.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws DeviceNotRegisteredException
* The request failed because this device is no longer registered and therefore no longer managed by this
* account.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateDeviceWithRoom
* @see AWS API Documentation
*/
@Override
public AssociateDeviceWithRoomResponse associateDeviceWithRoom(AssociateDeviceWithRoomRequest associateDeviceWithRoomRequest)
throws LimitExceededException, ConcurrentModificationException, DeviceNotRegisteredException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateDeviceWithRoomResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, associateDeviceWithRoomRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateDeviceWithRoom");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateDeviceWithRoom").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateDeviceWithRoomRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateDeviceWithRoomRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Associates a skill group with a given room. This enables all skills in the associated skill group on all devices
* in the room.
*
*
* @param associateSkillGroupWithRoomRequest
* @return Result of the AssociateSkillGroupWithRoom operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateSkillGroupWithRoom
* @see AWS API Documentation
*/
@Override
public AssociateSkillGroupWithRoomResponse associateSkillGroupWithRoom(
AssociateSkillGroupWithRoomRequest associateSkillGroupWithRoomRequest) throws ConcurrentModificationException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateSkillGroupWithRoomResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, associateSkillGroupWithRoomRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateSkillGroupWithRoom");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateSkillGroupWithRoom").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateSkillGroupWithRoomRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateSkillGroupWithRoomRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Associates a skill with a skill group.
*
*
* @param associateSkillWithSkillGroupRequest
* @return Result of the AssociateSkillWithSkillGroup operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws NotFoundException
* The resource is not found.
* @throws SkillNotLinkedException
* The skill must be linked to a third-party account.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateSkillWithSkillGroup
* @see AWS API Documentation
*/
@Override
public AssociateSkillWithSkillGroupResponse associateSkillWithSkillGroup(
AssociateSkillWithSkillGroupRequest associateSkillWithSkillGroupRequest) throws ConcurrentModificationException,
NotFoundException, SkillNotLinkedException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateSkillWithSkillGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, associateSkillWithSkillGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateSkillWithSkillGroup");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateSkillWithSkillGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateSkillWithSkillGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateSkillWithSkillGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Makes a private skill available for enrolled users to enable on their devices.
*
*
* @param associateSkillWithUsersRequest
* @return Result of the AssociateSkillWithUsers operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.AssociateSkillWithUsers
* @see AWS API Documentation
*/
@Override
public AssociateSkillWithUsersResponse associateSkillWithUsers(AssociateSkillWithUsersRequest associateSkillWithUsersRequest)
throws ConcurrentModificationException, NotFoundException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, AssociateSkillWithUsersResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, associateSkillWithUsersRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "AssociateSkillWithUsers");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("AssociateSkillWithUsers").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(associateSkillWithUsersRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new AssociateSkillWithUsersRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates an address book with the specified details.
*
*
* @param createAddressBookRequest
* @return Result of the CreateAddressBook operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateAddressBook
* @see AWS API Documentation
*/
@Override
public CreateAddressBookResponse createAddressBook(CreateAddressBookRequest createAddressBookRequest)
throws AlreadyExistsException, LimitExceededException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
CreateAddressBookResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createAddressBookRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateAddressBook");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateAddressBook").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createAddressBookRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateAddressBookRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a recurring schedule for usage reports to deliver to the specified S3 location with a specified daily or
* weekly interval.
*
*
* @param createBusinessReportScheduleRequest
* @return Result of the CreateBusinessReportSchedule operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateBusinessReportSchedule
* @see AWS API Documentation
*/
@Override
public CreateBusinessReportScheduleResponse createBusinessReportSchedule(
CreateBusinessReportScheduleRequest createBusinessReportScheduleRequest) throws AlreadyExistsException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, CreateBusinessReportScheduleResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createBusinessReportScheduleRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateBusinessReportSchedule");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("CreateBusinessReportSchedule").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createBusinessReportScheduleRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateBusinessReportScheduleRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Adds a new conference provider under the user's AWS account.
*
*
* @param createConferenceProviderRequest
* @return Result of the CreateConferenceProvider operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateConferenceProvider
* @see AWS API Documentation
*/
@Override
public CreateConferenceProviderResponse createConferenceProvider(
CreateConferenceProviderRequest createConferenceProviderRequest) throws AlreadyExistsException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, CreateConferenceProviderResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createConferenceProviderRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateConferenceProvider");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("CreateConferenceProvider").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createConferenceProviderRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateConferenceProviderRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a contact with the specified details.
*
*
* @param createContactRequest
* @return Result of the CreateContact operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateContact
* @see AWS API Documentation
*/
@Override
public CreateContactResponse createContact(CreateContactRequest createContactRequest) throws AlreadyExistsException,
LimitExceededException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
CreateContactResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createContactRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateContact");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateContact").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createContactRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateContactRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a gateway group with the specified details.
*
*
* @param createGatewayGroupRequest
* @return Result of the CreateGatewayGroup operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateGatewayGroup
* @see AWS API Documentation
*/
@Override
public CreateGatewayGroupResponse createGatewayGroup(CreateGatewayGroupRequest createGatewayGroupRequest)
throws AlreadyExistsException, LimitExceededException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, CreateGatewayGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createGatewayGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateGatewayGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateGatewayGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createGatewayGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateGatewayGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a network profile with the specified details.
*
*
* @param createNetworkProfileRequest
* @return Result of the CreateNetworkProfile operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws InvalidCertificateAuthorityException
* The Certificate Authority can't issue or revoke a certificate.
* @throws InvalidServiceLinkedRoleStateException
* The service linked role is locked for deletion.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateNetworkProfile
* @see AWS API Documentation
*/
@Override
public CreateNetworkProfileResponse createNetworkProfile(CreateNetworkProfileRequest createNetworkProfileRequest)
throws AlreadyExistsException, LimitExceededException, ConcurrentModificationException,
InvalidCertificateAuthorityException, InvalidServiceLinkedRoleStateException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, CreateNetworkProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createNetworkProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateNetworkProfile");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateNetworkProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createNetworkProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateNetworkProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a new room profile with the specified details.
*
*
* @param createProfileRequest
* @return Result of the CreateProfile operation returned by the service.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateProfile
* @see AWS API Documentation
*/
@Override
public CreateProfileResponse createProfile(CreateProfileRequest createProfileRequest) throws LimitExceededException,
AlreadyExistsException, ConcurrentModificationException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
CreateProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateProfile");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a room with the specified details.
*
*
* @param createRoomRequest
* @return Result of the CreateRoom operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateRoom
* @see AWS
* API Documentation
*/
@Override
public CreateRoomResponse createRoom(CreateRoomRequest createRoomRequest) throws AlreadyExistsException,
LimitExceededException, AwsServiceException, SdkClientException, AlexaForBusinessException {
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, "Alexa For Business");
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()));
}
}
/**
*
* Creates a skill group with a specified name and description.
*
*
* @param createSkillGroupRequest
* @return Result of the CreateSkillGroup operation returned by the service.
* @throws AlreadyExistsException
* The resource being created already exists.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateSkillGroup
* @see AWS API Documentation
*/
@Override
public CreateSkillGroupResponse createSkillGroup(CreateSkillGroupRequest createSkillGroupRequest)
throws AlreadyExistsException, LimitExceededException, ConcurrentModificationException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
CreateSkillGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, createSkillGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "CreateSkillGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("CreateSkillGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(createSkillGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new CreateSkillGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Creates a user.
*
*
* @param createUserRequest
* @return Result of the CreateUser operation returned by the service.
* @throws ResourceInUseException
* The resource in the request is already in use.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.CreateUser
* @see AWS
* API Documentation
*/
@Override
public CreateUserResponse createUser(CreateUserRequest createUserRequest) throws ResourceInUseException,
LimitExceededException, ConcurrentModificationException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
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, "Alexa For Business");
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()));
}
}
/**
*
* Deletes an address book by the address book ARN.
*
*
* @param deleteAddressBookRequest
* @return Result of the DeleteAddressBook operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteAddressBook
* @see AWS API Documentation
*/
@Override
public DeleteAddressBookResponse deleteAddressBook(DeleteAddressBookRequest deleteAddressBookRequest)
throws NotFoundException, ConcurrentModificationException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteAddressBookResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteAddressBookRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteAddressBook");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteAddressBook").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteAddressBookRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteAddressBookRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes the recurring report delivery schedule with the specified schedule ARN.
*
*
* @param deleteBusinessReportScheduleRequest
* @return Result of the DeleteBusinessReportSchedule operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteBusinessReportSchedule
* @see AWS API Documentation
*/
@Override
public DeleteBusinessReportScheduleResponse deleteBusinessReportSchedule(
DeleteBusinessReportScheduleRequest deleteBusinessReportScheduleRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteBusinessReportScheduleResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteBusinessReportScheduleRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteBusinessReportSchedule");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DeleteBusinessReportSchedule").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteBusinessReportScheduleRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteBusinessReportScheduleRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a conference provider.
*
*
* @param deleteConferenceProviderRequest
* @return Result of the DeleteConferenceProvider operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteConferenceProvider
* @see AWS API Documentation
*/
@Override
public DeleteConferenceProviderResponse deleteConferenceProvider(
DeleteConferenceProviderRequest deleteConferenceProviderRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteConferenceProviderResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteConferenceProviderRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteConferenceProvider");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DeleteConferenceProvider").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteConferenceProviderRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteConferenceProviderRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a contact by the contact ARN.
*
*
* @param deleteContactRequest
* @return Result of the DeleteContact operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteContact
* @see AWS API Documentation
*/
@Override
public DeleteContactResponse deleteContact(DeleteContactRequest deleteContactRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteContactResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteContactRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteContact");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteContact").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteContactRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteContactRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Removes a device from Alexa For Business.
*
*
* @param deleteDeviceRequest
* @return Result of the DeleteDevice operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws InvalidCertificateAuthorityException
* The Certificate Authority can't issue or revoke a certificate.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteDevice
* @see AWS
* API Documentation
*/
@Override
public DeleteDeviceResponse deleteDevice(DeleteDeviceRequest deleteDeviceRequest) throws NotFoundException,
ConcurrentModificationException, InvalidCertificateAuthorityException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteDeviceResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteDeviceRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteDevice");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteDevice").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteDeviceRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteDeviceRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* When this action is called for a specified shared device, it allows authorized users to delete the device's
* entire previous history of voice input data and associated response data. This action can be called once every 24
* hours for a specific shared device.
*
*
* @param deleteDeviceUsageDataRequest
* @return Result of the DeleteDeviceUsageData operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws DeviceNotRegisteredException
* The request failed because this device is no longer registered and therefore no longer managed by this
* account.
* @throws LimitExceededException
* You are performing an action that would put you beyond your account's limits.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteDeviceUsageData
* @see AWS API Documentation
*/
@Override
public DeleteDeviceUsageDataResponse deleteDeviceUsageData(DeleteDeviceUsageDataRequest deleteDeviceUsageDataRequest)
throws NotFoundException, DeviceNotRegisteredException, LimitExceededException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteDeviceUsageDataResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteDeviceUsageDataRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteDeviceUsageData");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteDeviceUsageData").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteDeviceUsageDataRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteDeviceUsageDataRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a gateway group.
*
*
* @param deleteGatewayGroupRequest
* @return Result of the DeleteGatewayGroup operation returned by the service.
* @throws ResourceAssociatedException
* Another resource is associated with the resource in the request.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteGatewayGroup
* @see AWS API Documentation
*/
@Override
public DeleteGatewayGroupResponse deleteGatewayGroup(DeleteGatewayGroupRequest deleteGatewayGroupRequest)
throws ResourceAssociatedException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteGatewayGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteGatewayGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteGatewayGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteGatewayGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteGatewayGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteGatewayGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a network profile by the network profile ARN.
*
*
* @param deleteNetworkProfileRequest
* @return Result of the DeleteNetworkProfile operation returned by the service.
* @throws ResourceInUseException
* The resource in the request is already in use.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteNetworkProfile
* @see AWS API Documentation
*/
@Override
public DeleteNetworkProfileResponse deleteNetworkProfile(DeleteNetworkProfileRequest deleteNetworkProfileRequest)
throws ResourceInUseException, ConcurrentModificationException, NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteNetworkProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteNetworkProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteNetworkProfile");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteNetworkProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteNetworkProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteNetworkProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a room profile by the profile ARN.
*
*
* @param deleteProfileRequest
* @return Result of the DeleteProfile operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteProfile
* @see AWS API Documentation
*/
@Override
public DeleteProfileResponse deleteProfile(DeleteProfileRequest deleteProfileRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteProfile");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a room by the room ARN.
*
*
* @param deleteRoomRequest
* @return Result of the DeleteRoom operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteRoom
* @see AWS
* API Documentation
*/
@Override
public DeleteRoomResponse deleteRoom(DeleteRoomRequest deleteRoomRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
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, "Alexa For Business");
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()));
}
}
/**
*
* Deletes room skill parameter details by room, skill, and parameter key ID.
*
*
* @param deleteRoomSkillParameterRequest
* @return Result of the DeleteRoomSkillParameter operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteRoomSkillParameter
* @see AWS API Documentation
*/
@Override
public DeleteRoomSkillParameterResponse deleteRoomSkillParameter(
DeleteRoomSkillParameterRequest deleteRoomSkillParameterRequest) throws ConcurrentModificationException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteRoomSkillParameterResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteRoomSkillParameterRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteRoomSkillParameter");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DeleteRoomSkillParameter").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteRoomSkillParameterRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteRoomSkillParameterRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Unlinks a third-party account from a skill.
*
*
* @param deleteSkillAuthorizationRequest
* @return Result of the DeleteSkillAuthorization operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteSkillAuthorization
* @see AWS API Documentation
*/
@Override
public DeleteSkillAuthorizationResponse deleteSkillAuthorization(
DeleteSkillAuthorizationRequest deleteSkillAuthorizationRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DeleteSkillAuthorizationResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteSkillAuthorizationRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteSkillAuthorization");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DeleteSkillAuthorization").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteSkillAuthorizationRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteSkillAuthorizationRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a skill group by skill group ARN.
*
*
* @param deleteSkillGroupRequest
* @return Result of the DeleteSkillGroup operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteSkillGroup
* @see AWS API Documentation
*/
@Override
public DeleteSkillGroupResponse deleteSkillGroup(DeleteSkillGroupRequest deleteSkillGroupRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteSkillGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteSkillGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteSkillGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("DeleteSkillGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(deleteSkillGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteSkillGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Deletes a specified user by user ARN and enrollment ARN.
*
*
* @param deleteUserRequest
* @return Result of the DeleteUser operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DeleteUser
* @see AWS
* API Documentation
*/
@Override
public DeleteUserResponse deleteUser(DeleteUserRequest deleteUserRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
DeleteUserResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, deleteUserRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DeleteUser");
return clientHandler
.execute(new ClientExecutionParams().withOperationName("DeleteUser")
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(deleteUserRequest).withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DeleteUserRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Disassociates a contact from a given address book.
*
*
* @param disassociateContactFromAddressBookRequest
* @return Result of the DisassociateContactFromAddressBook operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DisassociateContactFromAddressBook
* @see AWS API Documentation
*/
@Override
public DisassociateContactFromAddressBookResponse disassociateContactFromAddressBook(
DisassociateContactFromAddressBookRequest disassociateContactFromAddressBookRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DisassociateContactFromAddressBookResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
disassociateContactFromAddressBookRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateContactFromAddressBook");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DisassociateContactFromAddressBook").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(disassociateContactFromAddressBookRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DisassociateContactFromAddressBookRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Disassociates a device from its current room. The device continues to be connected to the Wi-Fi network and is
* still registered to the account. The device settings and skills are removed from the room.
*
*
* @param disassociateDeviceFromRoomRequest
* @return Result of the DisassociateDeviceFromRoom operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws DeviceNotRegisteredException
* The request failed because this device is no longer registered and therefore no longer managed by this
* account.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DisassociateDeviceFromRoom
* @see AWS API Documentation
*/
@Override
public DisassociateDeviceFromRoomResponse disassociateDeviceFromRoom(
DisassociateDeviceFromRoomRequest disassociateDeviceFromRoomRequest) throws ConcurrentModificationException,
DeviceNotRegisteredException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DisassociateDeviceFromRoomResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociateDeviceFromRoomRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateDeviceFromRoom");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DisassociateDeviceFromRoom").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(disassociateDeviceFromRoomRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DisassociateDeviceFromRoomRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Disassociates a skill from a skill group.
*
*
* @param disassociateSkillFromSkillGroupRequest
* @return Result of the DisassociateSkillFromSkillGroup operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DisassociateSkillFromSkillGroup
* @see AWS API Documentation
*/
@Override
public DisassociateSkillFromSkillGroupResponse disassociateSkillFromSkillGroup(
DisassociateSkillFromSkillGroupRequest disassociateSkillFromSkillGroupRequest)
throws ConcurrentModificationException, NotFoundException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DisassociateSkillFromSkillGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
disassociateSkillFromSkillGroupRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateSkillFromSkillGroup");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DisassociateSkillFromSkillGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(disassociateSkillFromSkillGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DisassociateSkillFromSkillGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Makes a private skill unavailable for enrolled users and prevents them from enabling it on their devices.
*
*
* @param disassociateSkillFromUsersRequest
* @return Result of the DisassociateSkillFromUsers operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DisassociateSkillFromUsers
* @see AWS API Documentation
*/
@Override
public DisassociateSkillFromUsersResponse disassociateSkillFromUsers(
DisassociateSkillFromUsersRequest disassociateSkillFromUsersRequest) throws ConcurrentModificationException,
NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DisassociateSkillFromUsersResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, disassociateSkillFromUsersRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateSkillFromUsers");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DisassociateSkillFromUsers").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(disassociateSkillFromUsersRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DisassociateSkillFromUsersRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Disassociates a skill group from a specified room. This disables all skills in the skill group on all devices in
* the room.
*
*
* @param disassociateSkillGroupFromRoomRequest
* @return Result of the DisassociateSkillGroupFromRoom operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.DisassociateSkillGroupFromRoom
* @see AWS API Documentation
*/
@Override
public DisassociateSkillGroupFromRoomResponse disassociateSkillGroupFromRoom(
DisassociateSkillGroupFromRoomRequest disassociateSkillGroupFromRoomRequest) throws ConcurrentModificationException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, DisassociateSkillGroupFromRoomResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
disassociateSkillGroupFromRoomRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "DisassociateSkillGroupFromRoom");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("DisassociateSkillGroupFromRoom").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(disassociateSkillGroupFromRoomRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new DisassociateSkillGroupFromRoomRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Forgets smart home appliances associated to a room.
*
*
* @param forgetSmartHomeAppliancesRequest
* @return Result of the ForgetSmartHomeAppliances operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ForgetSmartHomeAppliances
* @see AWS API Documentation
*/
@Override
public ForgetSmartHomeAppliancesResponse forgetSmartHomeAppliances(
ForgetSmartHomeAppliancesRequest forgetSmartHomeAppliancesRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ForgetSmartHomeAppliancesResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, forgetSmartHomeAppliancesRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ForgetSmartHomeAppliances");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ForgetSmartHomeAppliances").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(forgetSmartHomeAppliancesRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ForgetSmartHomeAppliancesRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets address the book details by the address book ARN.
*
*
* @param getAddressBookRequest
* @return Result of the GetAddressBook operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetAddressBook
* @see AWS API Documentation
*/
@Override
public GetAddressBookResponse getAddressBook(GetAddressBookRequest getAddressBookRequest) throws NotFoundException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetAddressBookResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getAddressBookRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetAddressBook");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetAddressBook").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getAddressBookRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetAddressBookRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves the existing conference preferences.
*
*
* @param getConferencePreferenceRequest
* @return Result of the GetConferencePreference operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetConferencePreference
* @see AWS API Documentation
*/
@Override
public GetConferencePreferenceResponse getConferencePreference(GetConferencePreferenceRequest getConferencePreferenceRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, GetConferencePreferenceResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getConferencePreferenceRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetConferencePreference");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("GetConferencePreference").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getConferencePreferenceRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetConferencePreferenceRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets details about a specific conference provider.
*
*
* @param getConferenceProviderRequest
* @return Result of the GetConferenceProvider operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetConferenceProvider
* @see AWS API Documentation
*/
@Override
public GetConferenceProviderResponse getConferenceProvider(GetConferenceProviderRequest getConferenceProviderRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, GetConferenceProviderResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getConferenceProviderRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetConferenceProvider");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetConferenceProvider").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getConferenceProviderRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetConferenceProviderRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets the contact details by the contact ARN.
*
*
* @param getContactRequest
* @return Result of the GetContact operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetContact
* @see AWS
* API Documentation
*/
@Override
public GetContactResponse getContact(GetContactRequest getContactRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetContactResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getContactRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetContact");
return clientHandler
.execute(new ClientExecutionParams().withOperationName("GetContact")
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(getContactRequest).withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetContactRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets the details of a device by device ARN.
*
*
* @param getDeviceRequest
* @return Result of the GetDevice operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetDevice
* @see AWS
* API Documentation
*/
@Override
public GetDeviceResponse getDevice(GetDeviceRequest getDeviceRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetDeviceResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getDeviceRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetDevice");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetDevice").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getDeviceRequest)
.withMetricCollector(apiCallMetricCollector).withMarshaller(new GetDeviceRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves the details of a gateway.
*
*
* @param getGatewayRequest
* @return Result of the GetGateway operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetGateway
* @see AWS
* API Documentation
*/
@Override
public GetGatewayResponse getGateway(GetGatewayRequest getGatewayRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetGatewayResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getGatewayRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetGateway");
return clientHandler
.execute(new ClientExecutionParams().withOperationName("GetGateway")
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(getGatewayRequest).withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetGatewayRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves the details of a gateway group.
*
*
* @param getGatewayGroupRequest
* @return Result of the GetGatewayGroup operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetGatewayGroup
* @see AWS API Documentation
*/
@Override
public GetGatewayGroupResponse getGatewayGroup(GetGatewayGroupRequest getGatewayGroupRequest) throws NotFoundException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetGatewayGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getGatewayGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetGatewayGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetGatewayGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getGatewayGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetGatewayGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves the configured values for the user enrollment invitation email template.
*
*
* @param getInvitationConfigurationRequest
* @return Result of the GetInvitationConfiguration operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetInvitationConfiguration
* @see AWS API Documentation
*/
@Override
public GetInvitationConfigurationResponse getInvitationConfiguration(
GetInvitationConfigurationRequest getInvitationConfigurationRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, GetInvitationConfigurationResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getInvitationConfigurationRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetInvitationConfiguration");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("GetInvitationConfiguration").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getInvitationConfigurationRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetInvitationConfigurationRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets the network profile details by the network profile ARN.
*
*
* @param getNetworkProfileRequest
* @return Result of the GetNetworkProfile operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws InvalidSecretsManagerResourceException
* A password in SecretsManager is in an invalid state.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetNetworkProfile
* @see AWS API Documentation
*/
@Override
public GetNetworkProfileResponse getNetworkProfile(GetNetworkProfileRequest getNetworkProfileRequest)
throws NotFoundException, InvalidSecretsManagerResourceException, AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetNetworkProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getNetworkProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetNetworkProfile");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetNetworkProfile").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getNetworkProfileRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetNetworkProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets the details of a room profile by profile ARN.
*
*
* @param getProfileRequest
* @return Result of the GetProfile operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetProfile
* @see AWS
* API Documentation
*/
@Override
public GetProfileResponse getProfile(GetProfileRequest getProfileRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetProfileResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getProfileRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetProfile");
return clientHandler
.execute(new ClientExecutionParams().withOperationName("GetProfile")
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(getProfileRequest).withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetProfileRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets room details by room ARN.
*
*
* @param getRoomRequest
* @return Result of the GetRoom operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetRoom
* @see AWS API
* Documentation
*/
@Override
public GetRoomResponse getRoom(GetRoomRequest getRoomRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
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, "Alexa For Business");
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()));
}
}
/**
*
* Gets room skill parameter details by room, skill, and parameter key ARN.
*
*
* @param getRoomSkillParameterRequest
* @return Result of the GetRoomSkillParameter operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetRoomSkillParameter
* @see AWS API Documentation
*/
@Override
public GetRoomSkillParameterResponse getRoomSkillParameter(GetRoomSkillParameterRequest getRoomSkillParameterRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, GetRoomSkillParameterResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getRoomSkillParameterRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetRoomSkillParameter");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetRoomSkillParameter").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getRoomSkillParameterRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetRoomSkillParameterRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Gets skill group details by skill group ARN.
*
*
* @param getSkillGroupRequest
* @return Result of the GetSkillGroup operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.GetSkillGroup
* @see AWS API Documentation
*/
@Override
public GetSkillGroupResponse getSkillGroup(GetSkillGroupRequest getSkillGroupRequest) throws NotFoundException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
GetSkillGroupResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, getSkillGroupRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "GetSkillGroup");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("GetSkillGroup").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(getSkillGroupRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new GetSkillGroupRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists the details of the schedules that a user configured. A download URL of the report associated with each
* schedule is returned every time this action is called. A new download URL is returned each time, and is valid for
* 24 hours.
*
*
* @param listBusinessReportSchedulesRequest
* @return Result of the ListBusinessReportSchedules operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListBusinessReportSchedules
* @see AWS API Documentation
*/
@Override
public ListBusinessReportSchedulesResponse listBusinessReportSchedules(
ListBusinessReportSchedulesRequest listBusinessReportSchedulesRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ListBusinessReportSchedulesResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listBusinessReportSchedulesRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListBusinessReportSchedules");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ListBusinessReportSchedules").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listBusinessReportSchedulesRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListBusinessReportSchedulesRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists the details of the schedules that a user configured. A download URL of the report associated with each
* schedule is returned every time this action is called. A new download URL is returned each time, and is valid for
* 24 hours.
*
*
*
* This is a variant of
* {@link #listBusinessReportSchedules(software.amazon.awssdk.services.alexaforbusiness.model.ListBusinessReportSchedulesRequest)}
* 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.alexaforbusiness.paginators.ListBusinessReportSchedulesIterable responses = client.listBusinessReportSchedulesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListBusinessReportSchedulesIterable responses = client
* .listBusinessReportSchedulesPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListBusinessReportSchedulesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListBusinessReportSchedulesIterable responses = client.listBusinessReportSchedulesPaginator(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 #listBusinessReportSchedules(software.amazon.awssdk.services.alexaforbusiness.model.ListBusinessReportSchedulesRequest)}
* operation.
*
*
* @param listBusinessReportSchedulesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListBusinessReportSchedules
* @see AWS API Documentation
*/
@Override
public ListBusinessReportSchedulesIterable listBusinessReportSchedulesPaginator(
ListBusinessReportSchedulesRequest listBusinessReportSchedulesRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListBusinessReportSchedulesIterable(this, applyPaginatorUserAgent(listBusinessReportSchedulesRequest));
}
/**
*
* Lists conference providers under a specific AWS account.
*
*
* @param listConferenceProvidersRequest
* @return Result of the ListConferenceProviders operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListConferenceProviders
* @see AWS API Documentation
*/
@Override
public ListConferenceProvidersResponse listConferenceProviders(ListConferenceProvidersRequest listConferenceProvidersRequest)
throws AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ListConferenceProvidersResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listConferenceProvidersRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListConferenceProviders");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ListConferenceProviders").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listConferenceProvidersRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListConferenceProvidersRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists conference providers under a specific AWS account.
*
*
*
* This is a variant of
* {@link #listConferenceProviders(software.amazon.awssdk.services.alexaforbusiness.model.ListConferenceProvidersRequest)}
* 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.alexaforbusiness.paginators.ListConferenceProvidersIterable responses = client.listConferenceProvidersPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListConferenceProvidersIterable responses = client
* .listConferenceProvidersPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListConferenceProvidersResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListConferenceProvidersIterable responses = client.listConferenceProvidersPaginator(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 #listConferenceProviders(software.amazon.awssdk.services.alexaforbusiness.model.ListConferenceProvidersRequest)}
* operation.
*
*
* @param listConferenceProvidersRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListConferenceProviders
* @see AWS API Documentation
*/
@Override
public ListConferenceProvidersIterable listConferenceProvidersPaginator(
ListConferenceProvidersRequest listConferenceProvidersRequest) throws AwsServiceException, SdkClientException,
AlexaForBusinessException {
return new ListConferenceProvidersIterable(this, applyPaginatorUserAgent(listConferenceProvidersRequest));
}
/**
*
* Lists the device event history, including device connection status, for up to 30 days.
*
*
* @param listDeviceEventsRequest
* @return Result of the ListDeviceEvents operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListDeviceEvents
* @see AWS API Documentation
*/
@Override
public ListDeviceEventsResponse listDeviceEvents(ListDeviceEventsRequest listDeviceEventsRequest) throws NotFoundException,
AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ListDeviceEventsResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listDeviceEventsRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListDeviceEvents");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("ListDeviceEvents").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listDeviceEventsRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListDeviceEventsRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists the device event history, including device connection status, for up to 30 days.
*
*
*
* This is a variant of
* {@link #listDeviceEvents(software.amazon.awssdk.services.alexaforbusiness.model.ListDeviceEventsRequest)}
* 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.alexaforbusiness.paginators.ListDeviceEventsIterable responses = client.listDeviceEventsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListDeviceEventsIterable responses = client
* .listDeviceEventsPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListDeviceEventsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListDeviceEventsIterable responses = client.listDeviceEventsPaginator(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 #listDeviceEvents(software.amazon.awssdk.services.alexaforbusiness.model.ListDeviceEventsRequest)}
* operation.
*
*
* @param listDeviceEventsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListDeviceEvents
* @see AWS API Documentation
*/
@Override
public ListDeviceEventsIterable listDeviceEventsPaginator(ListDeviceEventsRequest listDeviceEventsRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
return new ListDeviceEventsIterable(this, applyPaginatorUserAgent(listDeviceEventsRequest));
}
/**
*
* Retrieves a list of gateway group summaries. Use GetGatewayGroup to retrieve details of a specific gateway group.
*
*
* @param listGatewayGroupsRequest
* @return Result of the ListGatewayGroups operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListGatewayGroups
* @see AWS API Documentation
*/
@Override
public ListGatewayGroupsResponse listGatewayGroups(ListGatewayGroupsRequest listGatewayGroupsRequest)
throws AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ListGatewayGroupsResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listGatewayGroupsRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListGatewayGroups");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("ListGatewayGroups").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listGatewayGroupsRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListGatewayGroupsRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves a list of gateway group summaries. Use GetGatewayGroup to retrieve details of a specific gateway group.
*
*
*
* This is a variant of
* {@link #listGatewayGroups(software.amazon.awssdk.services.alexaforbusiness.model.ListGatewayGroupsRequest)}
* 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.alexaforbusiness.paginators.ListGatewayGroupsIterable responses = client.listGatewayGroupsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewayGroupsIterable responses = client
* .listGatewayGroupsPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListGatewayGroupsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewayGroupsIterable responses = client.listGatewayGroupsPaginator(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 #listGatewayGroups(software.amazon.awssdk.services.alexaforbusiness.model.ListGatewayGroupsRequest)}
* operation.
*
*
* @param listGatewayGroupsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListGatewayGroups
* @see AWS API Documentation
*/
@Override
public ListGatewayGroupsIterable listGatewayGroupsPaginator(ListGatewayGroupsRequest listGatewayGroupsRequest)
throws AwsServiceException, SdkClientException, AlexaForBusinessException {
return new ListGatewayGroupsIterable(this, applyPaginatorUserAgent(listGatewayGroupsRequest));
}
/**
*
* Retrieves a list of gateway summaries. Use GetGateway to retrieve details of a specific gateway. An optional
* gateway group ARN can be provided to only retrieve gateway summaries of gateways that are associated with that
* gateway group ARN.
*
*
* @param listGatewaysRequest
* @return Result of the ListGateways operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListGateways
* @see AWS
* API Documentation
*/
@Override
public ListGatewaysResponse listGateways(ListGatewaysRequest listGatewaysRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ListGatewaysResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listGatewaysRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListGateways");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("ListGateways").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listGatewaysRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListGatewaysRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Retrieves a list of gateway summaries. Use GetGateway to retrieve details of a specific gateway. An optional
* gateway group ARN can be provided to only retrieve gateway summaries of gateways that are associated with that
* gateway group ARN.
*
*
*
* This is a variant of
* {@link #listGateways(software.amazon.awssdk.services.alexaforbusiness.model.ListGatewaysRequest)} 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.alexaforbusiness.paginators.ListGatewaysIterable responses = client.listGatewaysPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewaysIterable responses = client
* .listGatewaysPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListGatewaysResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListGatewaysIterable responses = client.listGatewaysPaginator(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 #listGateways(software.amazon.awssdk.services.alexaforbusiness.model.ListGatewaysRequest)} operation.
*
*
* @param listGatewaysRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListGateways
* @see AWS
* API Documentation
*/
@Override
public ListGatewaysIterable listGatewaysPaginator(ListGatewaysRequest listGatewaysRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListGatewaysIterable(this, applyPaginatorUserAgent(listGatewaysRequest));
}
/**
*
* Lists all enabled skills in a specific skill group.
*
*
* @param listSkillsRequest
* @return Result of the ListSkills operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkills
* @see AWS
* API Documentation
*/
@Override
public ListSkillsResponse listSkills(ListSkillsRequest listSkillsRequest) throws AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ListSkillsResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listSkillsRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSkills");
return clientHandler
.execute(new ClientExecutionParams().withOperationName("ListSkills")
.withResponseHandler(responseHandler).withErrorResponseHandler(errorResponseHandler)
.withInput(listSkillsRequest).withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListSkillsRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists all enabled skills in a specific skill group.
*
*
*
* This is a variant of
* {@link #listSkills(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsRequest)} 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.alexaforbusiness.paginators.ListSkillsIterable responses = client.listSkillsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsIterable responses = client
* .listSkillsPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsIterable responses = client.listSkillsPaginator(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 #listSkills(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsRequest)} operation.
*
*
* @param listSkillsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkills
* @see AWS
* API Documentation
*/
@Override
public ListSkillsIterable listSkillsPaginator(ListSkillsRequest listSkillsRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListSkillsIterable(this, applyPaginatorUserAgent(listSkillsRequest));
}
/**
*
* Lists all categories in the Alexa skill store.
*
*
* @param listSkillsStoreCategoriesRequest
* @return Result of the ListSkillsStoreCategories operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkillsStoreCategories
* @see AWS API Documentation
*/
@Override
public ListSkillsStoreCategoriesResponse listSkillsStoreCategories(
ListSkillsStoreCategoriesRequest listSkillsStoreCategoriesRequest) throws AwsServiceException, SdkClientException,
AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ListSkillsStoreCategoriesResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listSkillsStoreCategoriesRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSkillsStoreCategories");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ListSkillsStoreCategories").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listSkillsStoreCategoriesRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListSkillsStoreCategoriesRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists all categories in the Alexa skill store.
*
*
*
* This is a variant of
* {@link #listSkillsStoreCategories(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreCategoriesRequest)}
* 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.alexaforbusiness.paginators.ListSkillsStoreCategoriesIterable responses = client.listSkillsStoreCategoriesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreCategoriesIterable responses = client
* .listSkillsStoreCategoriesPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreCategoriesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreCategoriesIterable responses = client.listSkillsStoreCategoriesPaginator(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 #listSkillsStoreCategories(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreCategoriesRequest)}
* operation.
*
*
* @param listSkillsStoreCategoriesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkillsStoreCategories
* @see AWS API Documentation
*/
@Override
public ListSkillsStoreCategoriesIterable listSkillsStoreCategoriesPaginator(
ListSkillsStoreCategoriesRequest listSkillsStoreCategoriesRequest) throws AwsServiceException, SdkClientException,
AlexaForBusinessException {
return new ListSkillsStoreCategoriesIterable(this, applyPaginatorUserAgent(listSkillsStoreCategoriesRequest));
}
/**
*
* Lists all skills in the Alexa skill store by category.
*
*
* @param listSkillsStoreSkillsByCategoryRequest
* @return Result of the ListSkillsStoreSkillsByCategory operation returned by the service.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkillsStoreSkillsByCategory
* @see AWS API Documentation
*/
@Override
public ListSkillsStoreSkillsByCategoryResponse listSkillsStoreSkillsByCategory(
ListSkillsStoreSkillsByCategoryRequest listSkillsStoreSkillsByCategoryRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ListSkillsStoreSkillsByCategoryResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration,
listSkillsStoreSkillsByCategoryRequest.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSkillsStoreSkillsByCategory");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ListSkillsStoreSkillsByCategory").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listSkillsStoreSkillsByCategoryRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListSkillsStoreSkillsByCategoryRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists all skills in the Alexa skill store by category.
*
*
*
* This is a variant of
* {@link #listSkillsStoreSkillsByCategory(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreSkillsByCategoryRequest)}
* 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.alexaforbusiness.paginators.ListSkillsStoreSkillsByCategoryIterable responses = client.listSkillsStoreSkillsByCategoryPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreSkillsByCategoryIterable responses = client
* .listSkillsStoreSkillsByCategoryPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreSkillsByCategoryResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSkillsStoreSkillsByCategoryIterable responses = client.listSkillsStoreSkillsByCategoryPaginator(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 #listSkillsStoreSkillsByCategory(software.amazon.awssdk.services.alexaforbusiness.model.ListSkillsStoreSkillsByCategoryRequest)}
* operation.
*
*
* @param listSkillsStoreSkillsByCategoryRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSkillsStoreSkillsByCategory
* @see AWS API Documentation
*/
@Override
public ListSkillsStoreSkillsByCategoryIterable listSkillsStoreSkillsByCategoryPaginator(
ListSkillsStoreSkillsByCategoryRequest listSkillsStoreSkillsByCategoryRequest) throws AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListSkillsStoreSkillsByCategoryIterable(this, applyPaginatorUserAgent(listSkillsStoreSkillsByCategoryRequest));
}
/**
*
* Lists all of the smart home appliances associated with a room.
*
*
* @param listSmartHomeAppliancesRequest
* @return Result of the ListSmartHomeAppliances operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSmartHomeAppliances
* @see AWS API Documentation
*/
@Override
public ListSmartHomeAppliancesResponse listSmartHomeAppliances(ListSmartHomeAppliancesRequest listSmartHomeAppliancesRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, ListSmartHomeAppliancesResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listSmartHomeAppliancesRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListSmartHomeAppliances");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("ListSmartHomeAppliances").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listSmartHomeAppliancesRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new ListSmartHomeAppliancesRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists all of the smart home appliances associated with a room.
*
*
*
* This is a variant of
* {@link #listSmartHomeAppliances(software.amazon.awssdk.services.alexaforbusiness.model.ListSmartHomeAppliancesRequest)}
* 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.alexaforbusiness.paginators.ListSmartHomeAppliancesIterable responses = client.listSmartHomeAppliancesPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSmartHomeAppliancesIterable responses = client
* .listSmartHomeAppliancesPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListSmartHomeAppliancesResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListSmartHomeAppliancesIterable responses = client.listSmartHomeAppliancesPaginator(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 #listSmartHomeAppliances(software.amazon.awssdk.services.alexaforbusiness.model.ListSmartHomeAppliancesRequest)}
* operation.
*
*
* @param listSmartHomeAppliancesRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListSmartHomeAppliances
* @see AWS API Documentation
*/
@Override
public ListSmartHomeAppliancesIterable listSmartHomeAppliancesPaginator(
ListSmartHomeAppliancesRequest listSmartHomeAppliancesRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListSmartHomeAppliancesIterable(this, applyPaginatorUserAgent(listSmartHomeAppliancesRequest));
}
/**
*
* Lists all tags for the specified resource.
*
*
* @param listTagsRequest
* @return Result of the ListTags operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListTags
* @see AWS API
* Documentation
*/
@Override
public ListTagsResponse listTags(ListTagsRequest listTagsRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(operationMetadata,
ListTagsResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, listTagsRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "ListTags");
return clientHandler.execute(new ClientExecutionParams()
.withOperationName("ListTags").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(listTagsRequest)
.withMetricCollector(apiCallMetricCollector).withMarshaller(new ListTagsRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Lists all tags for the specified resource.
*
*
*
* This is a variant of {@link #listTags(software.amazon.awssdk.services.alexaforbusiness.model.ListTagsRequest)}
* 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.alexaforbusiness.paginators.ListTagsIterable responses = client.listTagsPaginator(request);
* responses.stream().forEach(....);
* }
*
*
* 2) Using For loop
*
*
* {
* @code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListTagsIterable responses = client.listTagsPaginator(request);
* for (software.amazon.awssdk.services.alexaforbusiness.model.ListTagsResponse response : responses) {
* // do something;
* }
* }
*
*
* 3) Use iterator directly
*
*
* {@code
* software.amazon.awssdk.services.alexaforbusiness.paginators.ListTagsIterable responses = client.listTagsPaginator(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 #listTags(software.amazon.awssdk.services.alexaforbusiness.model.ListTagsRequest)} operation.
*
*
* @param listTagsRequest
* @return A custom iterable that can be used to iterate through all the response pages.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.ListTags
* @see AWS API
* Documentation
*/
@Override
public ListTagsIterable listTagsPaginator(ListTagsRequest listTagsRequest) throws NotFoundException, AwsServiceException,
SdkClientException, AlexaForBusinessException {
return new ListTagsIterable(this, applyPaginatorUserAgent(listTagsRequest));
}
/**
*
* Sets the conference preferences on a specific conference provider at the account level.
*
*
* @param putConferencePreferenceRequest
* @return Result of the PutConferencePreference operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.PutConferencePreference
* @see AWS API Documentation
*/
@Override
public PutConferencePreferenceResponse putConferencePreference(PutConferencePreferenceRequest putConferencePreferenceRequest)
throws NotFoundException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, PutConferencePreferenceResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, putConferencePreferenceRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutConferencePreference");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("PutConferencePreference").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(putConferencePreferenceRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new PutConferencePreferenceRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Configures the email template for the user enrollment invitation with the specified attributes.
*
*
* @param putInvitationConfigurationRequest
* @return Result of the PutInvitationConfiguration operation returned by the service.
* @throws NotFoundException
* The resource is not found.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.PutInvitationConfiguration
* @see AWS API Documentation
*/
@Override
public PutInvitationConfigurationResponse putInvitationConfiguration(
PutInvitationConfigurationRequest putInvitationConfigurationRequest) throws NotFoundException,
ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, PutInvitationConfigurationResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List metricPublishers = resolveMetricPublishers(clientConfiguration, putInvitationConfigurationRequest
.overrideConfiguration().orElse(null));
MetricCollector apiCallMetricCollector = metricPublishers.isEmpty() ? NoOpMetricCollector.create() : MetricCollector
.create("ApiCall");
try {
apiCallMetricCollector.reportMetric(CoreMetric.SERVICE_ID, "Alexa For Business");
apiCallMetricCollector.reportMetric(CoreMetric.OPERATION_NAME, "PutInvitationConfiguration");
return clientHandler
.execute(new ClientExecutionParams()
.withOperationName("PutInvitationConfiguration").withResponseHandler(responseHandler)
.withErrorResponseHandler(errorResponseHandler).withInput(putInvitationConfigurationRequest)
.withMetricCollector(apiCallMetricCollector)
.withMarshaller(new PutInvitationConfigurationRequestMarshaller(protocolFactory)));
} finally {
metricPublishers.forEach(p -> p.publish(apiCallMetricCollector.collect()));
}
}
/**
*
* Updates room skill parameter details by room, skill, and parameter key ID. Not all skills have a room skill
* parameter.
*
*
* @param putRoomSkillParameterRequest
* @return Result of the PutRoomSkillParameter operation returned by the service.
* @throws ConcurrentModificationException
* There is a concurrent modification of resources.
* @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 AlexaForBusinessException
* Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
* @sample AlexaForBusinessClient.PutRoomSkillParameter
* @see AWS API Documentation
*/
@Override
public PutRoomSkillParameterResponse putRoomSkillParameter(PutRoomSkillParameterRequest putRoomSkillParameterRequest)
throws ConcurrentModificationException, AwsServiceException, SdkClientException, AlexaForBusinessException {
JsonOperationMetadata operationMetadata = JsonOperationMetadata.builder().hasStreamingSuccessResponse(false)
.isPayloadJson(true).build();
HttpResponseHandler responseHandler = protocolFactory.createResponseHandler(
operationMetadata, PutRoomSkillParameterResponse::builder);
HttpResponseHandler errorResponseHandler = createErrorResponseHandler(protocolFactory,
operationMetadata);
List