/****************************************************************** SrvScal.h -- WBEM provider class declaration MODULE: DhcpProv.dll DESCRIPTION: Contains the declaration of the DHCP_Server_Scalar class and the indices definitions for the static table of manageable objects. REVISION: 08/03/98 - created ******************************************************************/ #include "Props.h" // needed for CDHCP_Property definition #ifndef _SRVSCAL_H #define _SRVSCAL_H // Property set identification #define PROVIDER_NAME_DHCP_SERVER "DHCP_Server" #define PROVIDER_NAMESPACE_DHCP "root\\dhcp" // indices for the DHCP_Server_Property static table (defined in SrvScal.cpp) #define IDX_SRV_StartTime 0 #define IDX_SRV_TotalNoOfAcks 1 #define IDX_SRV_TotalNoOfDeclines 2 #define IDX_SRV_TotalNoOfDiscovers 3 #define IDX_SRV_TotalNoOfNacks 4 #define IDX_SRV_TotalNoOfOffers 5 #define IDX_SRV_TotalNoOfReleases 6 #define IDX_SRV_TotalNoOfRequests 7 #define IDX_SRV_ServerVersion 8 #define IDX_SRV_APIProtocol 9 #define IDX_SRV_DatabaseName 10 #define IDX_SRV_DatabasePath 11 #define IDX_SRV_BackupPath 12 #define IDX_SRV_BackupInterval 13 #define IDX_SRV_DatabaseLoggingFlag 14 #define IDX_SRV_RestoreFlag 15 #define IDX_SRV_DatabaseCleanupInterval 16 #define IDX_SRV_DebugFlag 17 #define IDX_SRV_PingRetries 18 #define IDX_SRV_BootFileTable 19 #define IDX_SRV_AuditLog 20 // external definition for the static table of manageable objects (properties) extern const CDHCP_Property DHCP_Server_Property[]; // the number of entries into the DHCP_Server_Property static table #define NUM_SERVER_PROPERTIES (sizeof(DHCP_Server_Property)/sizeof(CDHCP_Property)) class CDHCP_Server : public Provider { private: // Loader function for the properties values. BOOL LoadInstanceProperties(CInstance* pInstance); protected: // Reading Functions virtual HRESULT EnumerateInstances(MethodContext* pMethodContext, long lFlags = 0L); virtual HRESULT GetObject(CInstance* pInstance, long lFlags = 0L); virtual HRESULT ExecQuery(MethodContext *pMethodContext, CFrameworkQuery& Query, long lFlags = 0L); // Writing Functions virtual HRESULT PutInstance(const CInstance& Instance, long lFlags = 0L); virtual HRESULT DeleteInstance(const CInstance& Instance, long lFlags = 0L); // Other Functions virtual HRESULT ExecMethod( const CInstance& Instance, const BSTR bstrMethodName, CInstance *pInParams, CInstance *pOutParams, long lFlags = 0L ); public: // Constructor/destructor CDHCP_Server(const CHString& chsClassName, LPCSTR lpszNameSpace); virtual ~CDHCP_Server(); }; #endif