Source code of Windows XP (NT5)
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.

794 lines
22 KiB

  1. /*++
  2. Copyright (c) 2001 Microsoft Corporation
  3. Module Name:
  4. azdisp.h
  5. Abstract:
  6. Declaration of CAz* dispatch interfaces
  7. Author:
  8. Xiaoxi Tan (xtan) 11-May-2001
  9. --*/
  10. #ifndef __AZDISP_H_
  11. #define __AZDISP_H_
  12. #include "resource.h"
  13. ///////////////////////
  14. //CAzAdminManager
  15. class ATL_NO_VTABLE CAzAdminManager :
  16. public CComObjectRootEx<CComMultiThreadModel>,
  17. public CComCoClass<CAzAdminManager, &CLSID_AzAdminManager>,
  18. public IDispatchImpl<IAzAdminManager, &IID_IAzAdminManager, &LIBID_AZROLESLib>
  19. {
  20. public:
  21. DECLARE_REGISTRY_RESOURCEID(IDR_AZADMINMANAGER)
  22. BEGIN_COM_MAP(CAzAdminManager)
  23. COM_INTERFACE_ENTRY(IAzAdminManager)
  24. COM_INTERFACE_ENTRY(IDispatch)
  25. END_COM_MAP()
  26. //IAzAdminManager
  27. public:
  28. CAzAdminManager();
  29. virtual ~CAzAdminManager();
  30. virtual HRESULT STDMETHODCALLTYPE Initialize(
  31. /* [in] */ ULONG lReserved,
  32. /* [in] */ ULONG lStoreType,
  33. /* [in] */ BSTR bstrPolicyURL);
  34. virtual HRESULT STDMETHODCALLTYPE CreateEnumApplication(
  35. /* [retval][out] */ VARIANT __RPC_FAR *pvarEnumApplication);
  36. virtual HRESULT STDMETHODCALLTYPE OpenApplication(
  37. /* [in] */ BSTR bstrApplicationName,
  38. /* [retval][out] */ VARIANT __RPC_FAR *pvarApplication);
  39. virtual HRESULT STDMETHODCALLTYPE CreateApplication(
  40. /* [in] */ BSTR bstrApplicationName,
  41. /* [retval][out] */ VARIANT __RPC_FAR *pvarApplication);
  42. virtual HRESULT STDMETHODCALLTYPE DeleteApplication(
  43. /* [in] */ BSTR bstrApplicationName);
  44. virtual HRESULT STDMETHODCALLTYPE CreateEnumApplicationGroup(
  45. /* [retval][out] */ VARIANT __RPC_FAR *pvarEnumApplicationGroup);
  46. virtual HRESULT STDMETHODCALLTYPE AddApplicationGroup(
  47. /* [in] */ BSTR bstrGroupName);
  48. virtual HRESULT STDMETHODCALLTYPE OpenApplicationGroup(
  49. /* [in] */ BSTR bstrGroupName,
  50. /* [retval][out] */ VARIANT __RPC_FAR *pvarApplicationGroup);
  51. virtual HRESULT STDMETHODCALLTYPE DeleteApplicationGroup(
  52. /* [in] */ BSTR bstrGroupName);
  53. virtual HRESULT STDMETHODCALLTYPE Submit(
  54. /* [in] */ ULONG lReserved);
  55. private:
  56. };
  57. ///////////////////////
  58. //CAzApplication
  59. class ATL_NO_VTABLE CAzApplication :
  60. public CComObjectRootEx<CComMultiThreadModel>,
  61. public CComCoClass<CAzApplication, &CLSID_AzApplication>,
  62. public IDispatchImpl<IAzApplication, &IID_IAzApplication, &LIBID_AZROLESLib>
  63. {
  64. public:
  65. DECLARE_REGISTRY_RESOURCEID(IDR_AZAPPLICATION)
  66. BEGIN_COM_MAP(CAzApplication)
  67. COM_INTERFACE_ENTRY(IAzApplication)
  68. COM_INTERFACE_ENTRY(IDispatch)
  69. END_COM_MAP()
  70. //IAzApplication
  71. public:
  72. CAzApplication();
  73. virtual ~CAzApplication();
  74. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  75. /* [in] */ ULONG lPropId,
  76. /* [retval][out] */ VARIANT *pvarProp);
  77. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  78. /* [in] */ ULONG lPropId,
  79. /* [in] */ VARIANT varProp);
  80. virtual HRESULT STDMETHODCALLTYPE CreateEnumScope(
  81. /* [retval][out] */ VARIANT *pvarEnumAzScope);
  82. virtual HRESULT STDMETHODCALLTYPE OpenScope(
  83. /* [in] */ BSTR bstrScopeName,
  84. /* [retval][out] */ VARIANT *pvarScope);
  85. virtual HRESULT STDMETHODCALLTYPE CreateScope(
  86. /* [in] */ BSTR bstrScopeName,
  87. /* [retval][out] */ VARIANT *pScope);
  88. virtual HRESULT STDMETHODCALLTYPE DeleteScope(
  89. /* [in] */ BSTR bstrScopeName);
  90. virtual HRESULT STDMETHODCALLTYPE CreateEnumOperation(
  91. /* [retval][out] */ VARIANT *pvarEnumOperation);
  92. virtual HRESULT STDMETHODCALLTYPE OpenOperation(
  93. /* [in] */ BSTR bstrOperationName,
  94. /* [retval][out] */ VARIANT *pvarOperation);
  95. virtual HRESULT STDMETHODCALLTYPE CreateOperation(
  96. /* [in] */ BSTR bstrOperationName,
  97. /* [retval][out] */ VARIANT *pvarOperation);
  98. virtual HRESULT STDMETHODCALLTYPE DeleteOperation(
  99. /* [in] */ BSTR bstrOperationName);
  100. virtual HRESULT STDMETHODCALLTYPE CreateEnumTask(
  101. /* [retval][out] */ VARIANT *pvarEnumAzTask);
  102. virtual HRESULT STDMETHODCALLTYPE OpenTask(
  103. /* [in] */ BSTR bstrTaskName,
  104. /* [retval][out] */ VARIANT *pvarTask);
  105. virtual HRESULT STDMETHODCALLTYPE CreateTask(
  106. /* [in] */ BSTR bstrTaskName,
  107. /* [retval][out] */ VARIANT *pvarTask);
  108. virtual HRESULT STDMETHODCALLTYPE DeleteTask(
  109. /* [in] */ BSTR bstrTaskName);
  110. virtual HRESULT STDMETHODCALLTYPE CreateEnumApplicationGroup(
  111. /* [retval][out] */ VARIANT *pvarEnumGroup);
  112. virtual HRESULT STDMETHODCALLTYPE OpenApplicationGroup(
  113. /* [in] */ BSTR bstrGroupName,
  114. /* [retval][out] */ VARIANT *pvarGroup);
  115. virtual HRESULT STDMETHODCALLTYPE CreateApplicationGroup(
  116. /* [in] */ BSTR bstrGroupName,
  117. /* [retval][out] */ VARIANT *pvarGroup);
  118. virtual HRESULT STDMETHODCALLTYPE DeleteApplicationGroup(
  119. /* [in] */ BSTR bstrGroupName);
  120. virtual HRESULT STDMETHODCALLTYPE CreateEnumRole(
  121. /* [retval][out] */ VARIANT *pvarEnumRole);
  122. virtual HRESULT STDMETHODCALLTYPE OpenRole(
  123. /* [in] */ BSTR bstrRoleName,
  124. /* [retval][out] */ VARIANT *pvarRole);
  125. virtual HRESULT STDMETHODCALLTYPE CreateRole(
  126. /* [in] */ BSTR bstrRoleName,
  127. /* [retval][out] */ VARIANT *pvarRole);
  128. virtual HRESULT STDMETHODCALLTYPE DeleteRole(
  129. /* [in] */ BSTR bstrRoleName);
  130. virtual HRESULT STDMETHODCALLTYPE CreateEnumJunctionPoint(
  131. /* [retval][out] */ VARIANT *pvarEnumJunctionPoint);
  132. virtual HRESULT STDMETHODCALLTYPE OpenJunctionPoint(
  133. /* [in] */ BSTR bstrJunctionPointName,
  134. /* [retval][out] */ VARIANT *pvarJunctionPoint);
  135. virtual HRESULT STDMETHODCALLTYPE CreateJunctionPoint(
  136. /* [in] */ BSTR bstrJunctionPointName,
  137. /* [retval][out] */ VARIANT *pvarJunctionPoint);
  138. virtual HRESULT STDMETHODCALLTYPE DeleteJunctionPoint(
  139. /* [in] */ BSTR bstrJunctionPointName);
  140. virtual HRESULT STDMETHODCALLTYPE InitializeClientContextFromToken(
  141. /* [in] */ ULONG lTokenHandle,
  142. /* [retval][out] */ VARIANT *pvarClientContext);
  143. private:
  144. };
  145. ///////////////////////
  146. //CAzEnumApplication
  147. class ATL_NO_VTABLE CAzEnumApplication :
  148. public CComObjectRootEx<CComMultiThreadModel>,
  149. public CComCoClass<CAzEnumApplication, &CLSID_AzEnumApplication>,
  150. public IDispatchImpl<IAzEnumApplication, &IID_IAzEnumApplication, &LIBID_AZROLESLib>
  151. {
  152. public:
  153. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMAPPLICATION)
  154. BEGIN_COM_MAP(CAzEnumApplication)
  155. COM_INTERFACE_ENTRY(IAzEnumApplication)
  156. COM_INTERFACE_ENTRY(IDispatch)
  157. END_COM_MAP()
  158. //IAzEnumApplication
  159. public:
  160. CAzEnumApplication();
  161. virtual ~CAzEnumApplication();
  162. virtual HRESULT STDMETHODCALLTYPE Count(
  163. /* [retval][out] */ ULONG *plCount);
  164. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  165. virtual HRESULT STDMETHODCALLTYPE Next(
  166. /* [retval][out] */ VARIANT *pvarAzApplication);
  167. private:
  168. };
  169. ///////////////////////
  170. //CAzOperation
  171. class ATL_NO_VTABLE CAzOperation :
  172. public CComObjectRootEx<CComMultiThreadModel>,
  173. public CComCoClass<CAzOperation, &CLSID_AzOperation>,
  174. public IDispatchImpl<IAzOperation, &IID_IAzOperation, &LIBID_AZROLESLib>
  175. {
  176. public:
  177. DECLARE_REGISTRY_RESOURCEID(IDR_AZOPERATION)
  178. BEGIN_COM_MAP(CAzOperation)
  179. COM_INTERFACE_ENTRY(IAzOperation)
  180. COM_INTERFACE_ENTRY(IDispatch)
  181. END_COM_MAP()
  182. //IAzOperation
  183. public:
  184. CAzOperation();
  185. virtual ~CAzOperation();
  186. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  187. /* [in] */ ULONG lPropId,
  188. /* [retval][out] */ VARIANT *pvarProp);
  189. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  190. /* [in] */ ULONG lPropId,
  191. /* [in] */ VARIANT varProp);
  192. private:
  193. };
  194. ///////////////////////
  195. //CAzEnumOperation
  196. class ATL_NO_VTABLE CAzEnumOperation :
  197. public CComObjectRootEx<CComMultiThreadModel>,
  198. public CComCoClass<CAzEnumOperation, &CLSID_AzEnumOperation>,
  199. public IDispatchImpl<IAzEnumOperation, &IID_IAzEnumOperation, &LIBID_AZROLESLib>
  200. {
  201. public:
  202. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMOPERATION)
  203. BEGIN_COM_MAP(CAzEnumOperation)
  204. COM_INTERFACE_ENTRY(IAzEnumOperation)
  205. COM_INTERFACE_ENTRY(IDispatch)
  206. END_COM_MAP()
  207. //IAzEnumOperation
  208. public:
  209. CAzEnumOperation();
  210. virtual ~CAzEnumOperation();
  211. private:
  212. virtual HRESULT STDMETHODCALLTYPE Count(
  213. /* [retval][out] */ ULONG *plCount);
  214. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  215. virtual HRESULT STDMETHODCALLTYPE Next(
  216. /* [retval][out] */ VARIANT *pvarOperation);
  217. };
  218. ///////////////////////
  219. //CAzTask
  220. class ATL_NO_VTABLE CAzTask :
  221. public CComObjectRootEx<CComMultiThreadModel>,
  222. public CComCoClass<CAzTask, &CLSID_AzTask>,
  223. public IDispatchImpl<IAzTask, &IID_IAzTask, &LIBID_AZROLESLib>
  224. {
  225. public:
  226. DECLARE_REGISTRY_RESOURCEID(IDR_AZTASK)
  227. BEGIN_COM_MAP(CAzTask)
  228. COM_INTERFACE_ENTRY(IAzTask)
  229. COM_INTERFACE_ENTRY(IDispatch)
  230. END_COM_MAP()
  231. //IAzTask
  232. public:
  233. CAzTask();
  234. virtual ~CAzTask();
  235. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  236. /* [in] */ ULONG lPropId,
  237. /* [retval][out] */ VARIANT *pvarProp);
  238. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  239. /* [in] */ ULONG lPropId,
  240. /* [in] */ VARIANT varProp);
  241. virtual HRESULT STDMETHODCALLTYPE AddPropertyItem(
  242. /* [in] */ ULONG lPropId,
  243. /* [in] */ VARIANT varProp);
  244. virtual HRESULT STDMETHODCALLTYPE DeletePropertyItem(
  245. /* [in] */ ULONG lPropId,
  246. /* [in] */ VARIANT varProp);
  247. private:
  248. };
  249. ///////////////////////
  250. //CAzEnumTask
  251. class ATL_NO_VTABLE CAzEnumTask :
  252. public CComObjectRootEx<CComMultiThreadModel>,
  253. public CComCoClass<CAzEnumTask, &CLSID_AzEnumTask>,
  254. public IDispatchImpl<IAzEnumTask, &IID_IAzEnumTask, &LIBID_AZROLESLib>
  255. {
  256. public:
  257. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMTASK)
  258. BEGIN_COM_MAP(CAzEnumTask)
  259. COM_INTERFACE_ENTRY(IAzEnumTask)
  260. COM_INTERFACE_ENTRY(IDispatch)
  261. END_COM_MAP()
  262. //IAzEnumTask
  263. public:
  264. CAzEnumTask();
  265. virtual ~CAzEnumTask();
  266. virtual HRESULT STDMETHODCALLTYPE Count(
  267. /* [retval][out] */ ULONG *plCount);
  268. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  269. virtual HRESULT STDMETHODCALLTYPE Next(
  270. /* [retval][out] */ VARIANT *pvarTask);
  271. private:
  272. };
  273. ///////////////////////
  274. //CAzScope
  275. class ATL_NO_VTABLE CAzScope :
  276. public CComObjectRootEx<CComMultiThreadModel>,
  277. public CComCoClass<CAzScope, &CLSID_AzScope>,
  278. public IDispatchImpl<IAzScope, &IID_IAzScope, &LIBID_AZROLESLib>
  279. {
  280. public:
  281. DECLARE_REGISTRY_RESOURCEID(IDR_AZSCOPE)
  282. BEGIN_COM_MAP(CAzScope)
  283. COM_INTERFACE_ENTRY(IAzScope)
  284. COM_INTERFACE_ENTRY(IDispatch)
  285. END_COM_MAP()
  286. //IAzScope
  287. public:
  288. CAzScope();
  289. virtual ~CAzScope();
  290. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  291. /* [in] */ ULONG lPropId,
  292. /* [retval][out] */ VARIANT *pvarProp);
  293. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  294. /* [in] */ ULONG lPropId,
  295. /* [in] */ VARIANT varProp);
  296. virtual HRESULT STDMETHODCALLTYPE CreateEnumApplicationGroup(
  297. /* [retval][out] */ VARIANT *pvarEnumGroup);
  298. virtual HRESULT STDMETHODCALLTYPE OpenApplicationGroup(
  299. /* [in] */ BSTR bstrGroupName,
  300. /* [retval][out] */ VARIANT *pvarGroup);
  301. virtual HRESULT STDMETHODCALLTYPE AddApplicationGroup(
  302. /* [in] */ BSTR bstrGroupName);
  303. virtual HRESULT STDMETHODCALLTYPE DeleteApplicationGroup(
  304. /* [in] */ BSTR bstrGroupName);
  305. virtual HRESULT STDMETHODCALLTYPE CreateEnumRole(
  306. /* [retval][out] */ VARIANT *pvarEnumRole);
  307. virtual HRESULT STDMETHODCALLTYPE OpenRole(
  308. /* [in] */ BSTR bstrRoleName,
  309. /* [retval][out] */ VARIANT *pvarRole);
  310. virtual HRESULT STDMETHODCALLTYPE AddRole(
  311. /* [in] */ BSTR bstrRoleName);
  312. virtual HRESULT STDMETHODCALLTYPE DeleteRole(
  313. /* [in] */ BSTR bstrRoleName);
  314. private:
  315. };
  316. ///////////////////////
  317. //CAzEnumScope
  318. class ATL_NO_VTABLE CAzEnumScope :
  319. public CComObjectRootEx<CComMultiThreadModel>,
  320. public CComCoClass<CAzEnumScope, &CLSID_AzEnumScope>,
  321. public IDispatchImpl<IAzEnumScope, &IID_IAzEnumScope, &LIBID_AZROLESLib>
  322. {
  323. public:
  324. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMSCOPE)
  325. BEGIN_COM_MAP(CAzEnumScope)
  326. COM_INTERFACE_ENTRY(IAzEnumScope)
  327. COM_INTERFACE_ENTRY(IDispatch)
  328. END_COM_MAP()
  329. //IAzEnumScope
  330. public:
  331. CAzEnumScope();
  332. virtual ~CAzEnumScope();
  333. virtual HRESULT STDMETHODCALLTYPE Count(
  334. /* [retval][out] */ ULONG *plCount);
  335. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  336. virtual HRESULT STDMETHODCALLTYPE Next(
  337. /* [retval][out] */ VARIANT *pvarTask);
  338. private:
  339. };
  340. ///////////////////////
  341. //CAzApplicationGroup
  342. class ATL_NO_VTABLE CAzApplicationGroup :
  343. public CComObjectRootEx<CComMultiThreadModel>,
  344. public CComCoClass<CAzApplicationGroup, &CLSID_AzApplicationGroup>,
  345. public IDispatchImpl<IAzApplicationGroup, &IID_IAzApplicationGroup, &LIBID_AZROLESLib>
  346. {
  347. public:
  348. DECLARE_REGISTRY_RESOURCEID(IDR_AZAPPLICATIONGROUP)
  349. BEGIN_COM_MAP(CAzApplicationGroup)
  350. COM_INTERFACE_ENTRY(IAzApplicationGroup)
  351. COM_INTERFACE_ENTRY(IDispatch)
  352. END_COM_MAP()
  353. //IAzApplicationGroup
  354. public:
  355. CAzApplicationGroup();
  356. virtual ~CAzApplicationGroup();
  357. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  358. /* [in] */ ULONG lPropId,
  359. /* [retval][out] */ VARIANT *pvarProp);
  360. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  361. /* [in] */ ULONG lPropId,
  362. /* [in] */ VARIANT varProp);
  363. virtual HRESULT STDMETHODCALLTYPE AddPropertyItem(
  364. /* [in] */ ULONG lPropId,
  365. /* [in] */ VARIANT varProp);
  366. virtual HRESULT STDMETHODCALLTYPE DeletePropertyItem(
  367. /* [in] */ ULONG lPropId,
  368. /* [in] */ VARIANT varProp);
  369. private:
  370. };
  371. ///////////////////////
  372. //CAzEnumApplicationGroup
  373. class ATL_NO_VTABLE CAzEnumApplicationGroup :
  374. public CComObjectRootEx<CComMultiThreadModel>,
  375. public CComCoClass<CAzEnumApplicationGroup, &CLSID_AzEnumApplicationGroup>,
  376. public IDispatchImpl<IAzEnumApplicationGroup, &IID_IAzEnumApplicationGroup, &LIBID_AZROLESLib>
  377. {
  378. public:
  379. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMAPPLICATIONGROUP)
  380. BEGIN_COM_MAP(CAzEnumApplicationGroup)
  381. COM_INTERFACE_ENTRY(IAzEnumApplicationGroup)
  382. COM_INTERFACE_ENTRY(IDispatch)
  383. END_COM_MAP()
  384. //IAzEnumApplicationGroup
  385. public:
  386. CAzEnumApplicationGroup();
  387. virtual ~CAzEnumApplicationGroup();
  388. virtual HRESULT STDMETHODCALLTYPE Count(
  389. /* [retval][out] */ ULONG *plCount);
  390. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  391. virtual HRESULT STDMETHODCALLTYPE Next(
  392. /* [retval][out] */ VARIANT *pvarTask);
  393. private:
  394. };
  395. ///////////////////////
  396. //CAzRole
  397. class ATL_NO_VTABLE CAzRole :
  398. public CComObjectRootEx<CComMultiThreadModel>,
  399. public CComCoClass<CAzRole, &CLSID_AzRole>,
  400. public IDispatchImpl<IAzRole, &IID_IAzRole, &LIBID_AZROLESLib>
  401. {
  402. public:
  403. DECLARE_REGISTRY_RESOURCEID(IDR_AZROLE)
  404. BEGIN_COM_MAP(CAzRole)
  405. COM_INTERFACE_ENTRY(IAzRole)
  406. COM_INTERFACE_ENTRY(IDispatch)
  407. END_COM_MAP()
  408. //IAzRole
  409. public:
  410. CAzRole();
  411. virtual ~CAzRole();
  412. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  413. /* [in] */ ULONG lPropId,
  414. /* [retval][out] */ VARIANT *pvarProp);
  415. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  416. /* [in] */ ULONG lPropId,
  417. /* [in] */ VARIANT varProp);
  418. virtual HRESULT STDMETHODCALLTYPE AddPropertyItem(
  419. /* [in] */ ULONG lPropId,
  420. /* [in] */ VARIANT varProp);
  421. virtual HRESULT STDMETHODCALLTYPE DeletePropertyItem(
  422. /* [in] */ ULONG lPropId,
  423. /* [in] */ VARIANT varProp);
  424. private:
  425. };
  426. ///////////////////////
  427. //CAzEnumRole
  428. class ATL_NO_VTABLE CAzEnumRole :
  429. public CComObjectRootEx<CComMultiThreadModel>,
  430. public CComCoClass<CAzEnumRole, &CLSID_AzEnumRole>,
  431. public IDispatchImpl<IAzEnumRole, &IID_IAzEnumRole, &LIBID_AZROLESLib>
  432. {
  433. public:
  434. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMROLE)
  435. BEGIN_COM_MAP(CAzEnumRole)
  436. COM_INTERFACE_ENTRY(IAzEnumRole)
  437. COM_INTERFACE_ENTRY(IDispatch)
  438. END_COM_MAP()
  439. //IAzEnumRole
  440. public:
  441. CAzEnumRole();
  442. virtual ~CAzEnumRole();
  443. virtual HRESULT STDMETHODCALLTYPE Count(
  444. /* [retval][out] */ ULONG *plCount);
  445. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  446. virtual HRESULT STDMETHODCALLTYPE Next(
  447. /* [retval][out] */ VARIANT *pvarTask);
  448. private:
  449. };
  450. ///////////////////////
  451. //CAzJunctionPoint
  452. class ATL_NO_VTABLE CAzJunctionPoint :
  453. public CComObjectRootEx<CComMultiThreadModel>,
  454. public CComCoClass<CAzJunctionPoint, &CLSID_AzJunctionPoint>,
  455. public IDispatchImpl<IAzJunctionPoint, &IID_IAzJunctionPoint, &LIBID_AZROLESLib>
  456. {
  457. public:
  458. DECLARE_REGISTRY_RESOURCEID(IDR_AZJUNCTIONPOINT)
  459. BEGIN_COM_MAP(CAzJunctionPoint)
  460. COM_INTERFACE_ENTRY(IAzJunctionPoint)
  461. COM_INTERFACE_ENTRY(IDispatch)
  462. END_COM_MAP()
  463. //IAzJunctionPoint
  464. public:
  465. CAzJunctionPoint();
  466. virtual ~CAzJunctionPoint();
  467. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  468. /* [in] */ ULONG lPropId,
  469. /* [retval][out] */ VARIANT *pvarProp);
  470. virtual HRESULT STDMETHODCALLTYPE SetProperty(
  471. /* [in] */ ULONG lPropId,
  472. /* [in] */ VARIANT varProp);
  473. private:
  474. };
  475. ///////////////////////
  476. //CAzEnumJunctionPoint
  477. class ATL_NO_VTABLE CAzEnumJunctionPoint :
  478. public CComObjectRootEx<CComMultiThreadModel>,
  479. public CComCoClass<CAzEnumJunctionPoint, &CLSID_AzEnumJunctionPoint>,
  480. public IDispatchImpl<IAzEnumJunctionPoint, &IID_IAzEnumJunctionPoint, &LIBID_AZROLESLib>
  481. {
  482. public:
  483. DECLARE_REGISTRY_RESOURCEID(IDR_AZENUMJUNCTIONPOINT)
  484. BEGIN_COM_MAP(CAzEnumJunctionPoint)
  485. COM_INTERFACE_ENTRY(IAzEnumJunctionPoint)
  486. COM_INTERFACE_ENTRY(IDispatch)
  487. END_COM_MAP()
  488. //IAzEnumJunctionPoint
  489. public:
  490. CAzEnumJunctionPoint();
  491. virtual ~CAzEnumJunctionPoint();
  492. virtual HRESULT STDMETHODCALLTYPE Count(
  493. /* [retval][out] */ ULONG *plCount);
  494. virtual HRESULT STDMETHODCALLTYPE Reset( void);
  495. virtual HRESULT STDMETHODCALLTYPE Next(
  496. /* [retval][out] */ VARIANT *pvarTask);
  497. private:
  498. };
  499. ///////////////////////
  500. //CAzClientContext
  501. class ATL_NO_VTABLE CAzClientContext :
  502. public CComObjectRootEx<CComMultiThreadModel>,
  503. public CComCoClass<CAzClientContext, &CLSID_AzClientContext>,
  504. public IDispatchImpl<IAzClientContext, &IID_IAzClientContext, &LIBID_AZROLESLib>
  505. {
  506. public:
  507. DECLARE_REGISTRY_RESOURCEID(IDR_AZCLIENTCONTEXT)
  508. BEGIN_COM_MAP(CAzClientContext)
  509. COM_INTERFACE_ENTRY(IAzClientContext)
  510. COM_INTERFACE_ENTRY(IDispatch)
  511. END_COM_MAP()
  512. //IAzClientContext
  513. public:
  514. CAzClientContext();
  515. virtual ~CAzClientContext();
  516. virtual HRESULT STDMETHODCALLTYPE AccessCheck(
  517. /* [in] */ BSTR bstrObjectName,
  518. /* [in] */ ULONG lScopeCount,
  519. /* [in] */ VARIANT varScopeNames,
  520. /* [in] */ ULONG lOperationCount,
  521. /* [in] */ VARIANT varOperations,
  522. /* [in] */ ULONG lParameterCount,
  523. /* [in] */ VARIANT varParameterNames,
  524. /* [in] */ VARIANT varParameterVariants,
  525. /* [in] */ ULONG lInterfaceCount,
  526. /* [in] */ VARIANT varInterfaceNames,
  527. /* [in] */ ULONG lInterfaceFlags,
  528. /* [in] */ VARIANT varInterfaces,
  529. /* [retval][out] */ VARIANT *pvarResults);
  530. virtual HRESULT STDMETHODCALLTYPE GetBusinessRuleString(
  531. /* [retval][out] */ BSTR *pbstrBusinessRuleString);
  532. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  533. /* [in] */ ULONG lPropId,
  534. /* [retval][out] */ VARIANT *pvarProp);
  535. private:
  536. };
  537. ///////////////////////
  538. //CAzAccessCheck
  539. class ATL_NO_VTABLE CAzAccessCheck :
  540. public CComObjectRootEx<CComMultiThreadModel>,
  541. public CComCoClass<CAzAccessCheck, &CLSID_AzAccessCheck>,
  542. public IDispatchImpl<IAzAccessCheck, &IID_IAzAccessCheck, &LIBID_AZROLESLib>
  543. {
  544. public:
  545. DECLARE_REGISTRY_RESOURCEID(IDR_AZACCESSCHECK)
  546. BEGIN_COM_MAP(CAzAccessCheck)
  547. COM_INTERFACE_ENTRY(IAzAccessCheck)
  548. COM_INTERFACE_ENTRY(IDispatch)
  549. END_COM_MAP()
  550. //IAzAccessCheck
  551. public:
  552. CAzAccessCheck();
  553. virtual ~CAzAccessCheck();
  554. virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BusinessRuleResult(
  555. /* [in] */ BOOL bResult);
  556. virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BusinessRuleString(
  557. /* [in] */ BSTR bstrBusinessRuleString);
  558. virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BusinessRuleString(
  559. /* [retval][out] */ BSTR *pbstrBusinessRuleString);
  560. virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BusinessRuleExpiration(
  561. /* [in] */ ULONG lExpirationPeriod);
  562. virtual HRESULT STDMETHODCALLTYPE GetParameter(
  563. /* [in] */ BSTR bstrParameterName,
  564. /* [retval][out] */ VARIANT *pvarParameterName);
  565. private:
  566. };
  567. #endif //__AZDISP_H_