mirror of
https://github.com/pocoproject/poco.git
synced 2026-01-01 18:23:05 +01:00
* fix(ODBC): Insert NULL using BULK #4001 resolve bound types and sizes at compile time * fix: remove string suffix for static_assert * Insert NULL using BULK #4001 * fix: typo * fix(SQLite): missing functions; consolidate extract calls * chore(SQLite): remove unnecessary typedef * fix(SQLite): remove duplicate functions * fix(SQLite): compile errors and warnings * fix(SQLite): extract implementation signatures * fix(SQLite): long64 platforms compile errors * fix(SQLite): long64 platforms compile errors, part ii * fix(ODBC): windows build * fix(ODBC): MSSQL big string on windows * fix(Data): psql and mysql compile errors * fix(PostgreSQL): add missing functions * fix(ODBC): revert column size discovery (breaks Oracle) * fix(PostgreSQL): Nullable extraction #4001 * fix(MySQL): Nullable extraction #4001 * chore(Data): code tidy up * fix(ODBC): add missing changes
239 lines
4.9 KiB
C++
239 lines
4.9 KiB
C++
//
|
|
// AbstractExtractor.cpp
|
|
//
|
|
// Library: Data
|
|
// Package: DataCore
|
|
// Module: AbstractExtractor
|
|
//
|
|
// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
|
|
// and Contributors.
|
|
//
|
|
// SPDX-License-Identifier: BSL-1.0
|
|
//
|
|
|
|
|
|
#include "Poco/Data/AbstractExtractor.h"
|
|
#include "Poco/Data/Transcoder.h"
|
|
#include "Poco/Exception.h"
|
|
|
|
|
|
namespace Poco {
|
|
namespace Data {
|
|
|
|
|
|
AbstractExtractor::AbstractExtractor(Poco::TextEncoding::Ptr pDBEncoding,
|
|
Poco::TextEncoding::Ptr pToEncoding):
|
|
_pTranscoder(Transcoder::create(pDBEncoding, pToEncoding))
|
|
{
|
|
}
|
|
|
|
|
|
AbstractExtractor::~AbstractExtractor()
|
|
{
|
|
}
|
|
|
|
|
|
void AbstractExtractor::transcode(const std::string& from, std::string& to)
|
|
{
|
|
if (_pTranscoder)
|
|
_pTranscoder->transcode(from, to);
|
|
}
|
|
|
|
|
|
void AbstractExtractor::reverseTranscode(const std::string& from, std::string& to)
|
|
{
|
|
if (_pTranscoder)
|
|
_pTranscoder->reverseTranscode(from, to);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, UTF16String& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::vector<UTF16String>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::deque<UTF16String>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::list<UTF16String>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::vector<UUID>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::deque<UUID>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, std::list<UUID>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::Int8>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::UInt8>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::Int16>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::UInt16>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::Int32>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::UInt32>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::Int64>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::UInt64>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
#ifndef POCO_INT64_IS_LONG
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<long>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<unsigned long>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
#endif
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<bool>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<float>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<double>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<char>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<std::string>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<UTF16String>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<BLOB>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<CLOB>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<DateTime>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Date>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Time>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<UUID>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Any>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
bool AbstractExtractor::extract(std::size_t pos, Poco::Nullable<Poco::Dynamic::Var>& val)
|
|
{
|
|
throw NotImplementedException(poco_src_loc);
|
|
}
|
|
|
|
|
|
} } // namespace Poco::Data
|