BitShares-Core  7.0.2
BitShares blockchain node software and command-line wallet software
Classes | Public Member Functions | Public Attributes | List of all members
graphene::protocol::proposal_update_operation Struct Reference

The proposal_update_operation updates an existing transaction proposal. More...

#include <proposal.hpp>

Inheritance diagram for graphene::protocol::proposal_update_operation:
graphene::protocol::base_operation

Classes

struct  fee_params_t
 

Public Member Functions

account_id_type fee_payer () const
 
void validate () const
 
share_type calculate_fee (const fee_params_t &k) const
 
void get_required_authorities (vector< authority > &) const
 
void get_required_active_authorities (flat_set< account_id_type > &) const
 
void get_required_owner_authorities (flat_set< account_id_type > &) const
 
- Public Member Functions inherited from graphene::protocol::base_operation
virtual ~base_operation ()=default
 
template<typename T >
share_type calculate_fee (const T &params) const
 
fc::optional< fc::future< void > > validate_parallel (uint32_t skip) const
 

Public Attributes

account_id_type fee_paying_account
 
asset fee
 
proposal_id_type proposal
 
flat_set< account_id_type > active_approvals_to_add
 
flat_set< account_id_type > active_approvals_to_remove
 
flat_set< account_id_type > owner_approvals_to_add
 
flat_set< account_id_type > owner_approvals_to_remove
 
flat_set< public_key_typekey_approvals_to_add
 
flat_set< public_key_typekey_approvals_to_remove
 
extensions_type extensions
 

Additional Inherited Members

- Static Public Member Functions inherited from graphene::protocol::base_operation
static uint64_t calculate_data_fee (uint64_t bytes, uint64_t price_per_kbyte)
 

Detailed Description

The proposal_update_operation updates an existing transaction proposal.

This operation allows accounts to add or revoke approval of a proposed transaction. Signatures sufficient to satisfy the authority of each account in approvals are required on the transaction containing this operation.

If an account with a multi-signature authority is listed in approvals_to_add or approvals_to_remove, either all required signatures to satisfy that account's authority must be provided in the transaction containing this operation, or a secondary proposal must be created which contains this operation.

NOTE: If the proposal requires only an account's active authority, the account must not update adding its owner authority's approval. This is considered an error. An owner approval may only be added if the proposal requires the owner's authority.

If an account's owner and active authority are both required, only the owner authority may approve. An attempt to add or remove active authority approval to such a proposal will fail.

Definition at line 119 of file proposal.hpp.

Member Function Documentation

◆ calculate_fee()

share_type graphene::protocol::proposal_update_operation::calculate_fee ( const fee_params_t k) const

Definition at line 79 of file proposal.cpp.

◆ fee_payer()

account_id_type graphene::protocol::proposal_update_operation::fee_payer ( ) const
inline

Definition at line 137 of file proposal.hpp.

◆ get_required_active_authorities()

void graphene::protocol::proposal_update_operation::get_required_active_authorities ( flat_set< account_id_type > &  a) const
virtual

Reimplemented from graphene::protocol::base_operation.

Definition at line 97 of file proposal.cpp.

◆ get_required_authorities()

void graphene::protocol::proposal_update_operation::get_required_authorities ( vector< authority > &  o) const
virtual

Reimplemented from graphene::protocol::base_operation.

Definition at line 84 of file proposal.cpp.

◆ get_required_owner_authorities()

void graphene::protocol::proposal_update_operation::get_required_owner_authorities ( flat_set< account_id_type > &  a) const
virtual

Reimplemented from graphene::protocol::base_operation.

Definition at line 103 of file proposal.cpp.

◆ validate()

void graphene::protocol::proposal_update_operation::validate ( ) const
virtual

Reimplemented from graphene::protocol::base_operation.

Definition at line 51 of file proposal.cpp.

Member Data Documentation

◆ active_approvals_to_add

flat_set<account_id_type> graphene::protocol::proposal_update_operation::active_approvals_to_add

Definition at line 129 of file proposal.hpp.

◆ active_approvals_to_remove

flat_set<account_id_type> graphene::protocol::proposal_update_operation::active_approvals_to_remove

Definition at line 130 of file proposal.hpp.

◆ extensions

extensions_type graphene::protocol::proposal_update_operation::extensions

Definition at line 135 of file proposal.hpp.

◆ fee

asset graphene::protocol::proposal_update_operation::fee

Definition at line 127 of file proposal.hpp.

◆ fee_paying_account

account_id_type graphene::protocol::proposal_update_operation::fee_paying_account

Definition at line 126 of file proposal.hpp.

◆ key_approvals_to_add

flat_set<public_key_type> graphene::protocol::proposal_update_operation::key_approvals_to_add

Definition at line 133 of file proposal.hpp.

◆ key_approvals_to_remove

flat_set<public_key_type> graphene::protocol::proposal_update_operation::key_approvals_to_remove

Definition at line 134 of file proposal.hpp.

◆ owner_approvals_to_add

flat_set<account_id_type> graphene::protocol::proposal_update_operation::owner_approvals_to_add

Definition at line 131 of file proposal.hpp.

◆ owner_approvals_to_remove

flat_set<account_id_type> graphene::protocol::proposal_update_operation::owner_approvals_to_remove

Definition at line 132 of file proposal.hpp.

◆ proposal

proposal_id_type graphene::protocol::proposal_update_operation::proposal

Definition at line 128 of file proposal.hpp.


The documentation for this struct was generated from the following files: