Library: Data
Package: DataCore
Header: Poco/Data/AbstractExtractor.h
Description
Interface used to extract data from a single result row. If an extractor receives null it is not allowed to change val!
Inheritance
Known Derived Classes: Poco::Data::MySQL::Extractor, Poco::Data::ODBC::Extractor, Poco::Data::PostgreSQL::BinaryExtractor, Poco::Data::PostgreSQL::Extractor, Poco::Data::SQLite::Extractor
Member Summary
Member Functions: extract, isNull, reset, reverseTranscode, transcode, transcodeRequired
Types Aliases
Ptr
using Ptr = SharedPtr < AbstractExtractor >;
Constructors
AbstractExtractor
AbstractExtractor(
Poco::TextEncoding::Ptr pDBEncoding = nullptr,
Poco::TextEncoding::Ptr pToEncoding = nullptr
);
Creates the AbstractExtractor.
Destructor
~AbstractExtractor
virtual ~AbstractExtractor();
Destroys the AbstractExtractor.
Member Functions
extract
virtual bool extract(
std::size_t pos,
Poco::Int8 & val
) = 0;
Extracts an Int8. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::Int8 > & val
) = 0;
Extracts an Int8 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::Int8 > & val
) = 0;
Extracts an Int8 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::Int8 > & val
) = 0;
Extracts an Int8 list.
extract
virtual bool extract(
std::size_t pos,
Poco::UInt8 & val
) = 0;
Extracts an UInt8. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::UInt8 > & val
) = 0;
Extracts an UInt8 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::UInt8 > & val
) = 0;
Extracts an UInt8 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::UInt8 > & val
) = 0;
Extracts an UInt8 list.
extract
virtual bool extract(
std::size_t pos,
Poco::Int16 & val
) = 0;
Extracts an Int16. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::Int16 > & val
) = 0;
Extracts an Int16 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::Int16 > & val
) = 0;
Extracts an Int16 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::Int16 > & val
) = 0;
Extracts an Int16 list.
extract
virtual bool extract(
std::size_t pos,
Poco::UInt16 & val
) = 0;
Extracts an UInt16. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::UInt16 > & val
) = 0;
Extracts an UInt16 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::UInt16 > & val
) = 0;
Extracts an UInt16 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::UInt16 > & val
) = 0;
Extracts an UInt16 list.
extract
virtual bool extract(
std::size_t pos,
Poco::Int32 & val
) = 0;
Extracts an Int32. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::Int32 > & val
) = 0;
Extracts an Int32 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::Int32 > & val
) = 0;
Extracts an Int32 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::Int32 > & val
) = 0;
Extracts an Int32 list.
extract
virtual bool extract(
std::size_t pos,
Poco::UInt32 & val
) = 0;
Extracts an UInt32. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::UInt32 > & val
) = 0;
Extracts an UInt32 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::UInt32 > & val
) = 0;
Extracts an UInt32 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::UInt32 > & val
) = 0;
Extracts an UInt32 list.
extract
virtual bool extract(
std::size_t pos,
Poco::Int64 & val
) = 0;
Extracts an Int64. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::Int64 > & val
) = 0;
Extracts an Int64 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::Int64 > & val
) = 0;
Extracts an Int64 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::Int64 > & val
) = 0;
Extracts an Int64 list.
extract
virtual bool extract(
std::size_t pos,
Poco::UInt64 & val
) = 0;
Extracts an UInt64. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::UInt64 > & val
) = 0;
Extracts an UInt64 vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::UInt64 > & val
) = 0;
Extracts an UInt64 deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::UInt64 > & val
) = 0;
Extracts an UInt64 list.
extract
virtual bool extract(
std::size_t pos,
bool & val
) = 0;
Extracts a boolean. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < bool > & val
) = 0;
Extracts a boolean vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < bool > & val
) = 0;
Extracts a boolean deque.
extract
virtual bool extract(
std::size_t pos,
std::list < bool > & val
) = 0;
Extracts a boolean list.
extract
virtual bool extract(
std::size_t pos,
float & val
) = 0;
Extracts a float. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < float > & val
) = 0;
Extracts a float vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < float > & val
) = 0;
Extracts a float deque.
extract
virtual bool extract(
std::size_t pos,
std::list < float > & val
) = 0;
Extracts a float list.
extract
virtual bool extract(
std::size_t pos,
double & val
) = 0;
Extracts a double. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < double > & val
) = 0;
Extracts a double vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < double > & val
) = 0;
Extracts a double deque.
extract
virtual bool extract(
std::size_t pos,
std::list < double > & val
) = 0;
Extracts a double list.
extract
virtual bool extract(
std::size_t pos,
char & val
) = 0;
Extracts a single character. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < char > & val
) = 0;
Extracts a character vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < char > & val
) = 0;
Extracts a character deque.
extract
virtual bool extract(
std::size_t pos,
std::list < char > & val
) = 0;
Extracts a character list.
extract
virtual bool extract(
std::size_t pos,
std::string & val
) = 0;
Extracts a string. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < std::string > & val
) = 0;
Extracts a string vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < std::string > & val
) = 0;
Extracts a string deque.
extract
virtual bool extract(
std::size_t pos,
std::list < std::string > & val
) = 0;
Extracts a string list.
extract
virtual bool extract(
std::size_t pos,
UTF16String & val
);
Extracts a UTF16String. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < UTF16String > & val
);
Extracts a UTF16String vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < UTF16String > & val
);
Extracts a UTF16String deque.
extract
virtual bool extract(
std::size_t pos,
std::list < UTF16String > & val
);
Extracts a UTF16String list.
extract
virtual bool extract(
std::size_t pos,
BLOB & val
) = 0;
Extracts a BLOB. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
CLOB & val
) = 0;
Extracts a CLOB. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < BLOB > & val
) = 0;
Extracts a BLOB vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < BLOB > & val
) = 0;
Extracts a BLOB deque.
extract
virtual bool extract(
std::size_t pos,
std::list < BLOB > & val
) = 0;
Extracts a BLOB list.
extract
virtual bool extract(
std::size_t pos,
std::vector < CLOB > & val
) = 0;
Extracts a CLOB vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < CLOB > & val
) = 0;
Extracts a CLOB deque.
extract
virtual bool extract(
std::size_t pos,
std::list < CLOB > & val
) = 0;
Extracts a CLOB list.
extract
virtual bool extract(
std::size_t pos,
DateTime & val
) = 0;
Extracts a DateTime. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < DateTime > & val
) = 0;
Extracts a DateTime vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < DateTime > & val
) = 0;
Extracts a DateTime deque.
extract
virtual bool extract(
std::size_t pos,
std::list < DateTime > & val
) = 0;
Extracts a DateTime list.
extract
virtual bool extract(
std::size_t pos,
Date & val
) = 0;
Extracts a Date. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Date > & val
) = 0;
Extracts a Date vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Date > & val
) = 0;
Extracts a Date deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Date > & val
) = 0;
Extracts a Date list.
extract
virtual bool extract(
std::size_t pos,
Time & val
) = 0;
Extracts a Time. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Time > & val
) = 0;
Extracts a Time vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Time > & val
) = 0;
Extracts a Time deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Time > & val
) = 0;
Extracts a Time list.
extract
virtual bool extract(
std::size_t pos,
UUID & val
) = 0;
Extracts a UUID. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < UUID > & val
);
Extracts a UUID vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < UUID > & val
);
Extracts a UUID deque.
extract
virtual bool extract(
std::size_t pos,
std::list < UUID > & val
);
Extracts a UUID list.
extract
virtual bool extract(
std::size_t pos,
Any & val
) = 0;
Extracts an Any. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Any > & val
) = 0;
Extracts an Any vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Any > & val
) = 0;
Extracts an Any deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Any > & val
) = 0;
Extracts an Any list.
extract
virtual bool extract(
std::size_t pos,
Poco::Dynamic::Var & val
) = 0;
Extracts a Var. Returns false if null was received.
extract
virtual bool extract(
std::size_t pos,
std::vector < Poco::Dynamic::Var > & val
) = 0;
Extracts a Var vector.
extract
virtual bool extract(
std::size_t pos,
std::deque < Poco::Dynamic::Var > & val
) = 0;
Extracts a Var deque.
extract
virtual bool extract(
std::size_t pos,
std::list < Poco::Dynamic::Var > & val
) = 0;
Extracts a Var list.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::Int8 > & val
);
Extracts a nullable nullable Int8.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::UInt8 > & val
);
Extracts a nullable nullable UInt8.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::Int16 > & val
);
Extracts a nullable nullable Int16.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::UInt16 > & val
);
Extracts a nullable nullable UInt16.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::Int32 > & val
);
Extracts a nullable nullable Int32.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::UInt32 > & val
);
Extracts a nullable nullable UInt32.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::Int64 > & val
);
Extracts a nullable nullable Int64.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::UInt64 > & val
);
Extracts a nullable nullable UInt64.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < bool > & val
);
Extracts a nullable boolean.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < float > & val
);
Extracts a nullable float.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < double > & val
);
Extracts a nullable double.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < char > & val
);
Extracts a nullable single character.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < std::string > & val
);
Extracts a nullable string.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < UTF16String > & val
);
Extracts a nullable UTF16String.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < BLOB > & val
);
Extracts a nullable BLOB.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < CLOB > & val
);
Extracts a nullable CLOB.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < DateTime > & val
);
Extracts a nullable DateTime.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Date > & val
);
Extracts a nullable Date.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Time > & val
);
Extracts a nullable Time.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < UUID > & val
);
Extracts a nullable UUID.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Any > & val
);
Extracts a nullable nullable Any.
extract
virtual bool extract(
std::size_t pos,
Poco::Nullable < Poco::Dynamic::Var > & val
);
Extracts a nullable Var.
isNull
virtual bool isNull(
std::size_t col,
std::size_t row = POCO_DATA_INVALID_ROW
) = 0;
Returns true if the value at [col,row] position is null.
reset
virtual void reset();
Resets any information internally cached by the extractor.
reverseTranscode
void reverseTranscode(
const std::string & from,
std::string & to
);
transcode
void transcode(
const std::string & from,
std::string & to
);
transcodeRequired
bool transcodeRequired() const;