LibreOffice Module connectivity (master) 1
Classes | Typedefs | Enumerations | Functions
connectivity::firebird Namespace Reference

Classes

class  Blob
 
class  Catalog
 
class  Clob
 
class  Column
 
class  Columns
 
class  ColumnTypeInfo
 
class  Connection
 
class  FirebirdDriver
 
class  Indexes
 Firebird has a non-standard DROP INDEX statement, hence we need to override OIndexesHelper::dropObject. More...
 
class  Keys
 
class  ODatabaseMetaData
 
class  OPreparedStatement
 
class  OPropertyArrayUsageHelper
 
class  OResultSet
 This ResultSet does not deal with the management of the SQLDA it is supplied with. More...
 
class  OResultSetMetaData
 
class  OStatement
 
class  OStatementCommonBase
 
class  Table
 Implements sdbcx.Table. More...
 
class  Tables
 This implements com.sun.star.sdbcx.Container, which seems to be also known by the name of Tables and Collection. More...
 
class  User
 This implements com.sun.star.sdbcx.Container. More...
 
class  Users
 This implements com.sun.star.sdbcx.Container. More...
 
class  View
 
class  Views
 

Typedefs

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XBlob, css::io::XInputStream > Blob_BASE
 
typedef ::cppu::WeakComponentImplHelper< css::sdbc::XClob > Clob_BASE
 
typedef ::comphelper::OIdPropertyArrayUsageHelper< ColumnColumn_PROP
 
typedef ::cppu::WeakComponentImplHelper< css::document::XDocumentEventListener, css::lang::XServiceInfo, css::lang::XUnoTunnel, css::sdbc::XConnection, css::sdbc::XWarningsSupplier > Connection_BASE
 
typedef std::vector< ::connectivity::OTypeInfoTTypeInfoVector
 
typedef std::vector< css::uno::WeakReferenceHelper > OWeakRefArray
 
typedef ::cppu::WeakImplHelper< css::sdbc::XDatabaseMetaData > ODatabaseMetaData_BASE
 
typedef ::cppu::WeakComponentImplHelper< css::sdbc::XDriver, css::sdbcx::XDataDefinitionSupplier, css::lang::XServiceInfo > ODriver_BASE
 
typedef ::cppu::ImplHelper5< css::sdbc::XPreparedStatement, css::sdbc::XParameters, css::sdbc::XPreparedBatchExecution, css::sdbc::XResultSetMetaDataSupplier, css::lang::XServiceInfo > OPreparedStatement_Base
 
typedef ::cppu::WeakComponentImplHelper< css::sdbc::XResultSet, css::sdbc::XRow, css::sdbc::XResultSetMetaDataSupplier, css::util::XCancellable, css::sdbc::XCloseable, css::sdbc::XColumnLocate, css::lang::XServiceInfo > OResultSet_BASE
 
typedef ::cppu::WeakImplHelper< css::sdbc::XResultSetMetaData > OResultSetMetaData_BASE
 
typedef ::cppu::ImplHelper1< css::sdbc::XStatement > OStatement_Base
 
typedef ::cppu::WeakComponentImplHelper< css::sdbc::XWarningsSupplier, css::util::XCancellable, css::sdbc::XCloseable, css::sdbc::XMultipleResults > OStatementCommonBase_Base
 
typedef ::connectivity::sdbcx::OView View_Base
 
typedef ::cppu::ImplHelper1< css::sdbcx::XAlterView > View_IBASE
 

Enumerations

enum class  BlobSubtype {
  Blob = 0 ,
  Clob = 1 ,
  Image = -9546
}
 
enum class  NumberSubType {
  Other = 0 ,
  Numeric = 1 ,
  Decimal = 2
}
 Numeric and decimal types can be identified by their subtype in Firebird API. More...
 

Functions

void checkDisposed (bool _bThrow)
 
OUString sanitizeIdentifier (std::u16string_view rIdentifier)
 Make sure an identifier is safe to use within the database. More...
 
bool IndicatesError (const ISC_STATUS_ARRAY &rStatusVector)
 
OUString StatusVectorToString (const ISC_STATUS_ARRAY &rStatusVector, std::u16string_view rCause)
 
