SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
SWC::client::Query::Select::Handlers::Base Class Referenceabstract

#include <swcdb/db/client/Query/Select/Handlers/Base.h>

+ Inheritance diagram for SWC::client::Query::Select::Handlers::Base:
+ Collaboration diagram for SWC::client::Query::Select::Handlers::Base:

Public Types

typedef std::shared_ptr< BasePtr
 

Public Member Functions

SWC_CAN_INLINE Base (const Clients::Ptr &a_clients, Clients::Flag a_executor=Clients::DEFAULT) noexcept
 
 Base (Base &&)=delete
 
 Base (const Base &)=delete
 
Baseoperator= (const Base &)=delete
 
Baseoperator= (Base &&)=delete
 
virtual bool valid () noexcept=0
 
virtual void error (const cid_t cid, int err)=0
 
virtual bool add_cells (const cid_t cid, StaticBuffer &buffer, bool reached_limit, DB::Specs::Interval &interval)=0
 
virtual size_t get_size_bytes () noexcept=0
 
virtual void response (int err=Error::OK)=0
 
virtual int error () noexcept
 
virtual void error (int err) noexcept
 
SWC_CAN_INLINE void scan (const DB::Schema::Ptr &schema, const DB::Specs::Interval &intval)
 
SWC_CAN_INLINE void scan (const DB::Schema::Ptr &schema, DB::Specs::Interval &&intval)
 
SWC_CAN_INLINE void scan (DB::Types::KeySeq key_seq, cid_t cid, const DB::Specs::Interval &intval)
 
SWC_CAN_INLINE void scan (DB::Types::KeySeq key_seq, cid_t cid, DB::Specs::Interval &&intval)
 
SWC_CAN_INLINE void scan (int &err, const DB::Specs::Scan &specs)
 
SWC_CAN_INLINE void scan (int &err, DB::Specs::Scan &&specs)
 

Public Attributes

Clients::Ptr clients
 
Profiling profile
 
Core::Atomic< int > state_error
 
Core::CompletionCounter< uint64_t > completion
 
Core::Atomic< uint32_t > timeout
 
Core::Atomic< uint32_t > buff_sz
 
Core::Atomic< uint8_t > buff_ahead
 
const Clients::Flag executor
 

Protected Member Functions

virtual void _execute (DB::Types::KeySeq key_seq, cid_t cid, const DB::Specs::Interval &intval)
 
virtual void _execute (DB::Types::KeySeq key_seq, cid_t cid, DB::Specs::Interval &&intval)
 
virtual void _execute (int &err, const DB::Specs::Scan &specs)
 
virtual void _execute (int &err, DB::Specs::Scan &&specs)
 
virtual ~Base () noexcept
 

Private Member Functions

void default_executor (DB::Types::KeySeq key_seq, cid_t cid, const DB::Specs::Interval &intval)
 
void default_executor (DB::Types::KeySeq key_seq, cid_t cid, DB::Specs::Interval &&intval)
 
void default_executor (int &err, const DB::Specs::Scan &specs)
 
void default_executor (int &err, DB::Specs::Scan &&specs)
 

Detailed Description

Definition at line 26 of file Base.h.

Member Typedef Documentation

◆ Ptr

Definition at line 28 of file Base.h.

Constructor & Destructor Documentation

◆ Base() [1/3]

SWC_CAN_INLINE SWC::client::Query::Select::Handlers::Base::Base ( const Clients::Ptr a_clients,
Clients::Flag  a_executor = Clients::DEFAULT 
)
inlinenoexcept

Definition at line 41 of file Base.h.

◆ Base() [2/3]

SWC::client::Query::Select::Handlers::Base::Base ( Base &&  )
delete

◆ Base() [3/3]

SWC::client::Query::Select::Handlers::Base::Base ( const Base )
delete

◆ ~Base()

virtual SWC::client::Query::Select::Handlers::Base::~Base ( )
inlineprotectedvirtualnoexcept

Definition at line 132 of file Base.h.

Member Function Documentation

◆ _execute() [1/4]

virtual void SWC::client::Query::Select::Handlers::Base::_execute ( DB::Types::KeySeq  key_seq,
cid_t  cid,
const DB::Specs::Interval intval 
)
inlineprotectedvirtual

Definition at line 114 of file Base.h.

References default_executor().

Referenced by scan().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _execute() [2/4]

virtual void SWC::client::Query::Select::Handlers::Base::_execute ( DB::Types::KeySeq  key_seq,
cid_t  cid,
DB::Specs::Interval &&  intval 
)
inlineprotectedvirtual

Definition at line 119 of file Base.h.

References default_executor().

+ Here is the call graph for this function:

◆ _execute() [3/4]

virtual void SWC::client::Query::Select::Handlers::Base::_execute ( int &  err,
const DB::Specs::Scan specs 
)
inlineprotectedvirtual

Definition at line 124 of file Base.h.

References default_executor().

+ Here is the call graph for this function:

◆ _execute() [4/4]

virtual void SWC::client::Query::Select::Handlers::Base::_execute ( int &  err,
DB::Specs::Scan &&  specs 
)
inlineprotectedvirtual

Definition at line 128 of file Base.h.

References default_executor().

