Package pywbem
[frames] | no frames]

Package pywbem

source code

The pywbem package provides a WBEM client library and some WBEM utility commands, all written in pure Python.

A WBEM client library allows issuing operations to a WBEM server, using the CIM operations over HTTP (CIM-XML) protocol defined in the DMTF standards DSP0200 and DSP0201. See http://www.dmtf.org/standards/wbem for information about WBEM and for these standards.

This package is based on the idea that a good WBEM client should be easy to use and not necessarily require a large amount of programming knowledge. It is suitable for a large range of tasks from simply poking around to writing web and GUI applications.

WBEM client library

Class WBEMConnection is the main class of the WBEM client library and is a good starting point to understand the WBEM client API.

Importing the pywbem package causes some names from its sub-modules to be folded into the package namespace. For example, class WBEMConnection is defined in the cim_operations sub-module and is folded into the package namespace:

import pywbem
conn = pywbem.WBEMConnection(...)

it can also be used from its sub-module:

from pywbem.cim_operations import WBEMConnection
conn = WBEMConnection(...)

Using the symbol from the package namespace is preferred; but both forms are supported.

Not all public symbols from all sub-modules of the pywbem package are part of the external API of the WBEM client library. The external API generally consists of the symbols in the pywbem package namespace, and the corresponding symbols in its sub-modules.

Consumers of this package that use other symbols than those from the external API are at the risk of suffering from incompatible changes in future versions of this package.

The Epydoc documentation tool that is used to produce these web pages does not list all symbols that are folded into the package namespace, unfortunately (as you can see, it lists only the variables, not including __version__). It does however honor the __all__ variable defining the exported symbols in each sub-module, and shows only those exported symbols in the documentation that is generated for the sub-modules. In other words, the symbols that you can see in the generated documentation for a sub-module is exactly what is part of the external API.

The external API of the WBEM client library consists of the following symbols:

WBEM utility commands

This package provides the following commands (implemented as Python scripts):

These commands are installed into the Python script directory and should therefore be available in the command search path.

Experimental components

This package contains some components that are considered experimental at this point:

These components are included in this package, but they are not covered in the generated documentation, at this point.

WBEM Listener (irecv)

The PYWBEM Client project on GitHub (https://github.com/pywbem/pywbem) contains the irecv package in addition to the pywbem package. The irecv package is a WBEM listener (indication receiver) and is considered experimental at this point.

It is not included in this package or in the generated documentation, at this point.

You can get it by accessing the irecv directory of the PyWBEM Client project on GitHub.

Version

For the current version of the pywbem package, see the NEWS file. Its version can also be retrieved from the pywbem.__version__ attribute (as a string).

Changes

The change log is in the NEWS file.

Compatibility

The pywbem package is supported in these environments:

OS X has simply not been tested and is therefore not listed, above. You are welcome to try it out and report any issues.


Version: 0.8.4

Submodules

Variables
  CIM_ERR_ACCESS_DENIED = 2
  CIM_ERR_ALREADY_EXISTS = 11
  CIM_ERR_CLASS_HAS_CHILDREN = 8
  CIM_ERR_CLASS_HAS_INSTANCES = 9
  CIM_ERR_FAILED = 1
  CIM_ERR_INVALID_CLASS = 5
  CIM_ERR_INVALID_NAMESPACE = 3
  CIM_ERR_INVALID_PARAMETER = 4
  CIM_ERR_INVALID_QUERY = 15
  CIM_ERR_INVALID_SUPERCLASS = 10
  CIM_ERR_METHOD_NOT_AVAILABLE = 16
  CIM_ERR_METHOD_NOT_FOUND = 17
  CIM_ERR_NOT_FOUND = 6
  CIM_ERR_NOT_SUPPORTED = 7
  CIM_ERR_NO_SUCH_PROPERTY = 12
  CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED = 14
  CIM_ERR_TYPE_MISMATCH = 13
  DEFAULT_NAMESPACE = 'root/cimv2'