BitShares-Core  5.0.0
BitShares blockchain implementation and command-line interface software
Classes | Public Member Functions | Public Attributes | List of all members
graphene::protocol::account_upgrade_operation Struct Reference

Manage an account's membership statusThis operation is used to upgrade an account to a member, or renew its subscription. If an account which is an unexpired annual subscription member publishes this operation with upgrade_to_lifetime_member set to false, the account's membership expiration date will be pushed backward one year. If a basic account publishes it with upgrade_to_lifetime_member set to false, the account will be upgraded to a subscription member with an expiration date one year after the processing time of this operation. More...

#include <account.hpp>

Inheritance diagram for graphene::protocol::account_upgrade_operation:
graphene::protocol::base_operation

Classes

struct  fee_parameters_type
 

Public Member Functions

account_id_type fee_payer () const
 
void validate () const
 
share_type calculate_fee (const fee_parameters_type &k) const
 
- Public Member Functions inherited from graphene::protocol::base_operation
template<typename T >
share_type calculate_fee (const T &params) 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
 
void validate () const
 
fc::optional< fc::future< void > > validate_parallel (uint32_t skip) const
 

Public Attributes

asset fee
 
account_id_type account_to_upgrade
 The account to upgrade; must not already be a lifetime member. More...
 
bool upgrade_to_lifetime_member = false
 If true, the account will be upgraded to a lifetime member; otherwise, it will add a year to the subscription. More...
 
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

Manage an account's membership status

This operation is used to upgrade an account to a member, or renew its subscription. If an account which is an unexpired annual subscription member publishes this operation with upgrade_to_lifetime_member set to false, the account's membership expiration date will be pushed backward one year. If a basic account publishes it with upgrade_to_lifetime_member set to false, the account will be upgraded to a subscription member with an expiration date one year after the processing time of this operation.

Any account may use this operation to become a lifetime member by setting upgrade_to_lifetime_member to true. Once an account has become a lifetime member, it may not use this operation anymore.

Definition at line 234 of file account.hpp.

Member Function Documentation

share_type graphene::protocol::account_upgrade_operation::calculate_fee ( const fee_parameters_type k) const

Definition at line 257 of file account.cpp.

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

Definition at line 248 of file account.hpp.

void graphene::protocol::account_upgrade_operation::validate ( ) const

Definition at line 264 of file account.cpp.

Member Data Documentation

account_id_type graphene::protocol::account_upgrade_operation::account_to_upgrade

The account to upgrade; must not already be a lifetime member.

Definition at line 243 of file account.hpp.

extensions_type graphene::protocol::account_upgrade_operation::extensions

Definition at line 246 of file account.hpp.

asset graphene::protocol::account_upgrade_operation::fee

Definition at line 241 of file account.hpp.

bool graphene::protocol::account_upgrade_operation::upgrade_to_lifetime_member = false

If true, the account will be upgraded to a lifetime member; otherwise, it will add a year to the subscription.

Definition at line 245 of file account.hpp.


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