+ Here is the call graph for this function:

◆ add_cells()

virtual bool SWC::client::Query::Select::Handlers::Base::add_cells ( const cid_t  cid,
StaticBuffer buffer,
bool  reached_limit,
DB::Specs::Interval interval 
)
pure virtual

◆ default_executor() [1/4]

void SWC::client::Query::Select::Handlers::Base::default_executor ( DB::Types::KeySeq  key_seq,
cid_t  cid,
const DB::Specs::Interval intval 
)
private

Definition at line 18 of file Base.cc.

References SWC::client::Clients::BROKER, completion, SWC::client::Clients::DEFAULT, SWC::client::Query::Select::BrokerScanner::execute(), SWC::client::Query::Select::Scanner::execute(), executor, SWC::Core::CompletionCounter< CountT >::increment(), SWC::Error::INVALID_ARGUMENT, and SWC_THROWF.

Referenced by _execute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ default_executor() [2/4]

void SWC::client::Query::Select::Handlers::Base::default_executor ( DB::Types::KeySeq  key_seq,
cid_t  cid,
DB::Specs::Interval &&  intval 
)
private

Definition at line 34 of file Base.cc.

References SWC::client::Clients::BROKER, completion, SWC::client::Clients::DEFAULT, SWC::client::Query::Select::BrokerScanner::execute(), SWC::client::Query::Select::Scanner::execute(), executor, SWC::Core::CompletionCounter< CountT >::increment(), SWC::Error::INVALID_ARGUMENT, and SWC_THROWF.

+ Here is the call graph for this function:

◆ default_executor() [3/4]

void SWC::client::Query::Select::Handlers::Base::default_executor ( int &  err,
const DB::Specs::Scan specs 
)
private

◆ default_executor() [4/4]

void SWC::client::Query::Select::Handlers::Base::default_executor ( int &  err,
DB::Specs::Scan &&  specs 
)
private

◆ error() [1/3]

virtual int SWC::client::Query::Select::Handlers::Base::error ( )
inlinevirtualnoexcept

◆ error() [2/3]

virtual void SWC::client::Query::Select::Handlers::Base::error ( const cid_t  cid,
int  err 
)
pure virtual

◆ error() [3/3]

virtual void SWC::client::Query::Select::Handlers::Base::error ( int  err)
inlinevirtualnoexcept

Definition at line 73 of file Base.h.

◆ get_size_bytes()

virtual size_t SWC::client::Query::Select::Handlers::Base::get_size_bytes ( )
pure virtualnoexcept

◆ operator=() [1/2]

Base& SWC::client::Query::Select::Handlers::Base::operator= ( Base &&  )
delete

◆ operator=() [2/2]

Base& SWC::client::Query::Select::Handlers::Base::operator= ( const Base )
delete

Referenced by SWC::Ranger::Query::Select::CheckMeta::response(), and SWC::client::Query::Select::Handlers::Common::send_result().

+ Here is the caller graph for this function:

◆ response()

virtual void SWC::client::Query::Select::Handlers::Base::response ( int  err = Error::OK)
pure virtual

◆ scan() [1/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( const DB::Schema::Ptr schema,
const DB::Specs::Interval intval 
)
inline

Definition at line 79 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ scan() [2/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( const DB::Schema::Ptr schema,
DB::Specs::Interval &&  intval 
)
inline

Definition at line 85 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ scan() [3/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( DB::Types::KeySeq  key_seq,
cid_t  cid,
const DB::Specs::Interval intval 
)
inline

Definition at line 91 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ scan() [4/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( DB::Types::KeySeq  key_seq,
cid_t  cid,
DB::Specs::Interval &&  intval 
)
inline

Definition at line 97 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ scan() [5/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( int &  err,
const DB::Specs::Scan specs 
)
inline

Definition at line 103 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ scan() [6/6]

SWC_CAN_INLINE void SWC::client::Query::Select::Handlers::Base::scan ( int &  err,
DB::Specs::Scan &&  specs 
)
inline

Definition at line 108 of file Base.h.

References _execute().

+ Here is the call graph for this function:

◆ valid()

virtual bool SWC::client::Query::Select::Handlers::Base::valid ( )
pure virtualnoexcept

Member Data Documentation

◆ buff_ahead

Core::Atomic<uint8_t> SWC::client::Query::Select::Handlers::Base::buff_ahead

◆ buff_sz

Core::Atomic<uint32_t> SWC::client::Query::Select::Handlers::Base::buff_sz

◆ clients

Clients::Ptr SWC::client::Query::Select::Handlers::Base::clients

◆ completion

Core::CompletionCounter<uint64_t> SWC::client::Query::Select::Handlers::Base::completion

Definition at line 33 of file Base.h.

Referenced by default_executor(), and SWC::client::Query::Select::Handlers::Common::wait().

◆ executor

const Clients::Flag SWC::client::Query::Select::Handlers::Base::executor

Definition at line 38 of file Base.h.

Referenced by default_executor(), and SWC::client::Query::Select::Handlers::Common::make().

◆ profile

◆ state_error

◆ timeout

Core::Atomic<uint32_t> SWC::client::Query::Select::Handlers::Base::timeout

Definition at line 35 of file Base.h.


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