83 lines
2.9 KiB
C++
83 lines
2.9 KiB
C++
/******************************************************************
|
|
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
|