ledger-core
Public Member Functions | Static Public Member Functions | List of all members
ledger::core::api::WalletPoolBuilder Class Referenceabstract

#include <WalletPoolBuilder.hpp>

+ Inheritance diagram for ledger::core::api::WalletPoolBuilder:

Public Member Functions

virtual std::shared_ptr< WalletPoolBuildersetHttpClient (const std::shared_ptr< HttpClient > &client)=0
 
virtual std::shared_ptr< WalletPoolBuildersetWebsocketClient (const std::shared_ptr< WebSocketClient > &client)=0
 
virtual std::shared_ptr< WalletPoolBuildersetPathResolver (const std::shared_ptr< PathResolver > &pathResolver)=0
 
virtual std::shared_ptr< WalletPoolBuildersetLogPrinter (const std::shared_ptr< LogPrinter > &printer)=0
 
virtual std::shared_ptr< WalletPoolBuildersetThreadDispatcher (const std::shared_ptr< ThreadDispatcher > &dispatcher)=0
 
virtual std::shared_ptr< WalletPoolBuildersetName (const std::string &name)=0
 
virtual std::shared_ptr< WalletPoolBuildersetPassword (const std::string &password)=0
 
virtual std::shared_ptr< WalletPoolBuildersetRandomNumberGenerator (const std::shared_ptr< RandomNumberGenerator > &rng)=0
 
virtual std::shared_ptr< WalletPoolBuildersetDatabaseBackend (const std::shared_ptr< DatabaseBackend > &backend)=0
 
virtual std::shared_ptr< WalletPoolBuildersetConfiguration (const std::shared_ptr< DynamicObject > &configuration)=0
 
virtual void build (const std::shared_ptr< WalletPoolCallback > &listener)=0
 

Static Public Member Functions

static std::shared_ptr< WalletPoolBuildercreateInstance ()
 

Detailed Description

Class representing a wallet pool builder (to instanciate a wallet pool).

Member Function Documentation

◆ build()

virtual void ledger::core::api::WalletPoolBuilder::build ( const std::shared_ptr< WalletPoolCallback > &  listener)
pure virtual

Create wallet pool.

Parameters
callback,Callbackobject returning a WalletPool instance

◆ createInstance()

std::shared_ptr< api::WalletPoolBuilder > ledger::core::api::WalletPoolBuilder::createInstance ( )
static

Create an instance of the wallet pool builder.

Returns
WalletPoolBuilder object

◆ setConfiguration()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setConfiguration ( const std::shared_ptr< DynamicObject > &  configuration)
pure virtual

Set configuration that will be used for wallet pool creation.

Parameters
configuration,DynamicObjectobject
Returns
WalletPoolBuilder object, with wallet pool configuration set

◆ setDatabaseBackend()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setDatabaseBackend ( const std::shared_ptr< DatabaseBackend > &  backend)
pure virtual

Set database that will be used for wallet pool creation, it will store all wallet pool's data (created wallets, accounts, preferences ...).

Parameters
backend,DatabaseBackendobject
Returns
WalletPoolBuilder object, with wallet pool database set

◆ setHttpClient()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setHttpClient ( const std::shared_ptr< HttpClient > &  client)
pure virtual

Set http client to be used for wallet pool build.

Parameters
client,HttpClient
Returns
WalletPoolBuilder object, instance with wallet pool http client set

◆ setLogPrinter()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setLogPrinter ( const std::shared_ptr< LogPrinter > &  printer)
pure virtual

Set log printer that will be used for wallet pool creation to dump wallet pool's logs (for debug purposes).

Parameters
printer,LogPrinterobject
WalletPoolBuilderobject, instance with wallet pool logger set

◆ setName()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setName ( const std::string &  name)
pure virtual

Set name that will be used for wallet pool creation.

Parameters
name,string
Returns
WalletPoolBuilder object, instance with wallet pool name set

Implemented in ledger::core::WalletPoolBuilder.

◆ setPassword()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setPassword ( const std::string &  password)
pure virtual

Set password that will be used for wallet pool creation.

Parameters
password,string
Returns
WalletPoolBuilder object, with wallet pool password set

Implemented in ledger::core::WalletPoolBuilder.

◆ setPathResolver()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setPathResolver ( const std::shared_ptr< PathResolver > &  pathResolver)
pure virtual

Set path resolver that will be used for wallet pool creation to resolve wallet pool's (DB's, logs, preferences ...) paths.

Parameters
pathResolver,Pathresolverobject
WalletPoolBuilderobject, instance with wallet pool path resolver set

◆ setRandomNumberGenerator()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setRandomNumberGenerator ( const std::shared_ptr< RandomNumberGenerator > &  rng)
pure virtual

Set random number generator that will be used for wallet pool creation.

Parameters
rng,RandomNumberGeneratorobject
Returns
WalletPoolBuilder object, with wallet pool random number generator set

◆ setThreadDispatcher()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setThreadDispatcher ( const std::shared_ptr< ThreadDispatcher > &  dispatcher)
pure virtual

Set thread dispatcher that will be used for wallet pool creation to dispatch wallet pool's tasks through different threads.

Parameters
dispatcher,ThreadDispatcherobject
WalletPoolBuilderobject, instance with wallet pool thread dispatcher set

◆ setWebsocketClient()

virtual std::shared_ptr<WalletPoolBuilder> ledger::core::api::WalletPoolBuilder::setWebsocketClient ( const std::shared_ptr< WebSocketClient > &  client)
pure virtual

Set web socket client, through which wallet pool will listen and get notified (by explorers, DBs...).

Parameters
client,WebSocketClientobject WalletPoolBuilder object, instance with wallet pool web socket client set

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