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.

93 lines
2.0 KiB

  1. // ActionData.h : Declaration of the CSsrActionData
  2. #pragma once
  3. #include "resource.h"
  4. #include "global.h"
  5. #include "SSRLog.h"
  6. using namespace std;
  7. class CSsrMembership;
  8. class CSafeArray;
  9. class CMemberAD;
  10. /////////////////////////////////////////////////////////////////////////////
  11. // CSSRTEngine
  12. class ATL_NO_VTABLE CSsrActionData :
  13. public CComObjectRootEx<CComSingleThreadModel>,
  14. public IDispatchImpl<ISsrActionData, &IID_ISsrActionData, &LIBID_SSRLib>
  15. {
  16. protected:
  17. CSsrActionData();
  18. virtual ~CSsrActionData();
  19. //
  20. // we don't want anyone (include self) to be able to do an assignment
  21. // or invoking copy constructor.
  22. //
  23. CSsrActionData (const CSsrActionData& );
  24. void operator = (const CSsrActionData& );
  25. DECLARE_REGISTRY_RESOURCEID(IDR_SSRTENGINE)
  26. DECLARE_PROTECT_FINAL_CONSTRUCT()
  27. BEGIN_COM_MAP(CSsrActionData)
  28. COM_INTERFACE_ENTRY(ISsrActionData)
  29. COM_INTERFACE_ENTRY(IDispatch)
  30. END_COM_MAP()
  31. // ISsrActionData
  32. public:
  33. STDMETHOD(GetProperty) (
  34. IN BSTR bstrPropName,
  35. OUT VARIANT * pvarPropties //[out, retval]
  36. );
  37. STDMETHOD(SetProperty) (
  38. IN BSTR bstrPropName,
  39. IN VARIANT varProperties
  40. );
  41. STDMETHOD(Reset) ();
  42. //HRESULT AttachMemberActionData (
  43. // IN BSTR bstrMemberName,
  44. // IN BSTR bstrActionVerb,
  45. // IN LONG lActionType
  46. // );
  47. //HRESULT DetachMemberActionData (
  48. // IN BSTR bstrMemberName
  49. // );
  50. //
  51. // This is not a ref-counted pointer.
  52. // The existence of the SSR Engine should guarantee
  53. // the availability of the membership object
  54. //
  55. void SetMembership (
  56. IN CSsrMembership * pSsrMembership
  57. )
  58. {
  59. m_pSsrMembership = pSsrMembership;
  60. }
  61. private:
  62. CSsrMembership * m_pSsrMembership;
  63. MapNameValue m_mapRuntimeAD;
  64. };