Solaris WBEM Developer's Guide

About Providers

Providers are special classes that communicate with managed resources, such as disk drives and CPUs, to access data. The providers then forward the data to the CIM Object Manager (CIMOM), the primary WBEM agent that coordinates Solaris WBEM Services, for integration and interpretation. These providers can relieve the CIMOM by assuming the task of managing distinct subsets of WBEM resources. Providers use the javax.wbem.provider API to transfer this data. When the CIMOM receives a request from an application for data that is not available in the CIM Object Manager Repository, the CIMOM forwards the request, using the provider interfaces, to the appropriate provider.

Solaris software providers exist for a variety of areas:

Providers create, modify, and delete instances rather than classes, which serve as templates for the instances. Instances can exist in persistent storage or be used dynamically.

Although providers have their own process and memory, providers perform work delegated by the CIMOM. The CIMOM must know the location of each provider in order to coordinate WBEM. You inform the CIMOM about new or modified providers by including those providers in a MOF file. A MOF file defines the classes and instances that a provider supports. You register a MOF file using the mofcomp(1M) command.

Providers perform the following tasks:


Note –

Providers must reside on the same machine as the CIMOM.


Provider Data Sources

Providers can retrieve data from the following sources:

Types of Providers

Providers are categorized according to the types of requests the providers handle. Client programs communicate with the CIMOM and access WBEM data through the client API. The CIMOM maps the provider methods to the corresponding client methods in the client API. However, the argument lists and return values of corresponding methods might differ. See file:/usr/sadm/lib/wbem/doc/index.html.

Ensure that your argument list and return type are correct for the method and class used.

The types of providers in the Solaris WBEM SDK are shown in the following table.

Table 6–1 Provider Types

Type 

Class Name 

Description 

Instance 

CIMInstanceProvider

Supply dynamic instances of a given class, and support instance retrieval, enumeration, modification, and deletion 

Method 

MethodProvider

Supply methods of one or more classes  

Associator 

CIMAssociatorProvider

Supply instances of dynamic association classes 

Indication 

EventProvider

Handle indications of CIM events 

Authorizable 

None 

A marker interface that indicates to the CIMOM that the provider does its own authorization check 

A single provider can act as one or more of the provider types by registering and implementing the relevant methods.

Provider Naming Conventions

You can include providers in a single Java class file or store each provider in a separate class. The provider name identifies the Java class that serves as the provider for the class. Currently, the CIMOM supports only providers that are written in the Java language.

Provider and class names must follow these rules:


Note –

You must prepend “java:” to every provider qualifier to notify the CIMOM that the provider is written in the Java language.


Follow standard Java class and package naming conventions to create your provider names. The prefix of a package name is written in lowercase ASCII letters and must be one of the top-level domain names (com, edu, gov, mil, net, org), or one of the English two-letter country codes specified in ISO Standards 3166, 1981.

Subsequent components of the package name can vary according to your organization's internal naming conventions. Such conventions might specify that certain directory name components are division, department, project, machine, or login names. For example, the provider name java:com.sun.wbem.cimom indicates the following information: