Bitshares-Core  2.0.181105
BitShares blockchain implementation and command-line interface software
Classes | Public Member Functions | Public Attributes | List of all members
graphene::chain::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::chain::account_upgrade_operation:
graphene::chain::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::chain::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
 

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::chain::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 225 of file account.hpp.

Member Function Documentation

◆ calculate_fee()

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

Definition at line 259 of file account.cpp.

◆ fee_payer()

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

Definition at line 239 of file account.hpp.

◆ validate()

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

Definition at line 267 of file account.cpp.

Member Data Documentation

◆ account_to_upgrade

account_id_type graphene::chain::account_upgrade_operation::account_to_upgrade

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

Definition at line 234 of file account.hpp.

◆ extensions

extensions_type graphene::chain::account_upgrade_operation::extensions

Definition at line 237 of file account.hpp.

◆ fee

asset graphene::chain::account_upgrade_operation::fee

Definition at line 232 of file account.hpp.

◆ upgrade_to_lifetime_member

bool graphene::chain::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 236 of file account.hpp.


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