Scorum
Public Member Functions | Protected Member Functions | Friends | List of all members
scorum::chain::dbs_atomicswap Class Reference

#include <atomicswap.hpp>

Inheritance diagram for scorum::chain::dbs_atomicswap:
scorum::chain::dbs_service_base< atomicswap_service_i > scorum::chain::dbs_base scorum::chain::atomicswap_service_i scorum::chain::base_service_i< atomicswap_contract_object >

Public Member Functions

virtual atomicswap_contracts_refs_type get_contracts () const override
 
virtual atomicswap_contracts_refs_type get_contracts (const account_object &owner) const override
 
virtual const atomicswap_contract_object & get_contract (const account_object &from, const account_object &to, const std::string &secret_hash) const override
 
virtual const atomicswap_contract_object & create_contract (atomicswap_contract_type tp, const account_object &owner, const account_object &recipient, const asset &amount, const std::string &secret_hash, const optional< std::string > &metadata=optional< std::string >()) override
 
virtual void redeem_contract (const atomicswap_contract_object &contract, const std::string &secret) override
 
virtual void refund_contract (const atomicswap_contract_object &contract) override
 
- Public Member Functions inherited from scorum::chain::dbs_service_base< atomicswap_service_i >
 dbs_service_base (dba::db_index &db)
 
virtual const object_typecreate (const modifier_type &modifier) override
 
virtual void update (const modifier_type &modifier) override
 
virtual void update (const object_type &o, const modifier_type &modifier) override
 
virtual void remove () override
 
virtual void remove (const object_type &o) override
 
virtual void remove_all (const std::vector< object_cref_type > &os) override
 
virtual bool is_exists () const override
 
virtual const object_typeget () const override
 
const object_typeget_by (const Key &arg) const
 
const object_typefind_by (const Key &arg) const
 
void foreach_by (Call &&call) const
 
std::vector< object_cref_typeget_range_by (LowerBounder lower, UpperBounder upper) const
 
std::vector< object_cref_typeget_filtered_range_by (LowerBounder lower, UpperBounder upper, UnaryPredicate filter) const
 
- Public Member Functions inherited from scorum::chain::dbs_base
virtual ~dbs_base ()
 
- Public Member Functions inherited from scorum::chain::base_service_i< atomicswap_contract_object >
virtual ~base_service_i ()
 

Protected Member Functions

 dbs_atomicswap (database &db)
 
- Protected Member Functions inherited from scorum::chain::dbs_base
 dbs_base ()=delete
 
 dbs_base (dbs_base &&)=delete
 
 dbs_base (dba::db_index &)
 
time_point_sec head_block_time ()
 
dba::db_indexdb_impl ()
 
const dba::db_indexdb_impl () const
 

Friends

class dbservice_dbs_factory
 

Additional Inherited Members

- Public Types inherited from scorum::chain::dbs_service_base< atomicswap_service_i >
using base_service_type = dbs_service_base
 
using modifier_type = typename service_interface::modifier_type
 
using object_type = typename service_interface::object_type
 
using object_cref_type = typename service_interface::object_cref_type
 
- Public Types inherited from scorum::chain::atomicswap_service_i
using atomicswap_contracts_refs_type = std::vector< std::reference_wrapper< const atomicswap_contract_object > >
 
- Public Types inherited from scorum::chain::base_service_i< atomicswap_contract_object >
using object_type = atomicswap_contract_object
 
using modifier_type = std::function< void(object_type &)>
 
using call_type = std::function< void(const object_type &)>
 
using object_cref_type = std::reference_wrapper< const object_type >
 
- Protected Types inherited from scorum::chain::dbs_base
typedef dbs_base _base_type
 

Detailed Description

DB service for operations with atomicswap_contract_object

Definition at line 38 of file atomicswap.hpp.

Constructor & Destructor Documentation

◆ dbs_atomicswap()

scorum::chain::dbs_atomicswap::dbs_atomicswap ( database db)
explicitprotected

Definition at line 15 of file atomicswap.cpp.

Member Function Documentation

◆ create_contract()

const atomicswap_contract_object & scorum::chain::dbs_atomicswap::create_contract ( atomicswap_contract_type  tp,
const account_object &  owner,
const account_object &  recipient,
const asset amount,
const std::string &  secret_hash,
const optional< std::string > &  metadata = optional<std::string>() 
)
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 60 of file atomicswap.cpp.

◆ get_contract()

const atomicswap_contract_object & scorum::chain::dbs_atomicswap::get_contract ( const account_object &  from,
const account_object &  to,
const std::string &  secret_hash 
) const
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 48 of file atomicswap.cpp.

◆ get_contracts() [1/2]

dbs_atomicswap::atomicswap_contracts_refs_type scorum::chain::dbs_atomicswap::get_contracts ( ) const
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 22 of file atomicswap.cpp.

◆ get_contracts() [2/2]

dbs_atomicswap::atomicswap_contracts_refs_type scorum::chain::dbs_atomicswap::get_contracts ( const account_object &  owner) const
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 33 of file atomicswap.cpp.

◆ redeem_contract()

void scorum::chain::dbs_atomicswap::redeem_contract ( const atomicswap_contract_object &  contract,
const std::string &  secret 
)
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 119 of file atomicswap.cpp.

◆ refund_contract()

void scorum::chain::dbs_atomicswap::refund_contract ( const atomicswap_contract_object &  contract)
overridevirtual

Implements scorum::chain::atomicswap_service_i.

Definition at line 139 of file atomicswap.cpp.

Friends And Related Function Documentation

◆ dbservice_dbs_factory

friend class dbservice_dbs_factory
friend

Definition at line 40 of file atomicswap.hpp.


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