OWBI1::BI1ProviderBaseIFC Class Reference

This is the base class implemented by all providers that are loaded by the C++ provider interface. More...

#include <OWBI1_ProviderBaseIFC.hpp>

Inheritance diagram for OWBI1::BI1ProviderBaseIFC:

Inheritance graph
Collaboration diagram for OWBI1::BI1ProviderBaseIFC:

Collaboration graph
List of all members.

Public Member Functions

 BI1ProviderBaseIFC ()
 BI1ProviderBaseIFC (const BI1ProviderBaseIFC &arg)
virtual ~BI1ProviderBaseIFC ()
virtual void initialize (const ProviderEnvironmentIFCRef &env)
 Called by the CIMOM when the provider is initialized.
virtual void shuttingDown (const ProviderEnvironmentIFCRef &env)
 Called by the CIMOM just before it starts shutting down services.
virtual BI1InstanceProviderIFCgetInstanceProvider ()
 We do the following because gcc seems to have a problem with dynamic_cast.
virtual BI1SecondaryInstanceProviderIFCgetSecondaryInstanceProvider ()
virtual BI1MethodProviderIFCgetMethodProvider ()
virtual BI1AssociatorProviderIFCgetAssociatorProvider ()
virtual BI1IndicationExportProviderIFCgetIndicationExportProvider ()
virtual BI1PolledProviderIFCgetPolledProvider ()
virtual BI1IndicationProviderIFCgetIndicationProvider ()
DateTime getLastAccessTime () const
void updateAccessTime ()
virtual bool canUnload ()

Private Attributes

DateTime m_dt

Detailed Description

This is the base class implemented by all providers that are loaded by the C++ provider interface.

It is recommended that all type and data declarations in the provider be declared inside an anonymous namespace to prevent possible identifier collisions between providers or the openwbem libraries.

If your provider spawns a separate thread that needs access to a provider environment (for example, to get a CIMOM handle or logger), see the comment for the initialize() function.

DO NOT put inline functions in this class, they will be duplicated in every provider and cause code bloat.

Definition at line 67 of file OWBI1_ProviderBaseIFC.hpp.

Constructor & Destructor Documentation

OWBI1::BI1ProviderBaseIFC::BI1ProviderBaseIFC  ) 

Definition at line 43 of file OWBI1_ProviderBaseIFC.cpp.

OWBI1::BI1ProviderBaseIFC::BI1ProviderBaseIFC const BI1ProviderBaseIFC arg  ) 

Definition at line 49 of file OWBI1_ProviderBaseIFC.cpp.

OWBI1::BI1ProviderBaseIFC::~BI1ProviderBaseIFC  )  [virtual]

Definition at line 56 of file OWBI1_ProviderBaseIFC.cpp.

Member Function Documentation

bool OWBI1::BI1ProviderBaseIFC::canUnload  )  [virtual]

Reimplemented in OWBI1::BI1IndicationExportProviderIFC, and OWBI1::BI1PolledProviderIFC.

Definition at line 129 of file OWBI1_ProviderBaseIFC.cpp.

BI1AssociatorProviderIFC * OWBI1::BI1ProviderBaseIFC::getAssociatorProvider  )  [virtual]

Reimplemented in OWBI1::BI1AssociatorProviderIFC.

Definition at line 93 of file OWBI1_ProviderBaseIFC.cpp.

BI1IndicationExportProviderIFC * OWBI1::BI1ProviderBaseIFC::getIndicationExportProvider  )  [virtual]

Reimplemented in OWBI1::BI1IndicationExportProviderIFC.

Definition at line 101 of file OWBI1_ProviderBaseIFC.cpp.

BI1IndicationProviderIFC * OWBI1::BI1ProviderBaseIFC::getIndicationProvider  )  [virtual]

Reimplemented in OWBI1::BI1IndicationProviderIFC.

Definition at line 115 of file OWBI1_ProviderBaseIFC.cpp.

BI1InstanceProviderIFC * OWBI1::BI1ProviderBaseIFC::getInstanceProvider  )  [virtual]

We do the following because gcc seems to have a problem with dynamic_cast.

If often fails, especially when compiling with optimizations. It will return a (supposedly) valid pointer, when it should return NULL.

Reimplemented in OWBI1::BI1InstanceProviderIFC.

Definition at line 71 of file OWBI1_ProviderBaseIFC.cpp.

DateTime OWBI1::BI1ProviderBaseIFC::getLastAccessTime  )  const

Definition at line 122 of file OWBI1_ProviderBaseIFC.cpp.

References m_dt.

BI1MethodProviderIFC * OWBI1::BI1ProviderBaseIFC::getMethodProvider  )  [virtual]

Reimplemented in OWBI1::BI1MethodProviderIFC.

Definition at line 85 of file OWBI1_ProviderBaseIFC.cpp.

BI1PolledProviderIFC * OWBI1::BI1ProviderBaseIFC::getPolledProvider  )  [virtual]

Reimplemented in OWBI1::BI1PolledProviderIFC.

Definition at line 108 of file OWBI1_ProviderBaseIFC.cpp.

BI1SecondaryInstanceProviderIFC * OWBI1::BI1ProviderBaseIFC::getSecondaryInstanceProvider  )  [virtual]

Reimplemented in OWBI1::BI1SecondaryInstanceProviderIFC.

Definition at line 78 of file OWBI1_ProviderBaseIFC.cpp.

void OWBI1::BI1ProviderBaseIFC::initialize const ProviderEnvironmentIFCRef env  )  [virtual]

Called by the CIMOM when the provider is initialized.

env Gives the provider access to things such as a CIMOM handle, logger, etc. This provider environment carries its own OperationContext and hence things like the CIMOM handle remain valid for the lifetime of *env. Thus the provider can store a copy of env for later use, e.g., by a separate thread spawned by the provider.

Definition at line 68 of file OWBI1_ProviderBaseIFC.cpp.

void OWBI1::BI1ProviderBaseIFC::shuttingDown const ProviderEnvironmentIFCRef env  )  [virtual]

Called by the CIMOM just before it starts shutting down services.

Providers should override this to do any portion of their shutdown process that requires access to the CIMOM.

Definition at line 135 of file OWBI1_ProviderBaseIFC.cpp.

void OWBI1::BI1ProviderBaseIFC::updateAccessTime  ) 

Definition at line 61 of file OWBI1_ProviderBaseIFC.cpp.

References m_dt, and OWBI1::DateTime::setToCurrent().

Member Data Documentation

DateTime OWBI1::BI1ProviderBaseIFC::m_dt [private]

Definition at line 115 of file OWBI1_ProviderBaseIFC.hpp.

Referenced by getLastAccessTime(), and updateAccessTime().

The documentation for this class was generated from the following files:
Generated on Thu Feb 9 09:18:54 2006 for openwbem by  doxygen 1.4.6