{-# LANGUAGE DisambiguateRecordFields #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.ManagedBlockChain.Types -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) module Amazonka.ManagedBlockChain.Types ( -- * Service Configuration defaultService, -- * Errors _AccessDeniedException, _IllegalActionException, _InternalServiceErrorException, _InvalidRequestException, _ResourceAlreadyExistsException, _ResourceLimitExceededException, _ResourceNotFoundException, _ResourceNotReadyException, _ThrottlingException, _TooManyTagsException, -- * AccessorStatus AccessorStatus (..), -- * AccessorType AccessorType (..), -- * Edition Edition (..), -- * Framework Framework (..), -- * InvitationStatus InvitationStatus (..), -- * MemberStatus MemberStatus (..), -- * NetworkStatus NetworkStatus (..), -- * NodeStatus NodeStatus (..), -- * ProposalStatus ProposalStatus (..), -- * StateDBType StateDBType (..), -- * ThresholdComparator ThresholdComparator (..), -- * VoteValue VoteValue (..), -- * Accessor Accessor (..), newAccessor, accessor_arn, accessor_billingToken, accessor_creationDate, accessor_id, accessor_status, accessor_type, -- * AccessorSummary AccessorSummary (..), newAccessorSummary, accessorSummary_arn, accessorSummary_creationDate, accessorSummary_id, accessorSummary_status, accessorSummary_type, -- * ApprovalThresholdPolicy ApprovalThresholdPolicy (..), newApprovalThresholdPolicy, approvalThresholdPolicy_proposalDurationInHours, approvalThresholdPolicy_thresholdComparator, approvalThresholdPolicy_thresholdPercentage, -- * Invitation Invitation (..), newInvitation, invitation_arn, invitation_creationDate, invitation_expirationDate, invitation_invitationId, invitation_networkSummary, invitation_status, -- * InviteAction InviteAction (..), newInviteAction, inviteAction_principal, -- * LogConfiguration LogConfiguration (..), newLogConfiguration, logConfiguration_enabled, -- * LogConfigurations LogConfigurations (..), newLogConfigurations, logConfigurations_cloudwatch, -- * Member Member (..), newMember, member_arn, member_creationDate, member_description, member_frameworkAttributes, member_id, member_kmsKeyArn, member_logPublishingConfiguration, member_name, member_networkId, member_status, member_tags, -- * MemberConfiguration MemberConfiguration (..), newMemberConfiguration, memberConfiguration_description, memberConfiguration_kmsKeyArn, memberConfiguration_logPublishingConfiguration, memberConfiguration_tags, memberConfiguration_name, memberConfiguration_frameworkConfiguration, -- * MemberFabricAttributes MemberFabricAttributes (..), newMemberFabricAttributes, memberFabricAttributes_adminUsername, memberFabricAttributes_caEndpoint, -- * MemberFabricConfiguration MemberFabricConfiguration (..), newMemberFabricConfiguration, memberFabricConfiguration_adminUsername, memberFabricConfiguration_adminPassword, -- * MemberFabricLogPublishingConfiguration MemberFabricLogPublishingConfiguration (..), newMemberFabricLogPublishingConfiguration, memberFabricLogPublishingConfiguration_caLogs, -- * MemberFrameworkAttributes MemberFrameworkAttributes (..), newMemberFrameworkAttributes, memberFrameworkAttributes_fabric, -- * MemberFrameworkConfiguration MemberFrameworkConfiguration (..), newMemberFrameworkConfiguration, memberFrameworkConfiguration_fabric, -- * MemberLogPublishingConfiguration MemberLogPublishingConfiguration (..), newMemberLogPublishingConfiguration, memberLogPublishingConfiguration_fabric, -- * MemberSummary MemberSummary (..), newMemberSummary, memberSummary_arn, memberSummary_creationDate, memberSummary_description, memberSummary_id, memberSummary_isOwned, memberSummary_name, memberSummary_status, -- * Network Network (..), newNetwork, network_arn, network_creationDate, network_description, network_framework, network_frameworkAttributes, network_frameworkVersion, network_id, network_name, network_status, network_tags, network_votingPolicy, network_vpcEndpointServiceName, -- * NetworkEthereumAttributes NetworkEthereumAttributes (..), newNetworkEthereumAttributes, networkEthereumAttributes_chainId, -- * NetworkFabricAttributes NetworkFabricAttributes (..), newNetworkFabricAttributes, networkFabricAttributes_edition, networkFabricAttributes_orderingServiceEndpoint, -- * NetworkFabricConfiguration NetworkFabricConfiguration (..), newNetworkFabricConfiguration, networkFabricConfiguration_edition, -- * NetworkFrameworkAttributes NetworkFrameworkAttributes (..), newNetworkFrameworkAttributes, networkFrameworkAttributes_ethereum, networkFrameworkAttributes_fabric, -- * NetworkFrameworkConfiguration NetworkFrameworkConfiguration (..), newNetworkFrameworkConfiguration, networkFrameworkConfiguration_fabric, -- * NetworkSummary NetworkSummary (..), newNetworkSummary, networkSummary_arn, networkSummary_creationDate, networkSummary_description, networkSummary_framework, networkSummary_frameworkVersion, networkSummary_id, networkSummary_name, networkSummary_status, -- * Node Node (..), newNode, node_arn, node_availabilityZone, node_creationDate, node_frameworkAttributes, node_id, node_instanceType, node_kmsKeyArn, node_logPublishingConfiguration, node_memberId, node_networkId, node_stateDB, node_status, node_tags, -- * NodeConfiguration NodeConfiguration (..), newNodeConfiguration, nodeConfiguration_availabilityZone, nodeConfiguration_logPublishingConfiguration, nodeConfiguration_stateDB, nodeConfiguration_instanceType, -- * NodeEthereumAttributes NodeEthereumAttributes (..), newNodeEthereumAttributes, nodeEthereumAttributes_httpEndpoint, nodeEthereumAttributes_webSocketEndpoint, -- * NodeFabricAttributes NodeFabricAttributes (..), newNodeFabricAttributes, nodeFabricAttributes_peerEndpoint, nodeFabricAttributes_peerEventEndpoint, -- * NodeFabricLogPublishingConfiguration NodeFabricLogPublishingConfiguration (..), newNodeFabricLogPublishingConfiguration, nodeFabricLogPublishingConfiguration_chaincodeLogs, nodeFabricLogPublishingConfiguration_peerLogs, -- * NodeFrameworkAttributes NodeFrameworkAttributes (..), newNodeFrameworkAttributes, nodeFrameworkAttributes_ethereum, nodeFrameworkAttributes_fabric, -- * NodeLogPublishingConfiguration NodeLogPublishingConfiguration (..), newNodeLogPublishingConfiguration, nodeLogPublishingConfiguration_fabric, -- * NodeSummary NodeSummary (..), newNodeSummary, nodeSummary_arn, nodeSummary_availabilityZone, nodeSummary_creationDate, nodeSummary_id, nodeSummary_instanceType, nodeSummary_status, -- * Proposal Proposal (..), newProposal, proposal_actions, proposal_arn, proposal_creationDate, proposal_description, proposal_expirationDate, proposal_networkId, proposal_noVoteCount, proposal_outstandingVoteCount, proposal_proposalId, proposal_proposedByMemberId, proposal_proposedByMemberName, proposal_status, proposal_tags, proposal_yesVoteCount, -- * ProposalActions ProposalActions (..), newProposalActions, proposalActions_invitations, proposalActions_removals, -- * ProposalSummary ProposalSummary (..), newProposalSummary, proposalSummary_arn, proposalSummary_creationDate, proposalSummary_description, proposalSummary_expirationDate, proposalSummary_proposalId, proposalSummary_proposedByMemberId, proposalSummary_proposedByMemberName, proposalSummary_status, -- * RemoveAction RemoveAction (..), newRemoveAction, removeAction_memberId, -- * VoteSummary VoteSummary (..), newVoteSummary, voteSummary_memberId, voteSummary_memberName, voteSummary_vote, -- * VotingPolicy VotingPolicy (..), newVotingPolicy, votingPolicy_approvalThresholdPolicy, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import Amazonka.ManagedBlockChain.Types.Accessor import Amazonka.ManagedBlockChain.Types.AccessorStatus import Amazonka.ManagedBlockChain.Types.AccessorSummary import Amazonka.ManagedBlockChain.Types.AccessorType import Amazonka.ManagedBlockChain.Types.ApprovalThresholdPolicy import Amazonka.ManagedBlockChain.Types.Edition import Amazonka.ManagedBlockChain.Types.Framework import Amazonka.ManagedBlockChain.Types.Invitation import Amazonka.ManagedBlockChain.Types.InvitationStatus import Amazonka.ManagedBlockChain.Types.InviteAction import Amazonka.ManagedBlockChain.Types.LogConfiguration import Amazonka.ManagedBlockChain.Types.LogConfigurations import Amazonka.ManagedBlockChain.Types.Member import Amazonka.ManagedBlockChain.Types.MemberConfiguration import Amazonka.ManagedBlockChain.Types.MemberFabricAttributes import Amazonka.ManagedBlockChain.Types.MemberFabricConfiguration import Amazonka.ManagedBlockChain.Types.MemberFabricLogPublishingConfiguration import Amazonka.ManagedBlockChain.Types.MemberFrameworkAttributes import Amazonka.ManagedBlockChain.Types.MemberFrameworkConfiguration import Amazonka.ManagedBlockChain.Types.MemberLogPublishingConfiguration import Amazonka.ManagedBlockChain.Types.MemberStatus import Amazonka.ManagedBlockChain.Types.MemberSummary import Amazonka.ManagedBlockChain.Types.Network import Amazonka.ManagedBlockChain.Types.NetworkEthereumAttributes import Amazonka.ManagedBlockChain.Types.NetworkFabricAttributes import Amazonka.ManagedBlockChain.Types.NetworkFabricConfiguration import Amazonka.ManagedBlockChain.Types.NetworkFrameworkAttributes import Amazonka.ManagedBlockChain.Types.NetworkFrameworkConfiguration import Amazonka.ManagedBlockChain.Types.NetworkStatus import Amazonka.ManagedBlockChain.Types.NetworkSummary import Amazonka.ManagedBlockChain.Types.Node import Amazonka.ManagedBlockChain.Types.NodeConfiguration import Amazonka.ManagedBlockChain.Types.NodeEthereumAttributes import Amazonka.ManagedBlockChain.Types.NodeFabricAttributes import Amazonka.ManagedBlockChain.Types.NodeFabricLogPublishingConfiguration import Amazonka.ManagedBlockChain.Types.NodeFrameworkAttributes import Amazonka.ManagedBlockChain.Types.NodeLogPublishingConfiguration import Amazonka.ManagedBlockChain.Types.NodeStatus import Amazonka.ManagedBlockChain.Types.NodeSummary import Amazonka.ManagedBlockChain.Types.Proposal import Amazonka.ManagedBlockChain.Types.ProposalActions import Amazonka.ManagedBlockChain.Types.ProposalStatus import Amazonka.ManagedBlockChain.Types.ProposalSummary import Amazonka.ManagedBlockChain.Types.RemoveAction import Amazonka.ManagedBlockChain.Types.StateDBType import Amazonka.ManagedBlockChain.Types.ThresholdComparator import Amazonka.ManagedBlockChain.Types.VoteSummary import Amazonka.ManagedBlockChain.Types.VoteValue import Amazonka.ManagedBlockChain.Types.VotingPolicy import qualified Amazonka.Prelude as Prelude import qualified Amazonka.Sign.V4 as Sign -- | API version @2018-09-24@ of the Amazon Managed Blockchain SDK configuration. defaultService :: Core.Service defaultService = Core.Service { Core.abbrev = "ManagedBlockChain", Core.signer = Sign.v4, Core.endpointPrefix = "managedblockchain", Core.signingName = "managedblockchain", Core.version = "2018-09-24", Core.s3AddressingStyle = Core.S3AddressingStyleAuto, Core.endpoint = Core.defaultEndpoint defaultService, Core.timeout = Prelude.Just 70, Core.check = Core.statusSuccess, Core.error = Core.parseJSONError "ManagedBlockChain", Core.retry = retry } where retry = Core.Exponential { Core.base = 5.0e-2, Core.growth = 2, Core.attempts = 5, Core.check = check } check e | Lens.has (Core.hasStatus 502) e = Prelude.Just "bad_gateway" | Lens.has (Core.hasStatus 504) e = Prelude.Just "gateway_timeout" | Lens.has (Core.hasStatus 500) e = Prelude.Just "general_server_error" | Lens.has (Core.hasStatus 509) e = Prelude.Just "limit_exceeded" | Lens.has ( Core.hasCode "RequestThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "request_throttled_exception" | Lens.has (Core.hasStatus 503) e = Prelude.Just "service_unavailable" | Lens.has ( Core.hasCode "ThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttled_exception" | Lens.has ( Core.hasCode "Throttling" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling" | Lens.has ( Core.hasCode "ThrottlingException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling_exception" | Lens.has ( Core.hasCode "ProvisionedThroughputExceededException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throughput_exceeded" | Lens.has (Core.hasStatus 429) e = Prelude.Just "too_many_requests" | Prelude.otherwise = Prelude.Nothing -- | You don\'t have sufficient access to perform this action. _AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _AccessDeniedException = Core._MatchServiceError defaultService "AccessDeniedException" Prelude.. Core.hasStatus 403 _IllegalActionException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _IllegalActionException = Core._MatchServiceError defaultService "IllegalActionException" Prelude.. Core.hasStatus 400 -- | The request processing has failed because of an unknown error, exception -- or failure. _InternalServiceErrorException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InternalServiceErrorException = Core._MatchServiceError defaultService "InternalServiceErrorException" Prelude.. Core.hasStatus 500 -- | The action or operation requested is invalid. Verify that the action is -- typed correctly. _InvalidRequestException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidRequestException = Core._MatchServiceError defaultService "InvalidRequestException" Prelude.. Core.hasStatus 400 -- | A resource request is issued for a resource that already exists. _ResourceAlreadyExistsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceAlreadyExistsException = Core._MatchServiceError defaultService "ResourceAlreadyExistsException" Prelude.. Core.hasStatus 409 -- | The maximum number of resources of that type already exist. Ensure the -- resources requested are within the boundaries of the service edition and -- your account limits. _ResourceLimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceLimitExceededException = Core._MatchServiceError defaultService "ResourceLimitExceededException" Prelude.. Core.hasStatus 429 -- | A requested resource doesn\'t exist. It may have been deleted or -- referenced incorrectly. _ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceNotFoundException = Core._MatchServiceError defaultService "ResourceNotFoundException" Prelude.. Core.hasStatus 404 -- | The requested resource exists but isn\'t in a status that can complete -- the operation. _ResourceNotReadyException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceNotReadyException = Core._MatchServiceError defaultService "ResourceNotReadyException" Prelude.. Core.hasStatus 409 -- | The request or operation couldn\'t be performed because a service is -- throttling requests. The most common source of throttling errors is -- creating resources that exceed your service limit for this resource -- type. Request a limit increase or delete unused resources if possible. _ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ThrottlingException = Core._MatchServiceError defaultService "ThrottlingException" Prelude.. Core.hasStatus 429 _TooManyTagsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _TooManyTagsException = Core._MatchServiceError defaultService "TooManyTagsException" Prelude.. Core.hasStatus 400