void evaluateStatusVector (const ISC_STATUS_ARRAY &rStatusVector, std::u16string_view aCause, const css::uno::Reference< css::uno::XInterface > &_rxContext)
 Evaluate a firebird status vector and throw exceptions as necessary. More...
 
short getFBTypeFromBlrType (short blrType)
 Internally (i.e. More...
 
void mallocSQLVAR (XSQLDA *pSqlda)
 
void freeSQLVAR (XSQLDA *pSqlda)
 
sal_Int64 pow10Integer (int nDecimalCount)
 

Typedef Documentation

◆ Blob_BASE

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XBlob, css::io::XInputStream > connectivity::firebird::Blob_BASE

Definition at line 25 of file drivers/firebird/Blob.hxx.

◆ Clob_BASE

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XClob > connectivity::firebird::Clob_BASE

Definition at line 23 of file drivers/firebird/Clob.hxx.

◆ Column_PROP

Definition at line 16 of file Column.hxx.

◆ Connection_BASE

typedef ::cppu::WeakComponentImplHelper< css::document::XDocumentEventListener, css::lang::XServiceInfo, css::lang::XUnoTunnel, css::sdbc::XConnection, css::sdbc::XWarningsSupplier > connectivity::firebird::Connection_BASE

Definition at line 52 of file drivers/firebird/Connection.hxx.

◆ ODatabaseMetaData_BASE

typedef ::cppu::WeakImplHelper< css::sdbc::XDatabaseMetaData> connectivity::firebird::ODatabaseMetaData_BASE

Definition at line 38 of file drivers/firebird/DatabaseMetaData.hxx.

◆ ODriver_BASE

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XDriver, css::sdbcx::XDataDefinitionSupplier, css::lang::XServiceInfo > connectivity::firebird::ODriver_BASE

Definition at line 42 of file drivers/firebird/Driver.hxx.

◆ OPreparedStatement_Base

typedef ::cppu::ImplHelper5< css::sdbc::XPreparedStatement, css::sdbc::XParameters, css::sdbc::XPreparedBatchExecution, css::sdbc::XResultSetMetaDataSupplier, css::lang::XServiceInfo> connectivity::firebird::OPreparedStatement_Base

Definition at line 42 of file drivers/firebird/PreparedStatement.hxx.

◆ OResultSet_BASE

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XResultSet, css::sdbc::XRow, css::sdbc::XResultSetMetaDataSupplier, css::util::XCancellable, css::sdbc::XCloseable, css::sdbc::XColumnLocate, css::lang::XServiceInfo> connectivity::firebird::OResultSet_BASE

Definition at line 49 of file drivers/firebird/ResultSet.hxx.

◆ OResultSetMetaData_BASE

typedef ::cppu::WeakImplHelper< css::sdbc::XResultSetMetaData> connectivity::firebird::OResultSetMetaData_BASE

Definition at line 34 of file drivers/firebird/ResultSetMetaData.hxx.

◆ OStatement_Base

Definition at line 31 of file Statement.hxx.

◆ OStatementCommonBase_Base

typedef ::cppu::WeakComponentImplHelper< css::sdbc::XWarningsSupplier, css::util::XCancellable, css::sdbc::XCloseable, css::sdbc::XMultipleResults> connectivity::firebird::OStatementCommonBase_Base

Definition at line 45 of file StatementCommonBase.hxx.

◆ OWeakRefArray

typedef std::vector< css::uno::WeakReferenceHelper > connectivity::firebird::OWeakRefArray

Definition at line 60 of file drivers/firebird/Connection.hxx.

◆ TTypeInfoVector

Definition at line 59 of file drivers/firebird/Connection.hxx.

◆ View_Base

Definition at line 21 of file View.hxx.

◆ View_IBASE

Definition at line 22 of file View.hxx.

Enumeration Type Documentation

◆ BlobSubtype

Enumerator
Blob 
Clob 
Image 

Definition at line 27 of file Util.hxx.

◆ NumberSubType

Numeric and decimal types can be identified by their subtype in Firebird API.

1 for NUMERIC, 2 for DECIMAL.

Enumerator
Other 
Numeric 
Decimal 

Definition at line 37 of file Util.hxx.

Function Documentation

◆ checkDisposed()

void connectivity::firebird::checkDisposed ( bool  _bThrow)
Exceptions
css::lang::DisposedException

Definition at line 208 of file Driver.cxx.

Referenced by connectivity::firebird::Blob::available(), connectivity::firebird::OStatementCommonBase::cancel(), connectivity::firebird::Connection::close(), connectivity::firebird::OPreparedStatement::close(), connectivity::firebird::OStatementCommonBase::close(), connectivity::firebird::Connection::commit(), connectivity::firebird::Connection::createClob(), connectivity::firebird::Connection::createStatement(), connectivity::firebird::OPreparedStatement::ensurePrepared(), connectivity::firebird::OPreparedStatement::execute(), connectivity::firebird::OStatement::executeQuery(), connectivity::firebird::Connection::getAutoCommit(), connectivity::firebird::Blob::getBytes(), connectivity::firebird::Clob::getCharacterStream(), connectivity::firebird::OPreparedStatement::getConnection(), connectivity::firebird::OStatement::getConnection(), connectivity::firebird::Connection::getMetaData(), connectivity::firebird::OPreparedStatement::getMetaData(), connectivity::firebird::OStatementCommonBase::getResultSet(), connectivity::firebird::Clob::getSubString(), connectivity::firebird::Connection::getTransactionIsolation(), IMPLEMENT_SERVICE_INFO(), connectivity::firebird::Connection::isReadOnly(), connectivity::firebird::Blob::length(), connectivity::firebird::Clob::length(), connectivity::firebird::Connection::prepareCall(), connectivity::firebird::Connection::prepareStatement(), connectivity::firebird::Blob::readBytes(), connectivity::firebird::Blob::readOneSegment(), connectivity::firebird::Connection::rollback(), connectivity::firebird::Connection::setAutoCommit(), connectivity::firebird::OPreparedStatement::setClob(), connectivity::firebird::OPreparedStatement::setDouble(), connectivity::firebird::OPreparedStatement::setNull(), connectivity::firebird::OPreparedStatement::setObjectNull(), connectivity::firebird::Connection::setReadOnly(), connectivity::firebird::OPreparedStatement::setString(), connectivity::firebird::Connection::setTransactionIsolation(), and connectivity::firebird::OPreparedStatement::setValue().

◆ evaluateStatusVector()

void connectivity::firebird::evaluateStatusVector ( const ISC_STATUS_ARRAY &  rStatusVector,
std::u16string_view  aCause,
const css::uno::Reference< css::uno::XInterface > &  _rxContext 
)

◆ freeSQLVAR()

void connectivity::firebird::freeSQLVAR ( XSQLDA *  pSqlda)

◆ getFBTypeFromBlrType()

short connectivity::firebird::getFBTypeFromBlrType ( short  blrType)

Internally (i.e.

in RDB$FIELD_TYPE) firebird stores the data type for a column as defined in blr_*, however in the firebird api the SQL_* types are used, hence we need to be able to convert between the two when retrieving column metadata.

◆ IndicatesError()

bool connectivity::firebird::IndicatesError ( const ISC_STATUS_ARRAY &  rStatusVector)
inline

◆ mallocSQLVAR()

void connectivity::firebird::mallocSQLVAR ( XSQLDA *  pSqlda)

◆ pow10Integer()

sal_Int64 connectivity::firebird::pow10Integer ( int  nDecimalCount)

◆ sanitizeIdentifier()

OUString connectivity::firebird::sanitizeIdentifier ( std::u16string_view  rIdentifier)

Make sure an identifier is safe to use within the database.

Currently firebird seems to return identifiers with 93 character (instead of 31), whereby the name is simply padded with trailing whitespace. This removes all trailing whitespace (i.e. if necessary so that the length is below 31 characters). Firebird automatically compensates for such shorter strings, however any trailing padding makes the gui editing of such names harder, hence we remove all trailing whitespace.

Referenced by connectivity::firebird::OResultSetMetaData::getColumnLabel(), connectivity::firebird::OResultSetMetaData::getColumnName(), and connectivity::firebird::ODatabaseMetaData::lcl_getKeys().

◆ StatusVectorToString()

OUString connectivity::firebird::StatusVectorToString ( const ISC_STATUS_ARRAY &  rStatusVector,
std::u16string_view  rCause 
)