diff options
Diffstat (limited to 'src/power/Cura_ElementCapabilitiesProvider.c')
-rw-r--r-- | src/power/Cura_ElementCapabilitiesProvider.c | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/src/power/Cura_ElementCapabilitiesProvider.c b/src/power/Cura_ElementCapabilitiesProvider.c new file mode 100644 index 0000000..0208630 --- /dev/null +++ b/src/power/Cura_ElementCapabilitiesProvider.c @@ -0,0 +1,224 @@ +#include <konkret/konkret.h> +#include "Cura_ElementCapabilities.h" +#include "globals.h" + +static const CMPIBroker* _cb; + +static void Cura_ElementCapabilitiesInitialize() +{ +} + +static CMPIStatus Cura_ElementCapabilitiesCleanup( + CMPIInstanceMI* mi, + const CMPIContext* cc, + CMPIBoolean term) +{ + CMReturn(CMPI_RC_OK); +} + +static CMPIStatus Cura_ElementCapabilitiesEnumInstanceNames( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop) +{ + return KDefaultEnumerateInstanceNames( + _cb, mi, cc, cr, cop); +} + +static CMPIStatus Cura_ElementCapabilitiesEnumInstances( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char** properties) +{ + const char *ns = KNameSpace(cop); + + Cura_ElementCapabilities w; + Cura_ElementCapabilities_Init(&w, _cb, ns); + + Cura_PowerManagementServiceRef powerManagementServiceRef; + Cura_PowerManagementServiceRef_Init(&powerManagementServiceRef, _cb, ns); + Cura_PowerManagementServiceRef_Set_Name(&powerManagementServiceRef, get_system_name()); + Cura_PowerManagementServiceRef_Set_SystemName(&powerManagementServiceRef, get_system_name()); + Cura_PowerManagementServiceRef_Set_CreationClassName(&powerManagementServiceRef, "Cura_PowerManagementService"); + Cura_PowerManagementServiceRef_Set_SystemCreationClassName(&powerManagementServiceRef, get_system_creation_class_name()); + + Cura_ElementCapabilities_Set_ManagedElement(&w, &powerManagementServiceRef); + + Cura_PowerManagementCapabilitiesRef powerManagementCapabilitiesRef; + Cura_PowerManagementCapabilitiesRef_Init(&powerManagementCapabilitiesRef, _cb, ns); + Cura_PowerManagementCapabilitiesRef_Set_InstanceID(&powerManagementCapabilitiesRef, "RedHat:PowerManagementCapabilities"); + + Cura_ElementCapabilities_Set_Capabilities(&w, &powerManagementCapabilitiesRef); + + KReturnInstance(cr, w); + CMReturn(CMPI_RC_OK); +} + +static CMPIStatus Cura_ElementCapabilitiesGetInstance( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char** properties) +{ + return KDefaultGetInstance( + _cb, mi, cc, cr, cop, properties); +} + +static CMPIStatus Cura_ElementCapabilitiesCreateInstance( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const CMPIInstance* ci) +{ + CMReturn(CMPI_RC_ERR_NOT_SUPPORTED); +} + +static CMPIStatus Cura_ElementCapabilitiesModifyInstance( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const CMPIInstance* ci, + const char**properties) +{ + CMReturn(CMPI_RC_ERR_NOT_SUPPORTED); +} + +static CMPIStatus Cura_ElementCapabilitiesDeleteInstance( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop) +{ + CMReturn(CMPI_RC_ERR_NOT_SUPPORTED); +} + +static CMPIStatus Cura_ElementCapabilitiesExecQuery( + CMPIInstanceMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char* lang, + const char* query) +{ + CMReturn(CMPI_RC_ERR_NOT_SUPPORTED); +} + +static CMPIStatus Cura_ElementCapabilitiesAssociationCleanup( + CMPIAssociationMI* mi, + const CMPIContext* cc, + CMPIBoolean term) +{ + CMReturn(CMPI_RC_OK); +} + +static CMPIStatus Cura_ElementCapabilitiesAssociators( + CMPIAssociationMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char* assocClass, + const char* resultClass, + const char* role, + const char* resultRole, + const char** properties) +{ + return KDefaultAssociators( + _cb, + mi, + cc, + cr, + cop, + Cura_ElementCapabilities_ClassName, + assocClass, + resultClass, + role, + resultRole, + properties); +} + +static CMPIStatus Cura_ElementCapabilitiesAssociatorNames( + CMPIAssociationMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char* assocClass, + const char* resultClass, + const char* role, + const char* resultRole) +{ + return KDefaultAssociatorNames( + _cb, + mi, + cc, + cr, + cop, + Cura_ElementCapabilities_ClassName, + assocClass, + resultClass, + role, + resultRole); +} + +static CMPIStatus Cura_ElementCapabilitiesReferences( + CMPIAssociationMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char* assocClass, + const char* role, + const char** properties) +{ + return KDefaultReferences( + _cb, + mi, + cc, + cr, + cop, + Cura_ElementCapabilities_ClassName, + assocClass, + role, + properties); +} + +static CMPIStatus Cura_ElementCapabilitiesReferenceNames( + CMPIAssociationMI* mi, + const CMPIContext* cc, + const CMPIResult* cr, + const CMPIObjectPath* cop, + const char* assocClass, + const char* role) +{ + return KDefaultReferenceNames( + _cb, + mi, + cc, + cr, + cop, + Cura_ElementCapabilities_ClassName, + assocClass, + role); +} + +CMInstanceMIStub( + Cura_ElementCapabilities, + Cura_ElementCapabilities, + _cb, + Cura_ElementCapabilitiesInitialize()) + +CMAssociationMIStub( + Cura_ElementCapabilities, + Cura_ElementCapabilities, + _cb, + Cura_ElementCapabilitiesInitialize()) + +KONKRET_REGISTRATION( + "root/cimv2", + "Cura_ElementCapabilities", + "Cura_ElementCapabilities", + "instance association") |