libZSservicesZSamazonka-managedblockchainZSamazonka-managedblockchain
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.ManagedBlockChain.Types.Proposal

Description

 
Synopsis

Documentation

data Proposal Source #

Properties of a proposal on a Managed Blockchain network.

Applies only to Hyperledger Fabric.

See: newProposal smart constructor.

Constructors

Proposal' 

Fields

  • status :: Maybe ProposalStatus

    The status of the proposal. Values are as follows:

    • IN_PROGRESS - The proposal is active and open for member voting.
    • APPROVED - The proposal was approved with sufficient YES votes among members according to the VotingPolicy specified for the Network. The specified proposal actions are carried out.
    • REJECTED - The proposal was rejected with insufficient YES votes among members according to the VotingPolicy specified for the Network. The specified ProposalActions are not carried out.
    • EXPIRED - Members did not cast the number of votes required to determine the proposal outcome before the proposal expired. The specified ProposalActions are not carried out.
    • ACTION_FAILED - One or more of the specified ProposalActions in a proposal that was approved could not be completed because of an error. The ACTION_FAILED status occurs even if only one ProposalAction fails and other actions are successful.
  • yesVoteCount :: Maybe Int

    The current total of YES votes cast on the proposal by members.

  • noVoteCount :: Maybe Int

    The current total of NO votes cast on the proposal by members.

  • arn :: Maybe Text

    The Amazon Resource Name (ARN) of the proposal. For more information about ARNs and their format, see Amazon Resource Names (ARNs) in the AWS General Reference.

  • actions :: Maybe ProposalActions

    The actions to perform on the network if the proposal is APPROVED.

  • networkId :: Maybe Text

    The unique identifier of the network for which the proposal is made.

  • proposedByMemberId :: Maybe Text

    The unique identifier of the member that created the proposal.

  • proposalId :: Maybe Text

    The unique identifier of the proposal.

  • proposedByMemberName :: Maybe Text

    The name of the member that created the proposal.

  • expirationDate :: Maybe POSIX

    The date and time that the proposal expires. This is the CreationDate plus the ProposalDurationInHours that is specified in the ProposalThresholdPolicy. After this date and time, if members have not cast enough votes to determine the outcome according to the voting policy, the proposal is EXPIRED and Actions are not carried out.

  • creationDate :: Maybe POSIX

    The date and time that the proposal was created.

  • description :: Maybe Text

    The description of the proposal.

  • tags :: Maybe (HashMap Text Text)

    Tags assigned to the proposal. Each tag consists of a key and optional value.

    For more information about tags, see Tagging Resources in the Amazon Managed Blockchain Ethereum Developer Guide, or Tagging Resources in the Amazon Managed Blockchain Hyperledger Fabric Developer Guide.

  • outstandingVoteCount :: Maybe Int

    The number of votes remaining to be cast on the proposal by members. In other words, the number of members minus the sum of YES votes and NO votes.

Instances

Instances details
Eq Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Read Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Show Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Generic Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Associated Types

type Rep Proposal :: Type -> Type #

Methods

from :: Proposal -> Rep Proposal x #

to :: Rep Proposal x -> Proposal #

NFData Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Methods

rnf :: Proposal -> () #

Hashable Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

Methods

hashWithSalt :: Int -> Proposal -> Int #

hash :: Proposal -> Int #

FromJSON Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

type Rep Proposal Source # 
Instance details

Defined in Amazonka.ManagedBlockChain.Types.Proposal

