LibreOffice Module connectivity (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
connectivity::macab::MacabImplModule Class Reference

#include <MacabDriver.hxx>

Public Member Functions

 MacabImplModule ()
 
bool isMacOSPresent ()
 determines whether there is a mac OS present in the environment More...
 
void init ()
 initializes the implementation module. More...
 
void shutdown ()
 shuts down the impl module More...
 
MacabConnectioncreateConnection (MacabDriver *_pDriver) const
 creates a new connection @precond <member>init</member> has been called before More...
 

Private Member Functions

bool impl_loadModule ()
 loads the implementation module and retrieves the needed symbols More...
 
void impl_unloadModule ()
 unloads the implementation module, and resets all function pointers to <NULL> @precond m_hConnectorModule is not <NULL> More...
 

Private Attributes

bool m_bAttemptedLoadModule
 Did we already attempt to load the module and to retrieve the symbols? More...
 
oslModule m_hConnectorModule
 
ConnectionFactoryFunction m_pConnectionFactoryFunc
 

Detailed Description

Definition at line 46 of file MacabDriver.hxx.

Constructor & Destructor Documentation

◆ MacabImplModule()

MacabImplModule::MacabImplModule ( )

Definition at line 70 of file MacabDriver.cxx.

Member Function Documentation

◆ createConnection()

MacabConnection * MacabImplModule::createConnection ( MacabDriver _pDriver) const

creates a new connection @precond <member>init</member> has been called before

Exceptions
css::uno::RuntimeExceptionif no connection object could be created (which is a severe error, normally impossible)

Definition at line 155 of file MacabDriver.cxx.

References m_hConnectorModule.

Referenced by connectivity::macab::MacabDriver::connect().

◆ impl_loadModule()

bool MacabImplModule::impl_loadModule ( )
private

loads the implementation module and retrieves the needed symbols

Save against being called multiple times.

Returns
<TRUE> if the module could be loaded successfully.
Exceptions
css::uno::RuntimeExceptionif the module could be loaded, but required symbols are missing

Definition at line 109 of file MacabDriver.cxx.

References m_bAttemptedLoadModule, m_hConnectorModule, m_pConnectionFactoryFunc, and thisModule().

Referenced by init(), and isMacOSPresent().

◆ impl_unloadModule()

void MacabImplModule::impl_unloadModule ( )
private

unloads the implementation module, and resets all function pointers to <NULL> @precond m_hConnectorModule is not <NULL>

Definition at line 134 of file MacabDriver.cxx.

References m_bAttemptedLoadModule, m_hConnectorModule, and m_pConnectionFactoryFunc.

Referenced by shutdown().

◆ init()

void MacabImplModule::init ( )

initializes the implementation module.

Exceptions
css::uno::RuntimeExceptionif the module could be loaded, but required symbols are missing
css::sdbc::SQLExceptionif no Mac OS was found at all

Definition at line 147 of file MacabDriver.cxx.

References impl_loadModule().

Referenced by connectivity::macab::MacabDriver::connect().

◆ isMacOSPresent()

bool MacabImplModule::isMacOSPresent ( )

determines whether there is a mac OS present in the environment

Definition at line 78 of file MacabDriver.cxx.

References impl_loadModule().

Referenced by connectivity::macab::MacabDriver::acceptsURL().

◆ shutdown()

void MacabImplModule::shutdown ( )

shuts down the impl module

Definition at line 167 of file MacabDriver.cxx.

References impl_unloadModule(), and m_hConnectorModule.

Referenced by connectivity::macab::MacabDriver::notifyTermination().

Member Data Documentation

◆ m_bAttemptedLoadModule

bool connectivity::macab::MacabImplModule::m_bAttemptedLoadModule
private

Did we already attempt to load the module and to retrieve the symbols?

Definition at line 50 of file MacabDriver.hxx.

Referenced by impl_loadModule(), and impl_unloadModule().

◆ m_hConnectorModule

oslModule connectivity::macab::MacabImplModule::m_hConnectorModule
private

Definition at line 51 of file MacabDriver.hxx.

Referenced by createConnection(), impl_loadModule(), impl_unloadModule(), and shutdown().

◆ m_pConnectionFactoryFunc

ConnectionFactoryFunction connectivity::macab::MacabImplModule::m_pConnectionFactoryFunc
private

Definition at line 52 of file MacabDriver.hxx.

Referenced by impl_loadModule(), and impl_unloadModule().


The documentation for this class was generated from the following files: