Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
967 B

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name:
  4. metafact.h
  5. Abstract:
  6. Defines the CMetabaseFactory class. This class deals with creating
  7. metabase objects, on either the local machine or a remote machine.
  8. The class provides a simple caching scheme where it will keep the name of
  9. the server the object was created on.
  10. Author:
  11. Magnus Hedlund (MagnusH) --
  12. Revision History:
  13. --*/
  14. #ifndef _METAFACT_INCLUDED_
  15. #define _METAFACT_INCLUDED_
  16. class CMetabaseFactory
  17. {
  18. public:
  19. CMetabaseFactory ();
  20. ~CMetabaseFactory ();
  21. HRESULT GetMetabaseObject ( LPCWSTR wszServer, IMSAdminBase ** ppMetabase );
  22. // You must call (*ppMetabase)->Release() after using the metabase object.
  23. private:
  24. BOOL IsCachedMetabase ( LPCWSTR wszServer );
  25. BOOL SetServerName ( LPCWSTR wszServer );
  26. void DestroyMetabaseObject ( );
  27. LPWSTR m_wszServerName;
  28. IMSAdminBase * m_pMetabase;
  29. };
  30. #endif // _METAFACT_INCLUDED_