Source for file AuthorizationManager.php

Documentation is available at AuthorizationManager.php

  1. <?php
  2. include_once(dirname(__FILE__)."/../OsidManager.php");
  3. /**
  4. * AuthorizationManager allows an application to create Authorizations, get
  5. * Authorizations given selection criterias, ask questions of Authorization
  6. * such as what agentId can do a Function in a Qualifier context, etc.
  7. *
  8. * <p>
  9. * The primary objects in Authorization are Authorization, Function, agentId,
  10. * and Qualifier. There are also Function and Qualifier types that are
  11. * understood by the implementation.
  12. * </p>
  13. *
  14. * <p>
  15. * Ids in Authorization are externally defined and their uniqueness is enforced
  16. * by the implementation.
  17. * </p>
  18. *
  19. * <p>
  20. * There are two methods to create Authorizations. One method uses agentId,
  21. * Function, and Qualifier. The other adds effective date and expiration
  22. * date. For the method without the dates, the effective date is today and
  23. * there is no expiration date.
  24. * </p>
  25. *
  26. * <p>
  27. * All implementations of OsidManager (manager) provide methods for accessing
  28. * and manipulating the various objects defined in the OSID package. A manager
  29. * defines an implementation of an OSID. All other OSID objects come either
  30. * directly or indirectly from the manager. New instances of the OSID objects
  31. * are created either directly or indirectly by the manager. Because the OSID
  32. * objects are defined using interfaces, create methods must be used instead
  33. * of the new operator to create instances of the OSID objects. Create methods
  34. * are used both to instantiate and persist OSID objects. Using the
  35. * OsidManager class to define an OSID's implementation allows the application
  36. * to change OSID implementations by changing the OsidManager package name
  37. * used to load an implementation. Applications developed using managers
  38. * permit OSID implementation substitution without changing the application
  39. * source code. As with all managers, use the OsidLoader to load an
  40. * implementation of this interface.
  41. * </p>
  42. *
  43. * <p></p>
  44. *
  45. * <p>
  46. * OSID Version: 2.0
  47. * </p>
  48. *
  49. * <p>
  50. * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
  51. * O.K.I&#46; OSID Definition License}.
  52. * </p>
  53. *
  54. * @package org.osid.authorization
  55. */
  56. class AuthorizationManager
  57. extends OsidManager
  58. {
  59. /**
  60. * Creates a new Authorization for an Agent performing a Function with a
  61. * Qualifier.
  62. *
  63. * @param object Id $agentId
  64. * @param object Id $functionId
  65. * @param object Id $qualifierId
  66. * @param int $effectiveDate
  67. * @param int $expirationDate
  68. *
  69. * @return object Authorization
  70. *
  71. * @throws object AuthorizationException An exception with
  72. * one of the following messages defined in
  73. * org.osid.authorization.AuthorizationException may be thrown:
  74. * {@link }
  75. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  76. * OPERATION_FAILED}, {@link }
  77. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  78. * PERMISSION_DENIED}, {@link }
  79. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  80. * CONFIGURATION_ERROR}, {@link }
  81. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  82. * UNIMPLEMENTED}, {@link }
  83. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  84. * NULL_ARGUMENT}, {@link }
  85. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  86. * UNKNOWN_ID}, {@link }
  87. * org.osid.authorization.AuthorizationException#EFFECTIVE_PRECEDE_EXPIRATION}
  88. *
  89. * @access public
  90. */
  91. function createDatedAuthorization ( $agentId, $functionId, $qualifierId, $effectiveDate, $expirationDate ) {
  92. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  93. }
  94.  
  95. /**
  96. * Creates a new Authorization for a Agent performing a Function with a
  97. * Qualifier. Uses current date/time as the effectiveDate and doesn't set
  98. * an expiration date.
  99. *
  100. * @param object Id $agentId
  101. * @param object Id $functionId
  102. * @param object Id $qualifierId
  103. *
  104. * @return object Authorization
  105. *
  106. * @throws object AuthorizationException An exception with
  107. * one of the following messages defined in
  108. * org.osid.authorization.AuthorizationException may be thrown:
  109. * {@link }
  110. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  111. * OPERATION_FAILED}, {@link }
  112. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  113. * PERMISSION_DENIED}, {@link }
  114. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  115. * CONFIGURATION_ERROR}, {@link }
  116. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  117. * UNIMPLEMENTED}, {@link }
  118. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  119. * NULL_ARGUMENT}, {@link }
  120. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  121. * UNKNOWN_ID}
  122. *
  123. * @access public
  124. */
  125. function createAuthorization ( $agentId, $functionId, $qualifierId ) {
  126. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  127. }
  128.  
  129. /**
  130. * Ids in Authorization are externally defined and their uniqueness is
  131. * enforced by the implementation.
  132. *
  133. * @param object Id $functionId
  134. * @param string $displayName
  135. * @param string $description
  136. * @param object Type $functionType
  137. * @param object Id $qualifierHierarchyId
  138. *
  139. * @return object Function
  140. *
  141. * @throws object AuthorizationException An exception with
  142. * one of the following messages defined in
  143. * org.osid.authorization.AuthorizationException may be thrown:
  144. * {@link }
  145. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  146. * OPERATION_FAILED}, {@link }
  147. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  148. * PERMISSION_DENIED}, {@link }
  149. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  150. * CONFIGURATION_ERROR}, {@link }
  151. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  152. * UNIMPLEMENTED}, {@link }
  153. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  154. * NULL_ARGUMENT}, {@link }
  155. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  156. * UNKNOWN_ID}
  157. *
  158. * @access public
  159. */
  160. function createFunction ( $functionId, $displayName, $description, $functionType, $qualifierHierarchyId ) {
  161. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  162. }
  163.  
  164. /**
  165. * Creates a new Qualifier in the Authorization Service that has no parent.
  166. * This is different from making a new instance of a Qualifier object
  167. * locally as the Qualifier will be inserted into the Authorization
  168. * Service.
  169. *
  170. * @param object Id $qualifierId
  171. * @param string $displayName
  172. * @param string $description
  173. * @param object Type $qualifierType
  174. * @param object Id $qualifierHierarchyId
  175. *
  176. * @return object Qualifier
  177. *
  178. * @throws object AuthorizationException An exception with
  179. * one of the following messages defined in
  180. * org.osid.authorization.AuthorizationException may be thrown:
  181. * {@link }
  182. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  183. * OPERATION_FAILED}, {@link }
  184. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  185. * PERMISSION_DENIED}, {@link }
  186. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  187. * CONFIGURATION_ERROR}, {@link }
  188. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  189. * UNIMPLEMENTED}, {@link }
  190. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  191. * NULL_ARGUMENT}, {@link }
  192. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  193. * UNKNOWN_ID}, {@link }
  194. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  195. * UNKNOWN_TYPE}
  196. *
  197. * @access public
  198. */
  199. function createRootQualifier ( $qualifierId, $displayName, $description, $qualifierType, $qualifierHierarchyId ) {
  200. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  201. }
  202.  
  203. /**
  204. * Ids in Authorization are externally defined and their uniqueness is
  205. * enforced by the implementation. Creates a new Qualifier in the
  206. * Authorization Service. This is different than making a new instance of
  207. * a Qualifier object locally as the Qualifier will be inserted into the
  208. * Authorization Service.
  209. *
  210. * @param object Id $qualifierId
  211. * @param string $displayName
  212. * @param string $description
  213. * @param object Type $qualifierType
  214. * @param object Id $parentId
  215. *
  216. * @return object Qualifier
  217. *
  218. * @throws object AuthorizationException An exception with
  219. * one of the following messages defined in
  220. * org.osid.authorization.AuthorizationException may be thrown:
  221. * {@link }
  222. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  223. * OPERATION_FAILED}, {@link }
  224. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  225. * PERMISSION_DENIED}, {@link }
  226. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  227. * CONFIGURATION_ERROR}, {@link }
  228. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  229. * UNIMPLEMENTED}, {@link }
  230. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  231. * NULL_ARGUMENT}, {@link }
  232. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  233. * UNKNOWN_ID}, {@link }
  234. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  235. * UNKNOWN_TYPE}
  236. *
  237. * @access public
  238. */
  239. function createQualifier ( $qualifierId, $displayName, $description, $qualifierType, $parentId ) {
  240. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  241. }
  242.  
  243. /**
  244. * Deletes an existing Authorization.
  245. *
  246. * @param object Authorization $authorization
  247. *
  248. * @throws object AuthorizationException An exception with
  249. * one of the following messages defined in
  250. * org.osid.authorization.AuthorizationException may be thrown:
  251. * {@link }
  252. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  253. * OPERATION_FAILED}, {@link }
  254. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  255. * PERMISSION_DENIED}, {@link }
  256. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  257. * CONFIGURATION_ERROR}, {@link }
  258. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  259. * UNIMPLEMENTED}, {@link }
  260. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  261. * NULL_ARGUMENT}, {@link }
  262. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  263. * UNKNOWN_ID}
  264. *
  265. * @access public
  266. */
  267. function deleteAuthorization ( $authorization ) {
  268. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  269. }
  270.  
  271. /**
  272. * Delete a Function by Id.
  273. *
  274. * @param object Id $functionId
  275. *
  276. * @throws object AuthorizationException An exception with
  277. * one of the following messages defined in
  278. * org.osid.authorization.AuthorizationException may be thrown:
  279. * {@link }
  280. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  281. * OPERATION_FAILED}, {@link }
  282. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  283. * PERMISSION_DENIED}, {@link }
  284. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  285. * CONFIGURATION_ERROR}, {@link }
  286. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  287. * UNIMPLEMENTED}, {@link }
  288. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  289. * NULL_ARGUMENT}, {@link }
  290. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  291. * UNKNOWN_ID}
  292. *
  293. * @access public
  294. */
  295. function deleteFunction ( $functionId ) {
  296. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  297. }
  298.  
  299. /**
  300. * Delete a Qualifier by Id. The last root Qualifier cannot be deleted.
  301. *
  302. * @param object Id $qualifierId
  303. *
  304. * @throws object AuthorizationException An exception with
  305. * one of the following messages defined in
  306. * org.osid.authorization.AuthorizationException may be thrown:
  307. * {@link }
  308. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  309. * OPERATION_FAILED}, {@link }
  310. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  311. * PERMISSION_DENIED}, {@link }
  312. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  313. * CONFIGURATION_ERROR}, {@link }
  314. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  315. * UNIMPLEMENTED}, {@link }
  316. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  317. * NULL_ARGUMENT}, {@link }
  318. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  319. * UNKNOWN_ID}, {@link }
  320. * org.osid.authorization.AuthorizationException#CANNOT_DELETE_LAST_ROOT_QUALIFIER
  321. * CANNOT_DELETE_LAST_ROOT_QUALIFIER}
  322. *
  323. * @access public
  324. */
  325. function deleteQualifier ( $qualifierId ) {
  326. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  327. }
  328.  
  329. /**
  330. * Given an agentId, functionId, and qualifierId returns true if the Agent
  331. * is authorized now to perform the Function with the Qualifier.
  332. *
  333. * @param object Id $agentId
  334. * @param object Id $functionId
  335. * @param object Id $qualifierId
  336. *
  337. * @return boolean
  338. *
  339. * @throws object AuthorizationException An exception with
  340. * one of the following messages defined in
  341. * org.osid.authorization.AuthorizationException may be thrown:
  342. * {@link }
  343. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  344. * OPERATION_FAILED}, {@link }
  345. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  346. * PERMISSION_DENIED}, {@link }
  347. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  348. * CONFIGURATION_ERROR}, {@link }
  349. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  350. * UNIMPLEMENTED}, {@link }
  351. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  352. * NULL_ARGUMENT}, {@link }
  353. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  354. * UNKNOWN_ID}
  355. *
  356. * @access public
  357. */
  358. function isAuthorized ( $agentId, $functionId, $qualifierId ) {
  359. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  360. }
  361.  
  362. /**
  363. * Given a functionId and qualifierId returns true if the user is
  364. * authorized now to perform the Function with the Qualifier.
  365. *
  366. * @param object Id $functionId
  367. * @param object Id $qualifierId
  368. *
  369. * @return boolean
  370. *
  371. * @throws object AuthorizationException An exception with
  372. * one of the following messages defined in
  373. * org.osid.authorization.AuthorizationException may be thrown:
  374. * {@link }
  375. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  376. * OPERATION_FAILED}, {@link }
  377. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  378. * PERMISSION_DENIED}, {@link }
  379. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  380. * CONFIGURATION_ERROR}, {@link }
  381. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  382. * UNIMPLEMENTED}, {@link }
  383. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  384. * NULL_ARGUMENT}, {@link }
  385. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  386. * UNKNOWN_ID}
  387. *
  388. * @access public
  389. */
  390. function isUserAuthorized ( $functionId, $qualifierId ) {
  391. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  392. }
  393.  
  394. /**
  395. * Get all the FunctionTypes supported by the Authorization implementation.
  396. *
  397. * @return object TypeIterator
  398. *
  399. * @throws object AuthorizationException An exception with
  400. * one of the following messages defined in
  401. * org.osid.authorization.AuthorizationException may be thrown:
  402. * {@link }
  403. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  404. * OPERATION_FAILED}, {@link }
  405. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  406. * PERMISSION_DENIED}, {@link }
  407. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  408. * CONFIGURATION_ERROR}, {@link }
  409. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  410. * UNIMPLEMENTED}
  411. *
  412. * @access public
  413. */
  414. function getFunctionTypes () {
  415. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  416. }
  417.  
  418. /**
  419. * Get all the Functions of the specified Type.
  420. *
  421. * @param object Type $functionType
  422. *
  423. * @return object FunctionIterator
  424. *
  425. * @throws object AuthorizationException An exception with
  426. * one of the following messages defined in
  427. * org.osid.authorization.AuthorizationException may be thrown:
  428. * {@link }
  429. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  430. * OPERATION_FAILED}, {@link }
  431. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  432. * PERMISSION_DENIED}, {@link }
  433. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  434. * CONFIGURATION_ERROR}, {@link }
  435. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  436. * UNIMPLEMENTED}, {@link }
  437. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  438. * NULL_ARGUMENT}, {@link }
  439. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  440. * UNKNOWN_TYPE}
  441. *
  442. * @access public
  443. */
  444. function getFunctions ( $functionType ) {
  445. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  446. }
  447.  
  448. /**
  449. *
  450. *
  451. * @param object Id $functionId
  452. *
  453. * @return object Function
  454. *
  455. * @throws object AuthorizationException An exception with
  456. * one of the following messages defined in
  457. * org.osid.authorization.AuthorizationException may be thrown:
  458. * {@link }
  459. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  460. * OPERATION_FAILED}, {@link }
  461. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  462. * PERMISSION_DENIED}, {@link }
  463. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  464. * CONFIGURATION_ERROR}, {@link }
  465. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  466. * UNIMPLEMENTED}, {@link }
  467. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  468. * NULL_ARGUMENT}, {@link }
  469. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  470. * UNKNOWN_ID}
  471. *
  472. * @access public
  473. */
  474. function getFunction ( $functionId ) {
  475. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  476. }
  477.  
  478. /**
  479. * Return true if the agentId exists in the Authorization Service; false
  480. * otherwise. This is not asking if there are any Authorizations that
  481. * reference this agentId. This is not asking if the agentId is known to
  482. * the Agent OSID.
  483. *
  484. * @param object Id $agentId
  485. *
  486. * @return boolean
  487. *
  488. * @throws object AuthorizationException An exception with
  489. * one of the following messages defined in
  490. * org.osid.authorization.AuthorizationException may be thrown:
  491. * {@link }
  492. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  493. * OPERATION_FAILED}, {@link }
  494. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  495. * PERMISSION_DENIED}, {@link }
  496. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  497. * CONFIGURATION_ERROR}, {@link }
  498. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  499. * UNIMPLEMENTED}, {@link }
  500. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  501. * NULL_ARGUMENT}, {@link }
  502. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  503. * UNKNOWN_ID}
  504. *
  505. * @access public
  506. */
  507. function agentExists ( $agentId ) {
  508. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  509. }
  510.  
  511. /**
  512. * Get all the QualifierTypes supported by the Authorization
  513. * implementation.
  514. *
  515. * @return object TypeIterator
  516. *
  517. * @throws object AuthorizationException An exception with
  518. * one of the following messages defined in
  519. * org.osid.authorization.AuthorizationException may be thrown:
  520. * {@link }
  521. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  522. * OPERATION_FAILED}, {@link }
  523. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  524. * PERMISSION_DENIED}, {@link }
  525. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  526. * CONFIGURATION_ERROR}, {@link }
  527. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  528. * UNIMPLEMENTED}
  529. *
  530. * @access public
  531. */
  532. function getQualifierTypes () {
  533. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  534. }
  535.  
  536. /**
  537. * Given a hierarchyId, returns the Qualifiers at the root of the specified
  538. * Hierarchy.
  539. *
  540. * @param object Id $qualifierHierarchyId
  541. *
  542. * @return object QualifierIterator
  543. *
  544. * @throws object AuthorizationException An exception with
  545. * one of the following messages defined in
  546. * org.osid.authorization.AuthorizationException may be thrown:
  547. * {@link }
  548. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  549. * OPERATION_FAILED}, {@link }
  550. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  551. * PERMISSION_DENIED}, {@link }
  552. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  553. * CONFIGURATION_ERROR}, {@link }
  554. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  555. * UNIMPLEMENTED}, {@link }
  556. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  557. * NULL_ARGUMENT}, {@link }
  558. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  559. * UNKNOWN_TYPE}
  560. *
  561. * @access public
  562. */
  563. function getRootQualifiers ( $qualifierHierarchyId ) {
  564. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  565. }
  566.  
  567. /**
  568. * Given an existing qualifierId returns the Ids of its child Qualifiers.
  569. *
  570. * @param object Id $qualifierId
  571. *
  572. * @return object QualifierIterator
  573. *
  574. * @throws object AuthorizationException An exception with
  575. * one of the following messages defined in
  576. * org.osid.authorization.AuthorizationException may be thrown:
  577. * {@link }
  578. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  579. * OPERATION_FAILED}, {@link }
  580. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  581. * PERMISSION_DENIED}, {@link }
  582. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  583. * CONFIGURATION_ERROR}, {@link }
  584. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  585. * UNIMPLEMENTED}, {@link }
  586. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  587. * NULL_ARGUMENT}, {@link }
  588. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  589. * UNKNOWN_ID}
  590. *
  591. * @access public
  592. */
  593. function getQualifierChildren ( $qualifierId ) {
  594. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  595. }
  596.  
  597. /**
  598. * Given an existing qualifierId returns the Ids of all descendants
  599. * including its child Qualifiers.
  600. *
  601. * @param object Id $qualifierId
  602. *
  603. * @return object QualifierIterator
  604. *
  605. * @throws object AuthorizationException An exception with
  606. * one of the following messages defined in
  607. * org.osid.authorization.AuthorizationException may be thrown:
  608. * {@link }
  609. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  610. * OPERATION_FAILED}, {@link }
  611. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  612. * PERMISSION_DENIED}, {@link }
  613. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  614. * CONFIGURATION_ERROR}, {@link }
  615. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  616. * UNIMPLEMENTED}, {@link }
  617. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  618. * NULL_ARGUMENT}, {@link }
  619. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  620. * UNKNOWN_ID}
  621. *
  622. * @access public
  623. */
  624. function getQualifierDescendants ( $qualifierId ) {
  625. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  626. }
  627.  
  628. /**
  629. *
  630. *
  631. * @param object Id $qualifierId
  632. *
  633. * @return object Qualifier
  634. *
  635. * @throws object AuthorizationException An exception with
  636. * one of the following messages defined in
  637. * org.osid.authorization.AuthorizationException may be thrown:
  638. * {@link }
  639. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  640. * OPERATION_FAILED}, {@link }
  641. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  642. * PERMISSION_DENIED}, {@link }
  643. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  644. * CONFIGURATION_ERROR}, {@link }
  645. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  646. * UNIMPLEMENTED}, {@link }
  647. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  648. * NULL_ARGUMENT}, {@link }
  649. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  650. * UNKNOWN_ID}
  651. *
  652. * @access public
  653. */
  654. function getQualifier ( $qualifierId ) {
  655. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  656. }
  657.  
  658. /**
  659. * Given a functionId and a qualifierId returns the Ids of all Agents
  660. * allowed to do the Function with the Qualifier. A null qualifierId is
  661. * treated as a wildcard.
  662. *
  663. * @param object Id $functionId
  664. * @param object Id $qualifierId
  665. *
  666. * @return object IdIterator
  667. *
  668. * @throws object AuthorizationException An exception with
  669. * one of the following messages defined in
  670. * org.osid.authorization.AuthorizationException may be thrown:
  671. * {@link }
  672. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  673. * OPERATION_FAILED}, {@link }
  674. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  675. * PERMISSION_DENIED}, {@link }
  676. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  677. * CONFIGURATION_ERROR}, {@link }
  678. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  679. * UNIMPLEMENTED}, {@link }
  680. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  681. * NULL_ARGUMENT}, {@link }
  682. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  683. * UNKNOWN_ID}
  684. *
  685. * @access public
  686. */
  687. function getWhoCanDo ( $functionId, $qualifierId ) {
  688. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  689. }
  690.  
  691. /**
  692. * Given a functionId and qualifierId (one must be non-null) returns the
  693. * matching user Authorizations. Explicit Authorizations can be
  694. * modified.. Any null argument will be treated as a wildcard.
  695. *
  696. * @param object Id $functionId
  697. * @param object Id $qualifierId
  698. * @param boolean $isActiveNowOnly
  699. *
  700. * @return object AuthorizationIterator
  701. *
  702. * @throws object AuthorizationException An exception with
  703. * one of the following messages defined in
  704. * org.osid.authorization.AuthorizationException may be thrown:
  705. * {@link }
  706. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  707. * OPERATION_FAILED}, {@link }
  708. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  709. * PERMISSION_DENIED}, {@link }
  710. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  711. * CONFIGURATION_ERROR}, {@link }
  712. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  713. * UNIMPLEMENTED}, {@link }
  714. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  715. * NULL_ARGUMENT}, {@link }
  716. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  717. * UNKNOWN_ID}
  718. *
  719. * @access public
  720. */
  721. function getExplicitUserAZs ( $functionId, $qualifierId, $isActiveNowOnly ) {
  722. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  723. }
  724.  
  725. /**
  726. * Given a FunctionType and qualifierId returns the matching user
  727. * Authorizations. The Authorizations must be for Functions within the
  728. * given FunctionType. Explicit Authorizations can be modified. Any null
  729. * argument will be treated as a wildcard.
  730. *
  731. * @param object Type $functionType
  732. * @param object Id $qualifierId
  733. * @param boolean $isActiveNowOnly
  734. *
  735. * @return object AuthorizationIterator
  736. *
  737. * @throws object AuthorizationException An exception with
  738. * one of the following messages defined in
  739. * org.osid.authorization.AuthorizationException may be thrown:
  740. * {@link }
  741. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  742. * OPERATION_FAILED}, {@link }
  743. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  744. * PERMISSION_DENIED}, {@link }
  745. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  746. * CONFIGURATION_ERROR}, {@link }
  747. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  748. * UNIMPLEMENTED}, {@link }
  749. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  750. * NULL_ARGUMENT}, {@link }
  751. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  752. * UNKNOWN_ID}, {@link }
  753. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  754. * UNKNOWN_TYPE}
  755. *
  756. * @access public
  757. */
  758. function getExplicitUserAZsByFuncType ( $functionType, $qualifierId, $isActiveNowOnly ) {
  759. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  760. }
  761.  
  762. /**
  763. * Given an implicit returns the matching explicit user Authorizations.
  764. * Explicit Authorizations can be modified. A null argument will be
  765. * treated as a wildcard.
  766. *
  767. * @param object Authorization $implicitAuthorization
  768. *
  769. * @return object AuthorizationIterator
  770. *
  771. * @throws object AuthorizationException An exception with
  772. * one of the following messages defined in
  773. * org.osid.authorization.AuthorizationException may be thrown:
  774. * {@link }
  775. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  776. * OPERATION_FAILED}, {@link }
  777. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  778. * PERMISSION_DENIED}, {@link }
  779. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  780. * CONFIGURATION_ERROR}, {@link }
  781. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  782. * UNIMPLEMENTED}, {@link }
  783. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  784. * NULL_ARGUMENT}, {@link }
  785. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  786. * UNKNOWN_ID}, {@link }
  787. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  788. * UNKNOWN_TYPE}
  789. *
  790. * @access public
  791. */
  792. function getExplicitUserAZsForImplicitAZ ( $implicitAuthorization ) {
  793. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  794. }
  795.  
  796. /**
  797. * Given a functionId and a qualifierId returns all Authorizations that
  798. * would allow the user to do the Function with the Qualifier. This method
  799. * differs from the simple form of getAuthorizations in that this method
  800. * looks for any Authorization that permits doing the Function with the
  801. * Qualifier even if the Authorization's Qualifier happens to be a parent
  802. * of this Qualifier argument.
  803. *
  804. * @param object Id $functionId
  805. * @param object Id $qualifierId
  806. * @param boolean $isActiveNowOnly
  807. *
  808. * @return object AuthorizationIterator
  809. *
  810. * @throws object AuthorizationException An exception with
  811. * one of the following messages defined in
  812. * org.osid.authorization.AuthorizationException may be thrown:
  813. * {@link }
  814. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  815. * OPERATION_FAILED}, {@link }
  816. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  817. * PERMISSION_DENIED}, {@link }
  818. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  819. * CONFIGURATION_ERROR}, {@link }
  820. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  821. * UNIMPLEMENTED}, {@link }
  822. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  823. * NULL_ARGUMENT}, {@link }
  824. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  825. * UNKNOWN_ID}
  826. *
  827. * @access public
  828. */
  829. function getAllUserAZs ( $functionId, $qualifierId, $isActiveNowOnly ) {
  830. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  831. }
  832.  
  833. /**
  834. * Given a FunctionType and a qualifierId returns all Authorizations that
  835. * would allow the user to do Functions in the FunctionType with the
  836. * Qualifier. This method differs from getAuthorizations in that this
  837. * method looks for any Authorization that permits doing the Function with
  838. * the Qualifier even if the Authorization's Qualifier happens to be a
  839. * parent of the Qualifier argument.
  840. *
  841. * @param object Type $functionType
  842. * @param object Id $qualifierId
  843. * @param boolean $isActiveNowOnly
  844. *
  845. * @return object AuthorizationIterator
  846. *
  847. * @throws object AuthorizationException An exception with
  848. * one of the following messages defined in
  849. * org.osid.authorization.AuthorizationException may be thrown:
  850. * {@link }
  851. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  852. * OPERATION_FAILED}, {@link }
  853. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  854. * PERMISSION_DENIED}, {@link }
  855. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  856. * CONFIGURATION_ERROR}, {@link }
  857. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  858. * UNIMPLEMENTED}, {@link }
  859. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  860. * NULL_ARGUMENT}, {@link }
  861. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  862. * UNKNOWN_ID}, {@link }
  863. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  864. * UNKNOWN_TYPE}
  865. *
  866. * @access public
  867. */
  868. function getAllUserAZsByFuncType ( $functionType, $qualifierId, $isActiveNowOnly ) {
  869. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  870. }
  871.  
  872. /**
  873. * Given a agentId, a functionId, and a qualifierId (at least one of these
  874. * must be non-null) returns the matching Authorizations. Explicit
  875. * Authorizations can be modified. Any null argument will be treated as a
  876. * wildcard.
  877. *
  878. * @param object Id $agentId
  879. * @param object Id $functionId
  880. * @param object Id $qualifierId
  881. * @param boolean $isActiveNowOnly
  882. *
  883. * @return object AuthorizationIterator
  884. *
  885. * @throws object AuthorizationException An exception with
  886. * one of the following messages defined in
  887. * org.osid.authorization.AuthorizationException may be thrown:
  888. * {@link }
  889. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  890. * OPERATION_FAILED}, {@link }
  891. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  892. * PERMISSION_DENIED}, {@link }
  893. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  894. * CONFIGURATION_ERROR}, {@link }
  895. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  896. * UNIMPLEMENTED}, {@link }
  897. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  898. * NULL_ARGUMENT}, {@link }
  899. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  900. * UNKNOWN_ID}
  901. *
  902. * @access public
  903. */
  904. function getExplicitAZs ( $agentId, $functionId, $qualifierId, $isActiveNowOnly ) {
  905. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  906. }
  907.  
  908. /**
  909. * Given a agentId, a FunctionType, and a qualifierId (either agentId or
  910. * qualifierId must be non-null) returns the matching Authorizations. The
  911. * Authorizations must be for Functions within the given FunctionType.
  912. * Explicit Authorizations can be modified. Any null argument will be
  913. * treated as a wildcard.
  914. *
  915. * @param object Id $agentId
  916. * @param object Type $functionType
  917. * @param object Id $qualifierId
  918. * @param boolean $isActiveNowOnly
  919. *
  920. * @return object AuthorizationIterator
  921. *
  922. * @throws object AuthorizationException An exception with
  923. * one of the following messages defined in
  924. * org.osid.authorization.AuthorizationException may be thrown:
  925. * {@link }
  926. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  927. * OPERATION_FAILED}, {@link }
  928. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  929. * PERMISSION_DENIED}, {@link }
  930. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  931. * CONFIGURATION_ERROR}, {@link }
  932. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  933. * UNIMPLEMENTED}, {@link }
  934. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  935. * NULL_ARGUMENT}, {@link }
  936. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  937. * UNKNOWN_ID}, {@link }
  938. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  939. * UNKNOWN_TYPE}
  940. *
  941. * @access public
  942. */
  943. function getExplicitAZsByFuncType ( $agentId, $functionType, $qualifierId, $isActiveNowOnly ) {
  944. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  945. }
  946.  
  947. /**
  948. * Given a functionId and a qualifierId returns all Authorizations that
  949. * would allow agents to do the Function with the Qualifier. This method
  950. * differs from the simple form of getAuthorizations in that this method
  951. * looks for any Authorization that permits doing the Function with the
  952. * Qualifier even if the Authorization's Qualifier happens to be a parent
  953. * of this Qualifier argument.
  954. *
  955. * @param object Id $agentId
  956. * @param object Id $functionId
  957. * @param object Id $qualifierId
  958. * @param boolean $isActiveNowOnly
  959. *
  960. * @return object AuthorizationIterator
  961. *
  962. * @throws object AuthorizationException An exception with
  963. * one of the following messages defined in
  964. * org.osid.authorization.AuthorizationException may be thrown:
  965. * {@link }
  966. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  967. * OPERATION_FAILED}, {@link }
  968. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  969. * PERMISSION_DENIED}, {@link }
  970. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  971. * CONFIGURATION_ERROR}, {@link }
  972. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  973. * UNIMPLEMENTED}, {@link }
  974. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  975. * NULL_ARGUMENT}, {@link }
  976. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  977. * UNKNOWN_ID}
  978. *
  979. * @access public
  980. */
  981. function getAllAZs ( $agentId, $functionId, $qualifierId, $isActiveNowOnly ) {
  982. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  983. }
  984.  
  985. /**
  986. * Given a FunctionType and a qualifierId returns all Authorizations that
  987. * would allow Agents to do Functions in the FunctionType with the
  988. * Qualifier. This method differs from getAuthorizations in that this
  989. * method looks for any Authorization that permits doing the Function with
  990. * the Qualifier even if the Authorization's Qualifier happens to be a
  991. * parent of the Qualifier argument.
  992. *
  993. * @param object Id $agentId
  994. * @param object Type $functionType
  995. * @param object Id $qualifierId
  996. * @param boolean $isActiveNowOnly
  997. *
  998. * @return object AuthorizationIterator
  999. *
  1000. * @throws object AuthorizationException An exception with
  1001. * one of the following messages defined in
  1002. * org.osid.authorization.AuthorizationException may be thrown:
  1003. * {@link }
  1004. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  1005. * OPERATION_FAILED}, {@link }
  1006. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  1007. * PERMISSION_DENIED}, {@link }
  1008. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  1009. * CONFIGURATION_ERROR}, {@link }
  1010. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  1011. * UNIMPLEMENTED}, {@link }
  1012. * org.osid.authorization.AuthorizationException#NULL_ARGUMENT
  1013. * NULL_ARGUMENT}, {@link }
  1014. * org.osid.authorization.AuthorizationException#UNKNOWN_ID
  1015. * UNKNOWN_ID}, {@link }
  1016. * org.osid.authorization.AuthorizationException#UNKNOWN_TYPE
  1017. * UNKNOWN_TYPE}
  1018. *
  1019. * @access public
  1020. */
  1021. function getAllAZsByFuncType ( $agentId, $functionType, $qualifierId, $isActiveNowOnly ) {
  1022. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  1023. }
  1024.  
  1025. /**
  1026. * Returns the Qualifier Hierarchies supported by the Authorization
  1027. * implementation. Qualifier Hierarchies are referenced by Id and may be
  1028. * known and managed through the Hierarchy OSID.
  1029. *
  1030. * @return object IdIterator
  1031. *
  1032. * @throws object AuthorizationException An exception with
  1033. * one of the following messages defined in
  1034. * org.osid.authorization.AuthorizationException may be thrown:
  1035. * {@link }
  1036. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  1037. * OPERATION_FAILED}, {@link }
  1038. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  1039. * PERMISSION_DENIED}, {@link }
  1040. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  1041. * CONFIGURATION_ERROR}, {@link }
  1042. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  1043. * UNIMPLEMENTED}
  1044. *
  1045. * @access public
  1046. */
  1047. function getQualifierHierarchies () {
  1048. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  1049. }
  1050.  
  1051. /**
  1052. * This method indicates whether this implementation supports
  1053. * AuthorizationManager methods: createFunction, deleteFunction. Function
  1054. * methods: updateDescription, updateDisplayName.
  1055. *
  1056. * @return boolean
  1057. *
  1058. * @throws object AuthorizationException An exception with
  1059. * one of the following messages defined in
  1060. * org.osid.authorization.AuthorizationException may be thrown:
  1061. * {@link }
  1062. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  1063. * OPERATION_FAILED}, {@link }
  1064. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  1065. * PERMISSION_DENIED}, {@link }
  1066. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  1067. * CONFIGURATION_ERROR}, {@link }
  1068. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  1069. * UNIMPLEMENTED}
  1070. *
  1071. * @access public
  1072. */
  1073. function supportsDesign () {
  1074. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  1075. }
  1076.  
  1077. /**
  1078. * This method indicates whether this implementation supports
  1079. * AuthorizationManager methods: createAuthorization,
  1080. * createDatedAuthorization, createQualifier, createRootQualifier,
  1081. * deleteAuthorization, deleteQualifier, getFunctionTypes, getQualifier,
  1082. * getQualifierChildren, getQualifierDescendents, getQualifierHierarchies,
  1083. * getQualifierTypes, getRootQualifiers, getWhoCanDo. Function methods:
  1084. * getDescription, getDisplayName, getFunctionType, getId,
  1085. * getQualifierHierarchy. Qualifier methods: addParent, changeParent,
  1086. * getChildren, getDescription, getDisplayName, isParent, getId,
  1087. * getParents, getQualifierType, isChildOf, isDescendentOf, removeParent,
  1088. * updateDescription, updateDisplayName.
  1089. *
  1090. * @return boolean
  1091. *
  1092. * @throws object AuthorizationException An exception with
  1093. * one of the following messages defined in
  1094. * org.osid.authorization.AuthorizationException may be thrown:
  1095. * {@link }
  1096. * org.osid.authorization.AuthorizationException#OPERATION_FAILED
  1097. * OPERATION_FAILED}, {@link }
  1098. * org.osid.authorization.AuthorizationException#PERMISSION_DENIED
  1099. * PERMISSION_DENIED}, {@link }
  1100. * org.osid.authorization.AuthorizationException#CONFIGURATION_ERROR
  1101. * CONFIGURATION_ERROR}, {@link }
  1102. * org.osid.authorization.AuthorizationException#UNIMPLEMENTED
  1103. * UNIMPLEMENTED}
  1104. *
  1105. * @access public
  1106. */
  1107. function supportsMaintenance () {
  1108. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  1109. }
  1110. }
  1111.  
  1112. ?>

Documentation generated on Wed, 19 Sep 2007 10:21:41 -0400 by phpDocumentor 1.3.0RC3