version 1.1, 2003/08/18 13:54:54
|
version 1.8, 2005/02/05 23:00:10
|
|
|
//%///////////////////////////////////////////////////////////////////////////// |
//%2005//////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM, |
// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
// The Open Group, Tivoli Systems |
// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
|
// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.; |
|
// IBM Corp.; EMC Corporation, The Open Group. |
|
// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; |
|
// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; VERITAS Software Corporation; The Open Group. |
// | // |
// Permission is hereby granted, free of charge, to any person obtaining a copy | // Permission is hereby granted, free of charge, to any person obtaining a copy |
// of this software and associated documentation files (the "Software"), to | // of this software and associated documentation files (the "Software"), to |
|
|
The InteropProvider provides information and manipulates the | The InteropProvider provides information and manipulates the |
following classes from the DMTF CIM_Interop schema: | following classes from the DMTF CIM_Interop schema: |
CIM_Namespace - Creation and deletion of namespaces | CIM_Namespace - Creation and deletion of namespaces |
|
Note: Effective Pegasus 2.4, it processes PG_Namespace |
__Namespace - Creation and deletion of namespaces (deprecated) | __Namespace - Creation and deletion of namespaces (deprecated) |
CIM_ObjectManager - Reports on the status of the object manager | CIM_ObjectManager - Reports on the status of the object manager |
CIM_ObjectManagerCommunicationMechanism - Reports on CIMOM communications | CIM_ObjectManagerCommunicationMechanism - Reports on CIMOM communications |
|
|
This provider implements the following functions: | This provider implements the following functions: |
- createInstance ( adds a new namespace to the repository) | - createInstance ( adds a new namespace to the repository) |
- getInstance ( Gets one instance containing a namespace name) | - getInstance ( Gets one instance containing a namespace name) |
- modifyInstance ( Not supported ) |
- modifyInstance ( Limited Support) |
- enumerateInstances ( Lists all namespaces as Instances) | - enumerateInstances ( Lists all namespaces as Instances) |
- enumerateInstanceNames ( Lists all namespace names ) | - enumerateInstanceNames ( Lists all namespace names ) |
TBD | TBD |
|
|
const CIMInstance& modifiedIns, | const CIMInstance& modifiedIns, |
const Boolean includeQualifiers, | const Boolean includeQualifiers, |
const CIMPropertyList& propertyList, | const CIMPropertyList& propertyList, |
ResponseHandler & handler) |
ResponseHandler & handler); |
{ |
|
throw PEGASUS_CIM_EXCEPTION(CIM_ERR_NOT_SUPPORTED, ""); |
|
} |
|
| |
virtual void enumerateInstances( | virtual void enumerateInstances( |
const OperationContext & context, | const OperationContext & context, |
|
|
| |
private: | private: |
| |
CIMObjectPath InteropProvider::_buildInstancePath(const CIMNamespaceName& name, |
|
const CIMName className, |
CIMInstance _buildInstanceSkeleton(const CIMName& className); |
|
|
|
CIMObjectPath _buildReference(const CIMInstance& instance, |
|
const CIMName& className); |
|
|
|
CIMObjectPath _buildObjectPath(const CIMNamespaceName& name, |
|
const CIMName& className, |
|
const CIMInstance& instance); |
|
CIMObjectPath _buildInstancePath(const CIMNamespaceName& name, |
|
const CIMName& className, |
const CIMInstance& instance); | const CIMInstance& instance); |
| |
CIMClass _getClass(const CIMNamespaceName& nameSpace, const CIMName& className); | CIMClass _getClass(const CIMNamespaceName& nameSpace, const CIMName& className); |
| |
Array<CIMNamespaceName> _enumerateNameSpaces(); | Array<CIMNamespaceName> _enumerateNameSpaces(); |
| |
|
CIMInstance _buildInstancePGCIMXMLCommunicationMechanism( |
|
const String& namespaceType, |
|
const String& IPAddress, |
|
const Boolean& includeQualifiers, |
|
const Boolean& includeClassOrigin, |
|
const CIMPropertyList& propertyList); |
|
|
|
Array<CIMInstance> _buildInstancesPGCIMXMLCommunicationMechanism( |
|
const Boolean includeQualifiers, |
|
const Boolean includeClassOrigin, |
|
const CIMPropertyList& propertyList); |
|
|
|
CIMInstance _buildInstanceCIMObjectManager(const Boolean includeQualifiers, |
|
const Boolean includeClassOrigin, |
|
const CIMPropertyList& propertyList); |
|
|
|
Array<CIMInstance> _getInstancesCIMNamespace(const Boolean& includeQualifiers, |
|
const Boolean& includeClassOrigin, |
|
const CIMPropertyList& propertyList); |
|
|
|
|
|
CIMInstance _getInstanceCIMNamespace(const CIMNamespaceName & nameSpace); |
// | // |
|
CIMInstance _buildInstancePGNamespace(const CIMNamespaceName & nameSpace); |
|
|
|
|
|
Array<CIMInstance> _buildInstancesNamespaceInManager(); |
|
|
|
Array<CIMInstance> _buildInstancesCommMechanismForManager(); |
|
|
|
|
|
Boolean _getInstanceCIMObjectManager( |
|
const Boolean includeQualifiers, |
|
const Boolean includeClassOrigin, |
|
const CIMPropertyList& propertyList); |
|
|
|
void modifyObjectManagerInstance(const OperationContext & context, |
|
const CIMObjectPath & instanceReference, |
|
const CIMInstance& modifiedIns, |
|
const Boolean includeQualifiers, |
|
const CIMPropertyList& propertyList, |
|
ResponseHandler & handler); |
|
|
// Repository Instance variable | // Repository Instance variable |
// | // |
CIMRepository* _repository; | CIMRepository* _repository; |
CIMClass * _cimNamespaceClass; | CIMClass * _cimNamespaceClass; |
CIMNamespaceName _operationNamespace; | CIMNamespaceName _operationNamespace; |
|
CIMInstance instanceOfCIMObjectManager; |
}; | }; |
| |
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |