# frozen_string_literal: true
# WARNING ABOUT GENERATED CODE
#
# This file is generated. See the contributing guide for more information:
# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
#
# WARNING ABOUT GENERATED CODE
module Aws::Connect
# When Connect returns an error response, the Ruby SDK constructs and raises an error.
# These errors all extend Aws::Connect::Errors::ServiceError < {Aws::Errors::ServiceError}
#
# You can rescue all Connect errors using ServiceError:
#
# begin
# # do stuff
# rescue Aws::Connect::Errors::ServiceError
# # rescues all Connect API errors
# end
#
#
# ## Request Context
# ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
# information about the request that generated the error.
# See {Seahorse::Client::RequestContext} for more information.
#
# ## Error Classes
# * {AccessDeniedException}
# * {ContactFlowNotPublishedException}
# * {ContactNotFoundException}
# * {DestinationNotAllowedException}
# * {DuplicateResourceException}
# * {IdempotencyException}
# * {InternalServiceException}
# * {InvalidContactFlowException}
# * {InvalidContactFlowModuleException}
# * {InvalidParameterException}
# * {InvalidRequestException}
# * {LimitExceededException}
# * {MaximumResultReturnedException}
# * {OutboundContactNotPermittedException}
# * {PropertyValidationException}
# * {ResourceConflictException}
# * {ResourceInUseException}
# * {ResourceNotFoundException}
# * {ResourceNotReadyException}
# * {ServiceQuotaExceededException}
# * {ThrottlingException}
# * {TooManyRequestsException}
# * {UserNotFoundException}
#
# Additionally, error classes are dynamically generated for service errors based on the error code
# if they are not defined above.
module Errors
extend Aws::Errors::DynamicErrors
class AccessDeniedException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::AccessDeniedException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ContactFlowNotPublishedException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ContactFlowNotPublishedException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ContactNotFoundException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ContactNotFoundException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class DestinationNotAllowedException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::DestinationNotAllowedException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class DuplicateResourceException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::DuplicateResourceException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class IdempotencyException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::IdempotencyException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class InternalServiceException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::InternalServiceException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class InvalidContactFlowException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::InvalidContactFlowException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def problems
@data[:problems]
end
end
class InvalidContactFlowModuleException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::InvalidContactFlowModuleException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def problems
@data[:problems]
end
end
class InvalidParameterException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::InvalidParameterException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class InvalidRequestException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::InvalidRequestException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class LimitExceededException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::LimitExceededException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class MaximumResultReturnedException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::MaximumResultReturnedException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class OutboundContactNotPermittedException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::OutboundContactNotPermittedException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class PropertyValidationException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::PropertyValidationException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
# @return [String]
def property_list
@data[:property_list]
end
end
class ResourceConflictException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ResourceConflictException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ResourceInUseException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ResourceInUseException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
# @return [String]
def resource_type
@data[:resource_type]
end
# @return [String]
def resource_id
@data[:resource_id]
end
end
class ResourceNotFoundException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ResourceNotFoundException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ResourceNotReadyException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ResourceNotReadyException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ServiceQuotaExceededException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ServiceQuotaExceededException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class ThrottlingException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::ThrottlingException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class TooManyRequestsException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::TooManyRequestsException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
class UserNotFoundException < ServiceError
# @param [Seahorse::Client::RequestContext] context
# @param [String] message
# @param [Aws::Connect::Types::UserNotFoundException] data
def initialize(context, message, data = Aws::EmptyStructure.new)
super(context, message, data)
end
# @return [String]
def message
@message || @data[:message]
end
end
end
end