type Rep Proposal = D1 ('MetaData "Proposal" "Amazonka.ManagedBlockChain.Types.Proposal" "libZSservicesZSamazonka-managedblockchainZSamazonka-managedblockchain" 'False) (C1 ('MetaCons "Proposal'" 'PrefixI 'True) (((S1 ('MetaSel ('Just "status") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ProposalStatus)) :*: (S1 ('MetaSel ('Just "yesVoteCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: S1 ('MetaSel ('Just "noVoteCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)))) :*: ((S1 ('MetaSel ('Just "arn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "actions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ProposalActions))) :*: (S1 ('MetaSel ('Just "networkId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "proposedByMemberId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) :*: ((S1 ('MetaSel ('Just "proposalId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "proposedByMemberName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "expirationDate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe POSIX)))) :*: ((S1 ('MetaSel ('Just "creationDate") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe POSIX)) :*: S1 ('MetaSel ('Just "description") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Text))) :*: S1 ('MetaSel ('Just "outstandingVoteCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)))))))

newProposal :: Proposal Source #

Create a value of Proposal with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:status:Proposal', proposal_status - The status of the proposal. Values are as follows:

  • IN_PROGRESS - The proposal is active and open for member voting.
  • APPROVED - The proposal was approved with sufficient YES votes among members according to the VotingPolicy specified for the Network. The specified proposal actions are carried out.
  • REJECTED - The proposal was rejected with insufficient YES votes among members according to the VotingPolicy specified for the Network. The specified ProposalActions are not carried out.
  • EXPIRED - Members did not cast the number of votes required to determine the proposal outcome before the proposal expired. The specified ProposalActions are not carried out.
  • ACTION_FAILED - One or more of the specified ProposalActions in a proposal that was approved could not be completed because of an error. The ACTION_FAILED status occurs even if only one ProposalAction fails and other actions are successful.

$sel:yesVoteCount:Proposal', proposal_yesVoteCount - The current total of YES votes cast on the proposal by members.

$sel:noVoteCount:Proposal', proposal_noVoteCount - The current total of NO votes cast on the proposal by members.

$sel:arn:Proposal', proposal_arn - The Amazon Resource Name (ARN) of the proposal. For more information about ARNs and their format, see Amazon Resource Names (ARNs) in the AWS General Reference.

$sel:actions:Proposal', proposal_actions - The actions to perform on the network if the proposal is APPROVED.

$sel:networkId:Proposal', proposal_networkId - The unique identifier of the network for which the proposal is made.

$sel:proposedByMemberId:Proposal', proposal_proposedByMemberId - The unique identifier of the member that created the proposal.

$sel:proposalId:Proposal', proposal_proposalId - The unique identifier of the proposal.

$sel:proposedByMemberName:Proposal', proposal_proposedByMemberName - The name of the member that created the proposal.

$sel:expirationDate:Proposal', proposal_expirationDate - The date and time that the proposal expires. This is the CreationDate plus the ProposalDurationInHours that is specified in the ProposalThresholdPolicy. After this date and time, if members have not cast enough votes to determine the outcome according to the voting policy, the proposal is EXPIRED and Actions are not carried out.

$sel:creationDate:Proposal', proposal_creationDate - The date and time that the proposal was created.

$sel:description:Proposal', proposal_description - The description of the proposal.

$sel:tags:Proposal', proposal_tags - Tags assigned to the proposal. Each tag consists of a key and optional value.

For more information about tags, see Tagging Resources in the Amazon Managed Blockchain Ethereum Developer Guide, or Tagging Resources in the Amazon Managed Blockchain Hyperledger Fabric Developer Guide.

$sel:outstandingVoteCount:Proposal', proposal_outstandingVoteCount - The number of votes remaining to be cast on the proposal by members. In other words, the number of members minus the sum of YES votes and NO votes.

proposal_status :: Lens' Proposal (Maybe ProposalStatus) Source #

The status of the proposal. Values are as follows:

  • IN_PROGRESS - The proposal is active and open for member voting.
  • APPROVED - The proposal was approved with sufficient YES votes among members according to the VotingPolicy specified for the Network. The specified proposal actions are carried out.
  • REJECTED - The proposal was rejected with insufficient YES votes among members according to the VotingPolicy specified for the Network. The specified ProposalActions are not carried out.
  • EXPIRED - Members did not cast the number of votes required to determine the proposal outcome before the proposal expired. The specified ProposalActions are not carried out.
  • ACTION_FAILED - One or more of the specified ProposalActions in a proposal that was approved could not be completed because of an error. The ACTION_FAILED status occurs even if only one ProposalAction fails and other actions are successful.

proposal_yesVoteCount :: Lens' Proposal (Maybe Int) Source #

The current total of YES votes cast on the proposal by members.

proposal_noVoteCount :: Lens' Proposal (Maybe Int) Source #

The current total of NO votes cast on the proposal by members.

proposal_arn :: Lens' Proposal (Maybe Text) Source #

The Amazon Resource Name (ARN) of the proposal. For more information about ARNs and their format, see Amazon Resource Names (ARNs) in the AWS General Reference.

proposal_actions :: Lens' Proposal (Maybe ProposalActions) Source #

The actions to perform on the network if the proposal is APPROVED.

proposal_networkId :: Lens' Proposal (Maybe Text) Source #

The unique identifier of the network for which the proposal is made.

proposal_proposedByMemberId :: Lens' Proposal (Maybe Text) Source #

The unique identifier of the member that created the proposal.

proposal_proposalId :: Lens' Proposal (Maybe Text) Source #

The unique identifier of the proposal.

proposal_proposedByMemberName :: Lens' Proposal (Maybe Text) Source #

The name of the member that created the proposal.

proposal_expirationDate :: Lens' Proposal (Maybe UTCTime) Source #

The date and time that the proposal expires. This is the CreationDate plus the ProposalDurationInHours that is specified in the ProposalThresholdPolicy. After this date and time, if members have not cast enough votes to determine the outcome according to the voting policy, the proposal is EXPIRED and Actions are not carried out.

proposal_creationDate :: Lens' Proposal (Maybe UTCTime) Source #

The date and time that the proposal was created.

proposal_description :: Lens' Proposal (Maybe Text) Source #

The description of the proposal.

proposal_tags :: Lens' Proposal (Maybe (HashMap Text Text)) Source #

Tags assigned to the proposal. Each tag consists of a key and optional value.

For more information about tags, see Tagging Resources in the Amazon Managed Blockchain Ethereum Developer Guide, or Tagging Resources in the Amazon Managed Blockchain Hyperledger Fabric Developer Guide.

proposal_outstandingVoteCount :: Lens' Proposal (Maybe Int) Source #

The number of votes remaining to be cast on the proposal by members. In other words, the number of members minus the sum of YES votes and NO votes.