Source for file CanonicalCourse.php

Documentation is available at CanonicalCourse.php

  1. <?php
  2. /**
  3. * CanonicalCourse contains general information about a course. This is in
  4. * contrast to the CourseOffering which contains information about a concrete
  5. * offering of this course in a specific term and with identified people and
  6. * roles. The CourseSection is the third and most specific course-related
  7. * object. The section includes information about the location of the class
  8. * as well as the roster of students. CanonicalCourses can contain other
  9. * CanonicalCourses and may be organized hierarchically, in schools,
  10. * departments, for majors, and so on. For each CanonicalCourse, there are
  11. * zero or more offerings and for each offering, zero or more sections. All
  12. * three levels have separate data for Title, Number, Description, and Id.
  13. * This information can be the same or different as implementations choose and
  14. * applications require.
  15. *
  16. * <p>
  17. * OSID Version: 2.0
  18. * </p>
  19. *
  20. * <p>
  21. * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
  22. * O.K.I&#46; OSID Definition License}.
  23. * </p>
  24. *
  25. * @package org.osid.coursemanagement
  26. */
  27. class CanonicalCourse
  28. {
  29. /**
  30. * Update the title for this CanonicalCourse.
  31. *
  32. * @param string $title
  33. *
  34. * @throws object CourseManagementException An exception
  35. * with one of the following messages defined in
  36. * org.osid.coursemanagement.CourseManagementException may be
  37. * thrown: {@link }
  38. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  39. * OPERATION_FAILED}, {@link }
  40. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  41. * PERMISSION_DENIED}, {@link }
  42. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  43. * CONFIGURATION_ERROR}, {@link }
  44. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  45. * UNIMPLEMENTED}, {@link }
  46. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  47. * NULL_ARGUMENT}
  48. *
  49. * @access public
  50. */
  51. function updateTitle ( $title ) {
  52. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  53. }
  54.  
  55. /**
  56. * Update the number for this CanonicalCourse.
  57. *
  58. * @param string $number
  59. *
  60. * @throws object CourseManagementException An exception
  61. * with one of the following messages defined in
  62. * org.osid.coursemanagement.CourseManagementException may be
  63. * thrown: {@link }
  64. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  65. * OPERATION_FAILED}, {@link }
  66. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  67. * PERMISSION_DENIED}, {@link }
  68. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  69. * CONFIGURATION_ERROR}, {@link }
  70. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  71. * UNIMPLEMENTED}, {@link }
  72. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  73. * NULL_ARGUMENT}
  74. *
  75. * @access public
  76. */
  77. function updateNumber ( $number ) {
  78. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  79. }
  80.  
  81. /**
  82. * Update the description for this CanonicalCourse.
  83. *
  84. * @param string $description
  85. *
  86. * @throws object CourseManagementException An exception
  87. * with one of the following messages defined in
  88. * org.osid.coursemanagement.CourseManagementException may be
  89. * thrown: {@link }
  90. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  91. * OPERATION_FAILED}, {@link }
  92. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  93. * PERMISSION_DENIED}, {@link }
  94. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  95. * CONFIGURATION_ERROR}, {@link }
  96. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  97. * UNIMPLEMENTED}, {@link }
  98. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  99. * NULL_ARGUMENT}
  100. *
  101. * @access public
  102. */
  103. function updateDescription ( $description ) {
  104. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  105. }
  106.  
  107. /**
  108. * Update the display name for this CanonicalCourse.
  109. *
  110. * @param string $displayName
  111. *
  112. * @throws object CourseManagementException An exception
  113. * with one of the following messages defined in
  114. * org.osid.coursemanagement.CourseManagementException may be
  115. * thrown: {@link }
  116. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  117. * OPERATION_FAILED}, {@link }
  118. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  119. * PERMISSION_DENIED}, {@link }
  120. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  121. * CONFIGURATION_ERROR}, {@link }
  122. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  123. * UNIMPLEMENTED}, {@link }
  124. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  125. * NULL_ARGUMENT}
  126. *
  127. * @access public
  128. */
  129. function updateDisplayName ( $displayName ) {
  130. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  131. }
  132.  
  133. /**
  134. * Update the credits for this CanonicalCourse.
  135. *
  136. * @param float $credits
  137. *
  138. * @throws object CourseManagementException An exception
  139. * with one of the following messages defined in
  140. * org.osid.coursemanagement.CourseManagementException may be
  141. * thrown: {@link }
  142. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  143. * OPERATION_FAILED}, {@link }
  144. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  145. * PERMISSION_DENIED}, {@link }
  146. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  147. * CONFIGURATION_ERROR}, {@link }
  148. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  149. * UNIMPLEMENTED}, {@link }
  150. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  151. * NULL_ARGUMENT}
  152. *
  153. * @access public
  154. */
  155. function updateCredits ( $credits ) {
  156. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  157. }
  158.  
  159. /**
  160. * Get the title for this CanonicalCourse.
  161. *
  162. * @return string
  163. *
  164. * @throws object CourseManagementException An exception
  165. * with one of the following messages defined in
  166. * org.osid.coursemanagement.CourseManagementException may be
  167. * thrown: {@link }
  168. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  169. * OPERATION_FAILED}, {@link }
  170. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  171. * PERMISSION_DENIED}, {@link }
  172. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  173. * CONFIGURATION_ERROR}, {@link }
  174. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  175. * UNIMPLEMENTED}
  176. *
  177. * @access public
  178. */
  179. function getTitle () {
  180. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  181. }
  182.  
  183. /**
  184. * Get the number for this CanonicalCourse.
  185. *
  186. * @return string
  187. *
  188. * @throws object CourseManagementException An exception
  189. * with one of the following messages defined in
  190. * org.osid.coursemanagement.CourseManagementException may be
  191. * thrown: {@link }
  192. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  193. * OPERATION_FAILED}, {@link }
  194. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  195. * PERMISSION_DENIED}, {@link }
  196. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  197. * CONFIGURATION_ERROR}, {@link }
  198. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  199. * UNIMPLEMENTED}
  200. *
  201. * @access public
  202. */
  203. function getNumber () {
  204. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  205. }
  206.  
  207. /**
  208. * Get the description for this CanonicalCourse.
  209. *
  210. * @return string
  211. *
  212. * @throws object CourseManagementException An exception
  213. * with one of the following messages defined in
  214. * org.osid.coursemanagement.CourseManagementException may be
  215. * thrown: {@link }
  216. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  217. * OPERATION_FAILED}, {@link }
  218. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  219. * PERMISSION_DENIED}, {@link }
  220. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  221. * CONFIGURATION_ERROR}, {@link }
  222. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  223. * UNIMPLEMENTED}
  224. *
  225. * @access public
  226. */
  227. function getDescription () {
  228. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  229. }
  230.  
  231. /**
  232. * Get the display name for this CanonicalCourse.
  233. *
  234. * @return string
  235. *
  236. * @throws object CourseManagementException An exception
  237. * with one of the following messages defined in
  238. * org.osid.coursemanagement.CourseManagementException may be
  239. * thrown: {@link }
  240. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  241. * OPERATION_FAILED}, {@link }
  242. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  243. * PERMISSION_DENIED}, {@link }
  244. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  245. * CONFIGURATION_ERROR}, {@link }
  246. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  247. * UNIMPLEMENTED}
  248. *
  249. * @access public
  250. */
  251. function getDisplayName () {
  252. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  253. }
  254.  
  255. /**
  256. * Get the unique Id for this CanonicalCourse.
  257. *
  258. * @return object Id
  259. *
  260. * @throws object CourseManagementException An exception
  261. * with one of the following messages defined in
  262. * org.osid.coursemanagement.CourseManagementException may be
  263. * thrown: {@link }
  264. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  265. * OPERATION_FAILED}, {@link }
  266. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  267. * PERMISSION_DENIED}, {@link }
  268. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  269. * CONFIGURATION_ERROR}, {@link }
  270. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  271. * UNIMPLEMENTED}
  272. *
  273. * @access public
  274. */
  275. function getId () {
  276. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  277. }
  278.  
  279. /**
  280. * Get the Course Type for this CanonicalCourse. This Type is meaningful
  281. * to the implementation and applications and are not specified by the
  282. * OSID.
  283. *
  284. * @return object Type
  285. *
  286. * @throws object CourseManagementException An exception
  287. * with one of the following messages defined in
  288. * org.osid.coursemanagement.CourseManagementException may be
  289. * thrown: {@link }
  290. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  291. * OPERATION_FAILED}, {@link }
  292. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  293. * PERMISSION_DENIED}, {@link }
  294. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  295. * CONFIGURATION_ERROR}, {@link }
  296. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  297. * UNIMPLEMENTED}
  298. *
  299. * @access public
  300. */
  301. function getCourseType () {
  302. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  303. }
  304.  
  305. /**
  306. * Get the credits for this CanonicalCourse.
  307. *
  308. * @return float
  309. *
  310. * @throws object CourseManagementException An exception
  311. * with one of the following messages defined in
  312. * org.osid.coursemanagement.CourseManagementException may be
  313. * thrown: {@link }
  314. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  315. * OPERATION_FAILED}, {@link }
  316. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  317. * PERMISSION_DENIED}, {@link }
  318. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  319. * CONFIGURATION_ERROR}, {@link }
  320. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  321. * UNIMPLEMENTED}
  322. *
  323. * @access public
  324. */
  325. function getCredits () {
  326. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  327. }
  328.  
  329. /**
  330. * Get the Status for this CanonicalCourse.
  331. *
  332. * @return object Type
  333. *
  334. * @throws object CourseManagementException An exception
  335. * with one of the following messages defined in
  336. * org.osid.coursemanagement.CourseManagementException may be
  337. * thrown: {@link }
  338. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  339. * OPERATION_FAILED}, {@link }
  340. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  341. * PERMISSION_DENIED}, {@link }
  342. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  343. * CONFIGURATION_ERROR}, {@link }
  344. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  345. * UNIMPLEMENTED}
  346. *
  347. * @access public
  348. */
  349. function getStatus () {
  350. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  351. }
  352.  
  353. /**
  354. * Get all the Property Types for CanonicalCourse.
  355. *
  356. * @return object TypeIterator
  357. *
  358. * @throws object CourseManagementException An exception
  359. * with one of the following messages defined in
  360. * org.osid.coursemanagement.CourseManagementException may be
  361. * thrown: {@link }
  362. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  363. * OPERATION_FAILED}, {@link }
  364. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  365. * PERMISSION_DENIED}, {@link }
  366. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  367. * CONFIGURATION_ERROR}, {@link }
  368. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  369. * UNIMPLEMENTED}
  370. *
  371. * @access public
  372. */
  373. function getPropertyTypes () {
  374. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  375. }
  376.  
  377. /**
  378. * Get the Properties associated with this CanonicalCourse.
  379. *
  380. * @return object PropertiesIterator
  381. *
  382. * @throws object CourseManagementException An exception
  383. * with one of the following messages defined in
  384. * org.osid.coursemanagement.CourseManagementException may be
  385. * thrown: {@link }
  386. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  387. * OPERATION_FAILED}, {@link }
  388. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  389. * PERMISSION_DENIED}, {@link }
  390. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  391. * CONFIGURATION_ERROR}, {@link }
  392. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  393. * UNIMPLEMENTED}
  394. *
  395. * @access public
  396. */
  397. function getProperties () {
  398. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  399. }
  400.  
  401. /**
  402. * Create a new CanonicalCourse.
  403. *
  404. * @param string $title
  405. * @param string $number
  406. * @param string $description
  407. * @param object Type $courseType
  408. * @param object Type $courseStatusType
  409. * @param float $credits
  410. *
  411. * @return object CanonicalCourse
  412. *
  413. * @throws object CourseManagementException An exception
  414. * with one of the following messages defined in
  415. * org.osid.coursemanagement.CourseManagementException may be
  416. * thrown: {@link }
  417. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  418. * OPERATION_FAILED}, {@link }
  419. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  420. * PERMISSION_DENIED}, {@link }
  421. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  422. * CONFIGURATION_ERROR}, {@link }
  423. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  424. * UNIMPLEMENTED}, {@link }
  425. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  426. * NULL_ARGUMENT}, {@link }
  427. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  428. * UNKNOWN_TYPE}
  429. *
  430. * @access public
  431. */
  432. function createCanonicalCourse ( $title, $number, $description, $courseType, $courseStatusType, $credits ) {
  433. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  434. }
  435.  
  436. /**
  437. * Get all CanonicalCourses.
  438. *
  439. * @return object CanonicalCourseIterator
  440. *
  441. * @throws object CourseManagementException An exception
  442. * with one of the following messages defined in
  443. * org.osid.coursemanagement.CourseManagementException may be
  444. * thrown: {@link }
  445. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  446. * OPERATION_FAILED}, {@link }
  447. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  448. * PERMISSION_DENIED}, {@link }
  449. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  450. * CONFIGURATION_ERROR}, {@link }
  451. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  452. * UNIMPLEMENTED}
  453. *
  454. * @access public
  455. */
  456. function getCanonicalCourses () {
  457. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  458. }
  459.  
  460. /**
  461. * Get all CanonicalCourses of the specified Type.
  462. *
  463. * @param object Type $courseType
  464. *
  465. * @return object CanonicalCourseIterator
  466. *
  467. * @throws object CourseManagementException An exception
  468. * with one of the following messages defined in
  469. * org.osid.coursemanagement.CourseManagementException may be
  470. * thrown: {@link }
  471. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  472. * OPERATION_FAILED}, {@link }
  473. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  474. * PERMISSION_DENIED}, {@link }
  475. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  476. * CONFIGURATION_ERROR}, {@link }
  477. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  478. * UNIMPLEMENTED}, {@link }
  479. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  480. * NULL_ARGUMENT}, {@link }
  481. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  482. * UNKNOWN_TYPE}
  483. *
  484. * @access public
  485. */
  486. function getCanonicalCoursesByType ( $courseType ) {
  487. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  488. }
  489.  
  490. /**
  491. * Create a new CourseOffering.
  492. *
  493. * @param string $title
  494. * @param string $number
  495. * @param string $description
  496. * @param object Id $termId
  497. * @param object Type $offeringType
  498. * @param object Type $offeringStatusType
  499. * @param object Type $courseGradeType
  500. *
  501. * @return object CourseOffering
  502. *
  503. * @throws object CourseManagementException An exception
  504. * with one of the following messages defined in
  505. * org.osid.coursemanagement.CourseManagementException may be
  506. * thrown: {@link }
  507. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  508. * OPERATION_FAILED}, {@link }
  509. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  510. * PERMISSION_DENIED}, {@link }
  511. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  512. * CONFIGURATION_ERROR}, {@link }
  513. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  514. * UNIMPLEMENTED}, {@link }
  515. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  516. * NULL_ARGUMENT}, {@link }
  517. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  518. * UNKNOWN_TYPE}
  519. *
  520. * @access public
  521. */
  522. function createCourseOffering ( $title, $number, $description, $termId, $offeringType, $offeringStatusType, $courseGradeType ) {
  523. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  524. }
  525.  
  526. /**
  527. * Delete a CourseOffering.
  528. *
  529. * @param object Id $courseOfferingId
  530. *
  531. * @throws object CourseManagementException An exception
  532. * with one of the following messages defined in
  533. * org.osid.coursemanagement.CourseManagementException may be
  534. * thrown: {@link }
  535. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  536. * OPERATION_FAILED}, {@link }
  537. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  538. * PERMISSION_DENIED}, {@link }
  539. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  540. * CONFIGURATION_ERROR}, {@link }
  541. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  542. * UNIMPLEMENTED}, {@link }
  543. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  544. * NULL_ARGUMENT}, {@link }
  545. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_ID
  546. * UNKNOWN_ID}
  547. *
  548. * @access public
  549. */
  550. function deleteCourseOffering ( $courseOfferingId ) {
  551. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  552. }
  553.  
  554. /**
  555. * Get all CourseOfferings.
  556. *
  557. * @return object CourseOfferingIterator
  558. *
  559. * @throws object CourseManagementException An exception
  560. * with one of the following messages defined in
  561. * org.osid.coursemanagement.CourseManagementException may be
  562. * thrown: {@link }
  563. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  564. * OPERATION_FAILED}, {@link }
  565. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  566. * PERMISSION_DENIED}, {@link }
  567. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  568. * CONFIGURATION_ERROR}, {@link }
  569. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  570. * UNIMPLEMENTED}
  571. *
  572. * @access public
  573. */
  574. function getCourseOfferings () {
  575. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  576. }
  577.  
  578. /**
  579. * Get all CourseOfferings of the specified Type.
  580. *
  581. * @param object Type $offeringType
  582. *
  583. * @return object CourseOfferingIterator
  584. *
  585. * @throws object CourseManagementException An exception
  586. * with one of the following messages defined in
  587. * org.osid.coursemanagement.CourseManagementException may be
  588. * thrown: {@link }
  589. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  590. * OPERATION_FAILED}, {@link }
  591. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  592. * PERMISSION_DENIED}, {@link }
  593. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  594. * CONFIGURATION_ERROR}, {@link }
  595. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  596. * UNIMPLEMENTED}, {@link }
  597. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  598. * NULL_ARGUMENT}, {@link }
  599. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  600. * UNKNOWN_TYPE}
  601. *
  602. * @access public
  603. */
  604. function getCourseOfferingsByType ( $offeringType ) {
  605. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  606. }
  607.  
  608. /**
  609. * Add an equivalent course which are for mapping courses across
  610. * departments, schools, or institutions as well as for providing new
  611. * courses that map to previous ones. This can be used for
  612. * cross-listening. Note that if course A is equivalent to course B it
  613. * does not necessarily follow that course B is equivalent to course A.
  614. * Course A could cover a superset of the mateiral in course B.
  615. *
  616. * @param object Id $canonicalCourseId
  617. *
  618. * @throws object CourseManagementException An exception
  619. * with one of the following messages defined in
  620. * org.osid.coursemanagement.CourseManagementException may be
  621. * thrown: {@link }
  622. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  623. * OPERATION_FAILED}, {@link }
  624. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  625. * PERMISSION_DENIED}, {@link }
  626. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  627. * CONFIGURATION_ERROR}, {@link }
  628. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  629. * UNIMPLEMENTED}, {@link }
  630. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  631. * NULL_ARGUMENT}, {@link }
  632. * org.osid.coursemanagement.CourseManagementException#ALREADY_ADDED
  633. * ALREADY_ADDED}
  634. *
  635. * @access public
  636. */
  637. function addEquivalentCourse ( $canonicalCourseId ) {
  638. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  639. }
  640.  
  641. /**
  642. * Remove a equivalent courses for this CanonicalCourse.
  643. *
  644. * @param object Id $canonicalCourseId
  645. *
  646. * @throws object CourseManagementException An exception
  647. * with one of the following messages defined in
  648. * org.osid.coursemanagement.CourseManagementException may be
  649. * thrown: {@link }
  650. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  651. * OPERATION_FAILED}, {@link }
  652. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  653. * PERMISSION_DENIED}, {@link }
  654. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  655. * CONFIGURATION_ERROR}, {@link }
  656. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  657. * UNIMPLEMENTED}, {@link }
  658. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  659. * NULL_ARGUMENT}, {@link }
  660. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_ID
  661. * UNKNOWN_ID}
  662. *
  663. * @access public
  664. */
  665. function removeEquivalentCourse ( $canonicalCourseId ) {
  666. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  667. }
  668.  
  669. /**
  670. * Get all equivalent courses for this CanonicalCourse.
  671. *
  672. * @return object CanonicalCourseIterator
  673. *
  674. * @throws object CourseManagementException An exception
  675. * with one of the following messages defined in
  676. * org.osid.coursemanagement.CourseManagementException may be
  677. * thrown: {@link }
  678. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  679. * OPERATION_FAILED}, {@link }
  680. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  681. * PERMISSION_DENIED}, {@link }
  682. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  683. * CONFIGURATION_ERROR}, {@link }
  684. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  685. * UNIMPLEMENTED}
  686. *
  687. * @access public
  688. */
  689. function getEquivalentCourses () {
  690. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  691. }
  692.  
  693. /**
  694. * Add a Topic for this CanonicalCourse.
  695. *
  696. * @param string $topic
  697. *
  698. * @throws object CourseManagementException An exception
  699. * with one of the following messages defined in
  700. * org.osid.coursemanagement.CourseManagementException may be
  701. * thrown: {@link }
  702. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  703. * OPERATION_FAILED}, {@link }
  704. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  705. * PERMISSION_DENIED}, {@link }
  706. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  707. * CONFIGURATION_ERROR}, {@link }
  708. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  709. * UNIMPLEMENTED}, {@link }
  710. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  711. * NULL_ARGUMENT}, {@link }
  712. * org.osid.coursemanagement.CourseManagementException#ALREADY_ADDED
  713. * ALREADY_ADDED}
  714. *
  715. * @access public
  716. */
  717. function addTopic ( $topic ) {
  718. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  719. }
  720.  
  721. /**
  722. * Remove a Topic for this CanonicalCourse.
  723. *
  724. * @param string $topic
  725. *
  726. * @throws object CourseManagementException An exception
  727. * with one of the following messages defined in
  728. * org.osid.coursemanagement.CourseManagementException may be
  729. * thrown: {@link }
  730. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  731. * OPERATION_FAILED}, {@link }
  732. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  733. * PERMISSION_DENIED}, {@link }
  734. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  735. * CONFIGURATION_ERROR}, {@link }
  736. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  737. * UNIMPLEMENTED}, {@link }
  738. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  739. * NULL_ARGUMENT}
  740. *
  741. * @access public
  742. */
  743. function removeTopic ( $topic ) {
  744. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  745. }
  746.  
  747. /**
  748. * Get all Topics for this CanonicalCourse.
  749. *
  750. * @return object StringIterator
  751. *
  752. * @throws object CourseManagementException An exception
  753. * with one of the following messages defined in
  754. * org.osid.coursemanagement.CourseManagementException may be
  755. * thrown: {@link }
  756. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  757. * OPERATION_FAILED}, {@link }
  758. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  759. * PERMISSION_DENIED}, {@link }
  760. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  761. * CONFIGURATION_ERROR}, {@link }
  762. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  763. * UNIMPLEMENTED}
  764. *
  765. * @access public
  766. */
  767. function getTopics () {
  768. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  769. }
  770.  
  771. /**
  772. * Update the Status for this CanonicalCourse.
  773. *
  774. * @param object Type $statusType
  775. *
  776. * @throws object CourseManagementException An exception
  777. * with one of the following messages defined in
  778. * org.osid.coursemanagement.CourseManagementException may be
  779. * thrown: {@link }
  780. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  781. * OPERATION_FAILED}, {@link }
  782. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  783. * PERMISSION_DENIED}, {@link }
  784. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  785. * CONFIGURATION_ERROR}, {@link }
  786. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  787. * UNIMPLEMENTED}, {@link }
  788. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  789. * NULL_ARGUMENT}, {@link }
  790. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  791. * UNKNOWN_TYPE}
  792. *
  793. * @access public
  794. */
  795. function updateStatus ( $statusType ) {
  796. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  797. }
  798.  
  799. /**
  800. * Get the Properties of this Type associated with this CanonicalCourse.
  801. *
  802. * @param object Type $propertiesType
  803. *
  804. * @return object Properties
  805. *
  806. * @throws object CourseManagementException An exception
  807. * with one of the following messages defined in
  808. * org.osid.coursemanagement.CourseManagementException may be
  809. * thrown: {@link }
  810. * org.osid.coursemanagement.CourseManagementException#OPERATION_FAILED
  811. * OPERATION_FAILED}, {@link }
  812. * org.osid.coursemanagement.CourseManagementException#PERMISSION_DENIED
  813. * PERMISSION_DENIED}, {@link }
  814. * org.osid.coursemanagement.CourseManagementException#CONFIGURATION_ERROR
  815. * CONFIGURATION_ERROR}, {@link }
  816. * org.osid.coursemanagement.CourseManagementException#UNIMPLEMENTED
  817. * UNIMPLEMENTED}, {@link }
  818. * org.osid.coursemanagement.CourseManagementException#NULL_ARGUMENT
  819. * NULL_ARGUMENT}, {@link }
  820. * org.osid.coursemanagement.CourseManagementException#UNKNOWN_TYPE
  821. * UNKNOWN_TYPE}
  822. *
  823. * @access public
  824. */
  825. function getPropertiesByType ( $propertiesType ) {
  826. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  827. }
  828. }
  829.  
  830. ?>

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