Harlinn.Windows 0.1
|
Define, base class for defines for use with the DataReader class. More...
#include <HOCI.h>
Public Member Functions | |
virtual void | Initialize (UInt32 positon) |
constexpr Int16 | Indicator () const noexcept |
virtual const void * | Data () const noexcept=0 |
virtual HO_EXPORT bool | AsBoolean () const |
virtual HO_EXPORT Byte | AsByte () const |
virtual HO_EXPORT std::vector< Byte > | AsBytes () const |
virtual HO_EXPORT SByte | AsSByte () const |
virtual HO_EXPORT Int16 | AsInt16 () const |
virtual HO_EXPORT UInt16 | AsUInt16 () const |
virtual HO_EXPORT Int32 | AsInt32 () const |
virtual HO_EXPORT UInt32 | AsUInt32 () const |
virtual HO_EXPORT Int64 | AsInt64 () const |
virtual HO_EXPORT UInt64 | AsUInt64 () const |
virtual HO_EXPORT float | AsSingle () const |
virtual HO_EXPORT double | AsDouble () const |
virtual HO_EXPORT DateTime | AsDateTime () const |
virtual HO_EXPORT TimeSpan | AsTimeSpan () const |
virtual HO_EXPORT WideString | AsString () const |
virtual HO_EXPORT Guid | AsGuid () const |
virtual HO_EXPORT OCI::Object * | AsObject () const |
virtual HO_EXPORT OCI::Collection * | AsCollection () const |
virtual HO_EXPORT LobStream | AsStream () const |
![]() | |
HO_EXPORT void | DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *returnLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 mode=0) |
const OCI::Statement & | Statement () const noexcept |
const OCI::ErrorHandle & | Error () const noexcept final override |
Provides access to the OCIError that will be used for OCI calls for this object. | |
const OCI::ServiceContext & | ServiceContext () const |
const OCI::Environment & | Environment () const |
HO_EXPORT void | SetLOBPrefetchSize (UInt32 lobPrefetchSize) |
HO_EXPORT UInt32 | LOBPrefetchSize () const |
HO_EXPORT void | SetLOBPrefetchLength (bool value=true) |
HO_EXPORT bool | LOBPrefetchLength () const |
![]() | |
constexpr void * | Handle () const noexcept |
Provides access to the value of the handle object. | |
constexpr | operator bool () const noexcept |
Test if the handle value is assigned. | |
constexpr bool | IsValid () const noexcept |
Test if the handle value is assigned. | |
constexpr OCI::HandleType | HandleType () const noexcept |
Returns a value identifying the type of the wrapped handle object. | |
Static Public Member Functions | |
static HO_EXPORT std::unique_ptr< Define > | CreateDefine (const OCI::Statement &statement, const ColumnDescriptor &columnDescriptor, UInt32 positon) |
Protected Member Functions | |
constexpr | Define () noexcept |
Define (const OCI::Statement &statement) | |
void | DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *returnLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 mode=0) |
HO_EXPORT void | DefineByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, UInt32 *rowLengths=nullptr, UInt16 *rowReturnCodes=nullptr, UInt32 mode=0) |
![]() | |
DefineBase (const OCI::Statement &statement) | |
constexpr | DefineBase () noexcept |
![]() | |
constexpr | HandleBase () noexcept |
Default constructor. | |
constexpr | HandleBase (OCI::HandleType handleType, void *handle, bool ownsHandle) noexcept |
Constructs a new HandleBase object. | |
HandleBase (const HandleBase &other)=delete | |
constexpr | HandleBase (HandleBase &&other) noexcept |
Move constructor. | |
virtual | ~HandleBase () |
Destructor. | |
constexpr void | SetHandle (void *newHandleValue, bool ownsHandle) noexcept |
Assigns the handle value and ownership to this object. | |
constexpr bool | OwnsHandle () const noexcept |
Returns true if this object is the owner of the handle value. | |
void * | DetachHandle () |
If this object is the owner of a handle this function rescinds that ownership, and returns the handle value without closing the handle. | |
void | DestroyHandle () |
Destroys the handle if it is owned by this object. | |
HandleBase & | operator= (const HandleBase &other)=delete |
constexpr HandleBase & | operator= (HandleBase &&other) noexcept |
constexpr void | swap (HandleBase &other) noexcept |
template<typename Derived > | |
constexpr void | Take (Derived &&derived) noexcept |
Template function used to implement move assignement in derived classes. | |
void | InitializeHandle (void *handle, bool ownsHandle) |
Provides a "safe" mechanism for assigning a handle value. This functions throws if a handle value is already assigned to this object. | |
HO_EXPORT Int32 | GetAttribute (void *buffer, UInt32 *size, Attribute attribute) const |
Gets the value of an attribute from the handle. | |
HO_EXPORT Int32 | SetAttribute (void *buffer, UInt32 size, Attribute attribute) const |
Sets the value of an attribute on the handle. | |
DateTime | GetDateTimeAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a DateTime. | |
void | SetDateTimeAttribute (Attribute attribute, const DateTime &value) const |
Sets the value of an attribute on the handle as a DateTime. | |
template<WideStringLike StringT = WideString> | |
StringT | GetStringAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a WideString. | |
template<WideStringLike StringT = WideString> | |
StringT | GetStringAttributeFromByteString (Attribute attribute) const |
Gets the value of an attribute from the handle as a WideString For use with attributes that are not returned as UTF-16. | |
template<WideStringLike StringT> | |
void | SetStringAttribute (Attribute attribute, const StringT &value) const |
Sets the value of an attribute on the handle as a WideString. | |
void | SetStringAttribute (Attribute attribute, const wchar_t *value, size_t valueLength) const |
bool | GetBooleanAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a bool. | |
void | SetBooleanAttribute (Attribute attribute, bool value) const |
Sets the value of an attribute on the handle as a bool. | |
Byte | GetByteAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a Byte. | |
void | SetByteAttribute (Attribute attribute, Byte value) const |
Sets the value of an attribute on the handle as a Byte. | |
SByte | GetSByteAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a SByte. | |
void | SetSByteAttribute (Attribute attribute, SByte value) const |
Sets the value of an attribute on the handle as a Byte. | |
Int16 | GetInt16Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an Int16. | |
void | SetInt16Attribute (Attribute attribute, Int16 value) const |
Sets the value of an attribute on the handle as an Int16. | |
UInt16 | GetUInt16Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an UInt16. | |
void | SetUInt16Attribute (Attribute attribute, UInt16 value) const |
Sets the value of an attribute on the handle as an UInt16. | |
Int32 | GetInt32Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an Int32. | |
void | SetInt32Attribute (Attribute attribute, Int32 value) const |
Sets the value of an attribute on the handle as an Int32. | |
UInt32 | GetUInt32Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an UInt32. | |
void | SetUInt32Attribute (Attribute attribute, UInt32 value) const |
Sets the value of an attribute on the handle as an UInt32. | |
Int64 | GetInt64Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an Int64. | |
void | SetInt64Attribute (Attribute attribute, Int64 value) const |
Sets the value of an attribute on the handle as an Int64. | |
UInt64 | GetUInt64Attribute (Attribute attribute) const |
Gets the value of an attribute from the handle as an UInt64. | |
void | SetUInt64Attribute (Attribute attribute, UInt64 value) const |
Sets the value of an attribute on the handle as an UInt64. | |
void * | GetPointerAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a pointer. | |
void | SetPointerAttribute (Attribute attribute, void *value) const |
Sets the value of an attribute on the handle as a pointer. | |
OCI::Number * | GetNumberAttribute (Attribute attribute) const |
Gets the value of an attribute from the handle as a pointer to an OCI::Number. | |
Protected Attributes | |
Int16 | indicator_ |
Private Types | |
using | Base = DefineBase |
Friends | |
class | DataReader |
Additional Inherited Members | |
![]() | |
static HO_EXPORT void | HandleFree (void *handle, OCI::HandleType handleType) noexcept |
Calls OCIHandleFree to release the handle. | |
Define, base class for defines for use with the DataReader class.
|
private |
|
inlineconstexprprotectednoexcept |
|
inlineprotected |
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::GuidDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::CollectionDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::GuidDefine, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::ObjectDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::LobBaseDefine< oracleType >.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CLobBaseDefine< oracleType, characterSetFormDefault >, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::GuidDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
virtual |
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::IntervalBaseDefine< descriptorType, oracleType >, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, Harlinn::OCI::TimestampBaseDefine< descriptorType, oracleType >, and Harlinn::OCI::VarBinaryDefine.
|
static |
|
pure virtualnoexcept |
Implemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::DescriptorDefine< VT, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCIDateTime, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCIInterval, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCILobLocator, OCI::HandleType::LOB, oracleType >, Harlinn::OCI::FixedBinaryDefine< binarySize >, Harlinn::OCI::FixedBinaryDefine< sizeof(Guid)>, Harlinn::OCI::FixedStringDefine< fixedStringSize >, Harlinn::OCI::LongVarBinaryDefine, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::SimpleDefine< BT, externalType >, and Harlinn::OCI::VarBinaryDefine.
|
inlineprotected |
|
protected |
|
inlineconstexprnoexcept |
|
inlinevirtual |
Implements Harlinn::OCI::DefineBase.
Reimplemented in Harlinn::OCI::BinaryDefine, Harlinn::OCI::CollectionDefine, Harlinn::OCI::CStringDefine, Harlinn::OCI::DateDefine, Harlinn::OCI::DescriptorDefine< VT, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCIDateTime, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCIInterval, descriptorType, oracleType >, Harlinn::OCI::DescriptorDefine< OCILobLocator, OCI::HandleType::LOB, oracleType >, Harlinn::OCI::FixedBinaryDefine< binarySize >, Harlinn::OCI::FixedBinaryDefine< sizeof(Guid)>, Harlinn::OCI::FixedStringDefine< fixedStringSize >, Harlinn::OCI::LongVarBinaryDefine, Harlinn::OCI::NumberBaseDefine< externalType >, Harlinn::OCI::ObjectDefine, Harlinn::OCI::SimpleDefine< BT, externalType >, and Harlinn::OCI::VarBinaryDefine.
|
friend |
|
protected |