BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
Create a new withdrawal permission. More...
#include <withdraw_permission.hpp>
Classes | |
struct | fee_params_t |
Public Member Functions | |
account_id_type | fee_payer () const |
void | validate () const |
Public Member Functions inherited from graphene::protocol::base_operation | |
virtual | ~base_operation ()=default |
template<typename T > | |
share_type | calculate_fee (const T ¶ms) const |
virtual void | get_required_authorities (vector< authority > &) const |
virtual void | get_required_active_authorities (flat_set< account_id_type > &) const |
virtual void | get_required_owner_authorities (flat_set< account_id_type > &) const |
fc::optional< fc::future< void > > | validate_parallel (uint32_t skip) const |
Public Attributes | |
asset | fee |
account_id_type | withdraw_from_account |
The account authorizing withdrawals from its balances. More... | |
account_id_type | authorized_account |
The account authorized to make withdrawals from withdraw_from_account. More... | |
asset | withdrawal_limit |
The maximum amount authorized_account is allowed to withdraw in a given withdrawal period. More... | |
uint32_t | withdrawal_period_sec = 0 |
Length of the withdrawal period in seconds. More... | |
uint32_t | periods_until_expiration = 0 |
The number of withdrawal periods this permission is valid for. More... | |
time_point_sec | period_start_time |
Time at which the first withdrawal period begins; must be in the future. More... | |
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) |
Create a new withdrawal permission.
This operation creates a withdrawal permission, which allows some authorized account to withdraw from an authorizing account. This operation is primarily useful for scheduling recurring payments.
Withdrawal permissions define withdrawal periods, which is a span of time during which the authorized account may make a withdrawal. Any number of withdrawals may be made so long as the total amount withdrawn per period does not exceed the limit for any given period.
Withdrawal permissions authorize only a specific pairing, i.e. a permission only authorizes one specified authorized account to withdraw from one specified authorizing account. Withdrawals are limited and may not exceet the withdrawal limit. The withdrawal must be made in the same asset as the limit; attempts with withdraw any other asset type will be rejected.
The fee for this operation is paid by withdraw_from_account, and this account is required to authorize this operation.
Definition at line 50 of file withdraw_permission.hpp.
|
inline |
Definition at line 68 of file withdraw_permission.hpp.
|
virtual |
Reimplemented from graphene::protocol::base_operation.
Definition at line 54 of file withdraw_permission.cpp.
account_id_type graphene::protocol::withdraw_permission_create_operation::authorized_account |
The account authorized to make withdrawals from withdraw_from_account.
Definition at line 58 of file withdraw_permission.hpp.
asset graphene::protocol::withdraw_permission_create_operation::fee |
Definition at line 54 of file withdraw_permission.hpp.
time_point_sec graphene::protocol::withdraw_permission_create_operation::period_start_time |
Time at which the first withdrawal period begins; must be in the future.
Definition at line 66 of file withdraw_permission.hpp.
uint32_t graphene::protocol::withdraw_permission_create_operation::periods_until_expiration = 0 |
The number of withdrawal periods this permission is valid for.
Definition at line 64 of file withdraw_permission.hpp.
account_id_type graphene::protocol::withdraw_permission_create_operation::withdraw_from_account |
The account authorizing withdrawals from its balances.
Definition at line 56 of file withdraw_permission.hpp.
asset graphene::protocol::withdraw_permission_create_operation::withdrawal_limit |
The maximum amount authorized_account is allowed to withdraw in a given withdrawal period.
Definition at line 60 of file withdraw_permission.hpp.
uint32_t graphene::protocol::withdraw_permission_create_operation::withdrawal_period_sec = 0 |
Length of the withdrawal period in seconds.
Definition at line 62 of file withdraw_permission.hpp.