Bitshares-Core  2.0.181105
BitShares blockchain implementation and command-line interface software
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
graphene::chain::withdraw_permission_object Class Reference

Grants another account authority to withdraw a limited amount of funds per interval. More...

#include <withdraw_permission_object.hpp>

Inheritance diagram for graphene::chain::withdraw_permission_object:

Public Member Functions

asset available_this_period (fc::time_point_sec current_time) const
 

Public Attributes

account_id_type withdraw_from_account
 The account authorizing authorized_account to withdraw from it. More...
 
account_id_type authorized_account
 The account authorized to make withdrawals from withdraw_from_account. More...
 
asset withdrawal_limit
 The maximum amount which may be withdrawn per period. All withdrawals must be of this asset type. More...
 
uint32_t withdrawal_period_sec = 0
 The duration of a withdrawal period in seconds. More...
 
time_point_sec period_start_time
 
time_point_sec expiration
 The time at which this withdraw permission expires. More...
 
share_type claimed_this_period
 

Static Public Attributes

static const uint8_t space_id = protocol_ids
 
static const uint8_t type_id = withdraw_permission_object_type
 

Detailed Description

Grants another account authority to withdraw a limited amount of funds per interval.

The primary purpose of this object is to enable recurring payments on the blockchain. An account which wishes to process a recurring payment may use a withdraw_permission_claim_operation to reference an object of this type and withdraw up to withdrawal_limit from withdraw_from_account. Only authorized_account may do this. 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.

Definition at line 40 of file withdraw_permission_object.hpp.

Member Function Documentation

◆ available_this_period()

asset graphene::chain::withdraw_permission_object::available_this_period ( fc::time_point_sec  current_time) const
inline

Definition at line 71 of file withdraw_permission_object.hpp.

Member Data Documentation

◆ authorized_account

account_id_type graphene::chain::withdraw_permission_object::authorized_account

The account authorized to make withdrawals from withdraw_from_account.

Definition at line 49 of file withdraw_permission_object.hpp.

◆ claimed_this_period

share_type graphene::chain::withdraw_permission_object::claimed_this_period

Definition at line 66 of file withdraw_permission_object.hpp.

◆ expiration

time_point_sec graphene::chain::withdraw_permission_object::expiration

The time at which this withdraw permission expires.

Definition at line 60 of file withdraw_permission_object.hpp.

◆ period_start_time

time_point_sec graphene::chain::withdraw_permission_object::period_start_time

Definition at line 58 of file withdraw_permission_object.hpp.

◆ space_id

const uint8_t graphene::chain::withdraw_permission_object::space_id = protocol_ids
static

Definition at line 43 of file withdraw_permission_object.hpp.

◆ type_id

const uint8_t graphene::chain::withdraw_permission_object::type_id = withdraw_permission_object_type
static

Definition at line 44 of file withdraw_permission_object.hpp.

◆ withdraw_from_account

account_id_type graphene::chain::withdraw_permission_object::withdraw_from_account

The account authorizing authorized_account to withdraw from it.

Definition at line 47 of file withdraw_permission_object.hpp.

◆ withdrawal_limit

asset graphene::chain::withdraw_permission_object::withdrawal_limit

The maximum amount which may be withdrawn per period. All withdrawals must be of this asset type.

Definition at line 51 of file withdraw_permission_object.hpp.

◆ withdrawal_period_sec

uint32_t graphene::chain::withdraw_permission_object::withdrawal_period_sec = 0

The duration of a withdrawal period in seconds.

Definition at line 53 of file withdraw_permission_object.hpp.


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