(file) Return to readme.StaticProviderRegistration CVS log (file) (dir) Up to [Pegasus] / pegasus

File: [Pegasus] / pegasus / Attic / readme.StaticProviderRegistration (download)
Revision: 1.1.2.1, Thu Dec 20 18:36:05 2007 UTC (16 years, 5 months ago) by mike
Branch: TASK-PEP305_VXWORKS-branch
CVS Tags: TASK-PEP305_VXWORKS-2008-10-23
Changes since 1.1: +53 -0 lines
PEP#: 305
TITLE: VxWorks Port

DESCRIPTION: Ongoing VxWorks porting.

                        Static Provider Registration
                        ============================


SYNOPSIS:
=========

This document explains how to register static providers using the
EmbeddedServer class. An example of this is included under:

    pegasus/vxworks/cimserver/MyEmbeddedServer.cpp

PREPARING THE STATIC PROVIDER MODULE
====================================

The only requirement of the provider is that it include the 
"PegasusCreateProvider" entry point. This is standard for Pegasus C++
providers and CIMPLE providers include this entry point when module.cpp
is compiled with the following option:

    -DCIMPLE_PEGASUS_MODULE

Caution: Do not rename this entry point as was required in a previous version
of the static provider mechanism.

There may be at most one PegasusCreateProvider entry point in the entire
server.

STATICALLY REGISTERING THE PROVIDER
===================================

To statically register the provider, first register the PegasusCreateProvider
entry point by overriding EmbeddedServer::initialize() and adding the following
code fragment (see pegasus/vxworks/cimserver/MyEmbeddedServer.cpp for an
example).

    if (!registerPegasusCreateProviderEntryPoint(PegasusCreateProvider))
    {
        /* Error */
    }

Next, register each provider with the following fragment (replacing CLASSNAME
with the name of that provider's class).

    if (!registerProvider(
        nameSpaces,
        CLASSNAME,
        MyEmbeddedServer::PEGASUS_PROVIDER_INTERFACE,
        MyEmbeddedServer::INSTANCE_PROVIDER_TYPE))
    {
        /* Error */
    }


No CVS admin address has been configured
Powered by
ViewCVS 0.9.2