| 
    Harlinn.Windows 0.1
    
   | 
 
Base class for OCI handle wrappers. More...
#include <HOCI.h>
Public Member Functions | |
| 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.   | |
| virtual const OCI::ErrorHandle & | Error () const noexcept=0 | 
| Provides access to the OCIError that will be used for OCI calls for this object.   | |
Protected Member Functions | |
| 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.   | |
Static Protected Member Functions | |
| static HO_EXPORT void | HandleFree (void *handle, OCI::HandleType handleType) noexcept | 
| Calls OCIHandleFree to release the handle.   | |
Private Attributes | |
| void * | handle_ | 
| OCI::HandleType | handleType_ | 
| bool | ownsHandle_ | 
Base class for OCI handle wrappers.
      
  | 
  inlineconstexprprotectednoexcept | 
Default constructor.
      
  | 
  inlineconstexprprotectednoexcept | 
Constructs a new HandleBase object.
| handleType | The type of the handle wrapped by this object. | 
| handle | The handle wrapped by this object. | 
| ownsHandle | Set to true if the new object will take owneship of the handle value | 
      
  | 
  protecteddelete | 
      
  | 
  inlineconstexprprotectednoexcept | 
Move constructor.
| other | existing object | 
      
  | 
  inlineprotectedvirtual | 
Destructor.
      
  | 
  inlineprotected | 
Destroys the handle if it is owned by this object.
      
  | 
  inlinenodiscardprotected | 
If this object is the owner of a handle this function rescinds that ownership, and returns the handle value without closing the handle.
      
  | 
  pure virtualnoexcept | 
Provides access to the OCIError that will be used for OCI calls for this object.
Implemented in Harlinn::OCI::BindBase, Harlinn::OCI::DefineBase, Harlinn::OCI::Describe, Harlinn::OCI::Descriptor, Harlinn::OCI::Environment, Harlinn::OCI::ErrorHandle, Harlinn::OCI::Server, Harlinn::OCI::ServiceContext, Harlinn::OCI::Session, Harlinn::OCI::Statement, Harlinn::OCI::Subscription, and Harlinn::OCI::TransactionHandle.
      
  | 
  protected | 
Gets the value of an attribute from the handle.
| buffer | Pointer to the storage for an attribute value. In EnvironmentMode::UTF16 environment mode, the value of a string attribute will be returned as a UTF-16 string. | 
| size | The size of the attribute value, always in bytes. This can be passed as null for most attributes because the sizes of non-string attributes are already known by the OCI library. For text attributes, a pointer to a UInt32 must be passed in to get the length of the string. | 
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a bool.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as a Byte.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a DateTime.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an Int16.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an Int32.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an Int64.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a pointer to an OCI::Number.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a pointer.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as a SByte.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a WideString.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineprotected | 
Gets the value of an attribute from the handle as a WideString For use with attributes that are not returned as UTF-16.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an UInt16.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an UInt32.
| attribute | Identifies the attribute to retrieve the value for | 
Gets the value of an attribute from the handle as an UInt64.
| attribute | Identifies the attribute to retrieve the value for | 
      
  | 
  inlineconstexprnoexcept | 
Provides access to the value of the handle object.
      
  | 
  staticprotectednoexcept | 
Calls OCIHandleFree to release the handle.
| handle | The handle to release | 
| handleType | The type of the handle to release | 
      
  | 
  inlineconstexprnoexcept | 
Returns a value identifying the type of the wrapped handle object.
      
  | 
  inlineprotected | 
Provides a "safe" mechanism for assigning a handle value. This functions throws if a handle value is already assigned to this object.
| handle | The OCI handle value | 
| ownsHandle | true if this object will take ownership of the handle value. | 
      
  | 
  inlineconstexprnoexcept | 
Test if the handle value is assigned.
      
  | 
  inlineexplicitconstexprnoexcept | 
Test if the handle value is assigned.
      
  | 
  protecteddelete | 
      
  | 
  inlineconstexprprotectednoexcept | 
      
  | 
  inlineconstexprprotectednoexcept | 
Returns true if this object is the owner of the handle value.
      
  | 
  protected | 
Sets the value of an attribute on the handle.
| buffer | Pointer to an attribute value. The attribute value is copied into the target handle. If the attribute value is a pointer, then only the pointer is copied, not the contents of the pointer. String attributes must be in UTF-16 in OCI_UTF16 environment. | 
| size | The size of an attribute value. This can be passed in as 0 for most attributes as the size is already known by the OCI library. For text attributes, a UInt32 must be passed in set to the length of the string in bytes, regardless of encoding. | 
| attribute | Identifies the attribute to assign the value to | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a bool.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as a bool | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a Byte.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as a Byte | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a DateTime.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as a DateTime | 
      
  | 
  inlineconstexprprotectednoexcept | 
Assigns the handle value and ownership to this object.
Warning: Careless use of this function will cause resource leakage.
| newHandleValue | The new handle value | 
| ownsHandle | Set to true if this object will take owneship of the new handle value | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an Int16.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an Int16 | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an Int32.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an Int32 | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an Int64.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an Int64 | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a pointer.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as a pointer | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a Byte.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as a SByte | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as a WideString.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute | 
      
  | 
  inlineprotected | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an UInt16.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an UInt16 | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an UInt32.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an UInt32 | 
      
  | 
  inlineprotected | 
Sets the value of an attribute on the handle as an UInt64.
| attribute | Identifies the attribute to assign the value to | 
| value | Value of the attribute as an UInt64 | 
      
  | 
  inlineconstexprprotectednoexcept | 
      
  | 
  inlineconstexprprotectednoexcept | 
Template function used to implement move assignement in derived classes.
| Derived | The type of the derived class | 
| derived | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private |