|
|
/////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 1999 Microsoft Corporation
//
// Module Name:
// dnsdomain.h
//
// Implementation File:
// dnscache.cpp
//
// Description:
// Definition of the CDnsDomain class.
//
// Author:
// Henry Wang (Henrywa) March 8, 2000
//
// Notes:
//
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include "dnsbase.h"
class CObjPath;
class CDnsResourceRecord : CDnsBase { public: CDnsResourceRecord(); CDnsResourceRecord( const WCHAR*, CWbemServices*, const char* ); ~CDnsResourceRecord(); CDnsResourceRecord( WCHAR*, char*); SCODE EnumInstance( long lFlags, IWbemContext * pCtx, IWbemObjectSink * pHandler); SCODE GetObject( CObjPath & ObjectPath, long lFlags, IWbemContext * pCtx, IWbemObjectSink * pHandler );
SCODE ExecuteMethod( CObjPath & objPath, WCHAR * wzMethodName, long lFlag, IWbemClassObject * pInArgs, IWbemObjectSink * pHandler ) ; SCODE ExecQuery( CSqlEval * pSqlEval, long lFlags, IWbemContext * pCtx, IWbemObjectSink * pHandler ); SCODE PutInstance( IWbemClassObject * pInst , long lFlags, IWbemContext* pCtx , IWbemObjectSink * pHandler ); SCODE DeleteInstance( CObjPath & ObjectPath, long lFlags, IWbemContext * pCtx, IWbemObjectSink * pHandler );
static CDnsBase* CreateThis( const WCHAR * wszName, //class name
CWbemServices * pNamespace, //namespace
const char * szType //str type id
); static SCODE InstanceFilter( CDomainNode & ParentDomain, PVOID pFilter, CDnsRpcNode * pNode, IWbemClassObject * pClass, CWbemInstanceMgr & InstMgr ); static SCODE GetObjectFilter( CDomainNode & ParentDomain, PVOID pFilter, CDnsRpcNode * pNode, IWbemClassObject * pClass, CWbemInstanceMgr & InstMgr ); static SCODE QueryFilter( CDomainNode & ParentDomain, PVOID pFilter, CDnsRpcNode * pNode, IWbemClassObject * pClass, CWbemInstanceMgr & InstMgr );
protected: SCODE Modify( CObjPath& objPath, IWbemClassObject* pInArgs, IWbemClassObject* pOutParams, IWbemObjectSink* pHandler );
SCODE CreateInstanceFromText( IWbemClassObject * pInArgs, IWbemClassObject * pOutParams, IWbemObjectSink * pHandler ); SCODE CreateInstanceFromProperty( IWbemClassObject * pInArgs, IWbemClassObject * pOutParams, IWbemObjectSink * pHandler ); SCODE GetObjectFromText( IWbemClassObject * pInArgs, IWbemClassObject * pOutParams, IWbemObjectSink * pHandler ) ; SCODE GetDomainNameFromZoneAndOwner( string & InZone, string & InOwner, string & OutNode ) ;
wstring m_wstrClassName; WORD m_wType; };
|