Source for file ScheduleItem.php

Documentation is available at ScheduleItem.php

  1. <?php
  2. /**
  3. * ScheduleItem contains a set of AgentCommitments (e.g. calendar events) as
  4. * well as the creator of the ScheduleItem and some date information.
  5. *
  6. * <p>
  7. * OSID Version: 2.0
  8. * </p>
  9. *
  10. * <p>
  11. * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
  12. * O.K.I&#46; OSID Definition License}.
  13. * </p>
  14. *
  15. * @package org.osid.scheduling
  16. */
  17. class ScheduleItem
  18. {
  19. /**
  20. * Update the DisplayName of this ScheduleItem.
  21. *
  22. * @param string $displayName
  23. *
  24. * @throws object SchedulingException An exception with one of
  25. * the following messages defined in
  26. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  27. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  28. * OPERATION_FAILED}, {@link }
  29. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  30. * PERMISSION_DENIED}, {@link }
  31. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  32. * CONFIGURATION_ERROR}, {@link }
  33. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  34. * UNIMPLEMENTED}, {@link }
  35. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  36. * NULL_ARGUMENT}
  37. *
  38. * @access public
  39. */
  40. function updateDisplayName ( $displayName ) {
  41. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  42. }
  43.  
  44. /**
  45. * Get the description of this ScheduleItem.
  46. *
  47. * @param string $description
  48. *
  49. * @throws object SchedulingException An exception with one of
  50. * the following messages defined in
  51. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  52. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  53. * OPERATION_FAILED}, {@link }
  54. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  55. * PERMISSION_DENIED}, {@link }
  56. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  57. * CONFIGURATION_ERROR}, {@link }
  58. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  59. * UNIMPLEMENTED}, {@link }
  60. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  61. * NULL_ARGUMENT}
  62. *
  63. * @access public
  64. */
  65. function updateDescription ( $description ) {
  66. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  67. }
  68.  
  69. /**
  70. * Update the Start for this ScheduleItem.
  71. *
  72. * @param int $start
  73. *
  74. * @throws object SchedulingException An exception with one of
  75. * the following messages defined in
  76. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  77. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  78. * OPERATION_FAILED}, {@link }
  79. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  80. * PERMISSION_DENIED}, {@link }
  81. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  82. * CONFIGURATION_ERROR}, {@link }
  83. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  84. * UNIMPLEMENTED}, {@link }
  85. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  86. * NULL_ARGUMENT}
  87. *
  88. * @access public
  89. */
  90. function updateStart ( $start ) {
  91. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  92. }
  93.  
  94. /**
  95. * Update the End for this ScheduleItem.
  96. *
  97. * @param int $end
  98. *
  99. * @throws object SchedulingException An exception with one of
  100. * the following messages defined in
  101. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  102. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  103. * OPERATION_FAILED}, {@link }
  104. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  105. * PERMISSION_DENIED}, {@link }
  106. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  107. * CONFIGURATION_ERROR}, {@link }
  108. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  109. * UNIMPLEMENTED}, {@link }
  110. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  111. * NULL_ARGUMENT}
  112. *
  113. * @access public
  114. */
  115. function updateEnd ( $end ) {
  116. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  117. }
  118.  
  119. /**
  120. * Update the Status Type for this ScheduleItem.
  121. *
  122. * @param object Type $status
  123. *
  124. * @throws object SchedulingException An exception with one of
  125. * the following messages defined in
  126. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  127. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  128. * OPERATION_FAILED}, {@link }
  129. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  130. * PERMISSION_DENIED}, {@link }
  131. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  132. * CONFIGURATION_ERROR}, {@link }
  133. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  134. * UNIMPLEMENTED}, {@link }
  135. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  136. * NULL_ARGUMENT}, {@link }
  137. * org.osid.scheduling.SchedulingException#UNKNOWN_TYPE
  138. * UNKNOWN_TYPE}
  139. *
  140. * @access public
  141. */
  142. function updateStatus ( $status ) {
  143. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  144. }
  145.  
  146. /**
  147. * Get the unique Id for this ScheduleItem. The unique Id is set when the
  148. * ScheduleItem is created.
  149. *
  150. * @return object Id
  151. *
  152. * @throws object SchedulingException An exception with one of
  153. * the following messages defined in
  154. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  155. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  156. * OPERATION_FAILED}, {@link }
  157. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  158. * PERMISSION_DENIED}, {@link }
  159. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  160. * CONFIGURATION_ERROR}, {@link }
  161. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  162. * UNIMPLEMENTED}
  163. *
  164. * @access public
  165. */
  166. function getId () {
  167. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  168. }
  169.  
  170. /**
  171. * Get the DisplayName of this ScheduleItem.
  172. *
  173. * @return string
  174. *
  175. * @throws object SchedulingException An exception with one of
  176. * the following messages defined in
  177. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  178. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  179. * OPERATION_FAILED}, {@link }
  180. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  181. * PERMISSION_DENIED}, {@link }
  182. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  183. * CONFIGURATION_ERROR}, {@link }
  184. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  185. * UNIMPLEMENTED}
  186. *
  187. * @access public
  188. */
  189. function getDisplayName () {
  190. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  191. }
  192.  
  193. /**
  194. * Get the description of this ScheduleItem.
  195. *
  196. * @return string
  197. *
  198. * @throws object SchedulingException An exception with one of
  199. * the following messages defined in
  200. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  201. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  202. * OPERATION_FAILED}, {@link }
  203. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  204. * PERMISSION_DENIED}, {@link }
  205. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  206. * CONFIGURATION_ERROR}, {@link }
  207. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  208. * UNIMPLEMENTED}
  209. *
  210. * @access public
  211. */
  212. function getDescription () {
  213. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  214. }
  215.  
  216. /**
  217. * Get the unique Id of the Agent that created this ScheduleItem.
  218. *
  219. * @return object Id
  220. *
  221. * @throws object SchedulingException An exception with one of
  222. * the following messages defined in
  223. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  224. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  225. * OPERATION_FAILED}, {@link }
  226. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  227. * PERMISSION_DENIED}, {@link }
  228. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  229. * CONFIGURATION_ERROR}, {@link }
  230. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  231. * UNIMPLEMENTED}
  232. *
  233. * @access public
  234. */
  235. function getCreator () {
  236. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  237. }
  238.  
  239. /**
  240. * Get the Start for this ScheduleItem.
  241. *
  242. * @return int
  243. *
  244. * @throws object SchedulingException An exception with one of
  245. * the following messages defined in
  246. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  247. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  248. * OPERATION_FAILED}, {@link }
  249. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  250. * PERMISSION_DENIED}, {@link }
  251. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  252. * CONFIGURATION_ERROR}, {@link }
  253. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  254. * UNIMPLEMENTED}
  255. *
  256. * @access public
  257. */
  258. function getStart () {
  259. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  260. }
  261.  
  262. /**
  263. * Get the End for this ScheduleItem.
  264. *
  265. * @return int
  266. *
  267. * @throws object SchedulingException An exception with one of
  268. * the following messages defined in
  269. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  270. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  271. * OPERATION_FAILED}, {@link }
  272. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  273. * PERMISSION_DENIED}, {@link }
  274. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  275. * CONFIGURATION_ERROR}, {@link }
  276. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  277. * UNIMPLEMENTED}
  278. *
  279. * @access public
  280. */
  281. function getEnd () {
  282. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  283. }
  284.  
  285. /**
  286. * Get the Status Type for this ScheduleItem.
  287. *
  288. * @return object Type
  289. *
  290. * @throws object SchedulingException An exception with one of
  291. * the following messages defined in
  292. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  293. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  294. * OPERATION_FAILED}, {@link }
  295. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  296. * PERMISSION_DENIED}, {@link }
  297. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  298. * CONFIGURATION_ERROR}, {@link }
  299. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  300. * UNIMPLEMENTED}
  301. *
  302. * @access public
  303. */
  304. function getStatus () {
  305. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  306. }
  307.  
  308. /**
  309. * Get the Master Identifier for this ScheduleItem. A Master Identifier is
  310. * a key, rule, or function that can be used to associated more than one
  311. * ScheduleItem together. An example can be recurring items where each
  312. * recurring item has the same Master Identifier.
  313. *
  314. * @return string
  315. *
  316. * @throws object SchedulingException An exception with one of
  317. * the following messages defined in
  318. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  319. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  320. * OPERATION_FAILED}, {@link }
  321. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  322. * PERMISSION_DENIED}, {@link }
  323. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  324. * CONFIGURATION_ERROR}, {@link }
  325. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  326. * UNIMPLEMENTED}
  327. *
  328. * @access public
  329. */
  330. function getMasterIdentifier () {
  331. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  332. }
  333.  
  334. /**
  335. * Get all the Property Types for ScheduleItem.
  336. *
  337. * @return object TypeIterator
  338. *
  339. * @throws object SchedulingException An exception with one of
  340. * the following messages defined in
  341. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  342. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  343. * OPERATION_FAILED}, {@link }
  344. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  345. * PERMISSION_DENIED}, {@link }
  346. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  347. * CONFIGURATION_ERROR}, {@link }
  348. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  349. * UNIMPLEMENTED}
  350. *
  351. * @access public
  352. */
  353. function getPropertyTypes () {
  354. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  355. }
  356.  
  357. /**
  358. * Get all the Agent commitments for this ScheduleItem.
  359. *
  360. * @return object AgentCommitmentIterator
  361. *
  362. * @throws object SchedulingException An exception with one of
  363. * the following messages defined in
  364. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  365. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  366. * OPERATION_FAILED}, {@link }
  367. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  368. * PERMISSION_DENIED}, {@link }
  369. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  370. * CONFIGURATION_ERROR}, {@link }
  371. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  372. * UNIMPLEMENTED}
  373. *
  374. * @access public
  375. */
  376. function getAgentCommitments () {
  377. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  378. }
  379.  
  380. /**
  381. * Change a previously added Agent commitment for this ScheduleItem.
  382. *
  383. * @param object Id $agentId
  384. * @param object Type $agentStatus
  385. *
  386. * @throws object SchedulingException An exception with one of
  387. * the following messages defined in
  388. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  389. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  390. * OPERATION_FAILED}, {@link }
  391. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  392. * PERMISSION_DENIED}, {@link }
  393. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  394. * CONFIGURATION_ERROR}, {@link }
  395. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  396. * UNIMPLEMENTED}, {@link }
  397. * org.osid.scheduling.SchedulingException#UNKNOWN_ID UNKNOWN_ID},
  398. * {@link org.osid.scheduling.SchedulingException#UNKNOWN_TYPE}
  399. * UNKNOWN_TYPE}
  400. *
  401. * @access public
  402. */
  403. function changeAgentCommitment ( $agentId, $agentStatus ) {
  404. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  405. }
  406.  
  407. /**
  408. * Add an Agent commitment to this ScheduleItem.
  409. *
  410. * @param object Id $agentId
  411. * @param object Type $agentStatus
  412. *
  413. * @throws object SchedulingException An exception with one of
  414. * the following messages defined in
  415. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  416. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  417. * OPERATION_FAILED}, {@link }
  418. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  419. * PERMISSION_DENIED}, {@link }
  420. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  421. * CONFIGURATION_ERROR}, {@link }
  422. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  423. * UNIMPLEMENTED}, {@link }
  424. * org.osid.scheduling.SchedulingException#UNKNOWN_ID UNKNOWN_ID},
  425. * {@link org.osid.scheduling.SchedulingException#UNKNOWN_TYPE}
  426. * UNKNOWN_TYPE}, {@link }
  427. * org.osid.shared.SharedException#ALREADY_ADDED ALREADY_ADDED}
  428. *
  429. * @access public
  430. */
  431. function addAgentCommitment ( $agentId, $agentStatus ) {
  432. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  433. }
  434.  
  435. /**
  436. * Get the Properties of this Type associated with this ScheduleItem.
  437. *
  438. * @param object Type $propertiesType
  439. *
  440. * @return object Properties
  441. *
  442. * @throws object SchedulingException An exception with one of
  443. * the following messages defined in
  444. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  445. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  446. * OPERATION_FAILED}, {@link }
  447. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  448. * PERMISSION_DENIED}, {@link }
  449. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  450. * CONFIGURATION_ERROR}, {@link }
  451. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  452. * UNIMPLEMENTED}, {@link }
  453. * org.osid.scheduling.SchedulingException#NULL_ARGUMENT
  454. * NULL_ARGUMENT}, {@link }
  455. * org.osid.scheduling.SchedulingException#UNKNOWN_TYPE
  456. * UNKNOWN_TYPE}
  457. *
  458. * @access public
  459. */
  460. function getPropertiesByType ( $propertiesType ) {
  461. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  462. }
  463.  
  464. /**
  465. * Get the Properties associated with this ScheduleItem.
  466. *
  467. * @return object PropertiesIterator
  468. *
  469. * @throws object SchedulingException An exception with one of
  470. * the following messages defined in
  471. * org.osid.scheduling.SchedulingException may be thrown: {@link }
  472. * org.osid.scheduling.SchedulingException#OPERATION_FAILED
  473. * OPERATION_FAILED}, {@link }
  474. * org.osid.scheduling.SchedulingException#PERMISSION_DENIED
  475. * PERMISSION_DENIED}, {@link }
  476. * org.osid.scheduling.SchedulingException#CONFIGURATION_ERROR
  477. * CONFIGURATION_ERROR}, {@link }
  478. * org.osid.scheduling.SchedulingException#UNIMPLEMENTED
  479. * UNIMPLEMENTED}
  480. *
  481. * @access public
  482. */
  483. function getProperties () {
  484. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  485. }
  486. }
  487.  
  488. ?>

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