Source for file Asset.php

Documentation is available at Asset.php

  1. <?php
  2. /**
  3. * Asset manages the Asset itself. Assets have content as well as Records
  4. * appropriate to the AssetType and RecordStructures for the Asset. Assets
  5. * may also contain other Assets.
  6. *
  7. * <p>
  8. * OSID Version: 2.0
  9. * </p>
  10. *
  11. * <p>
  12. * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
  13. * O.K.I&#46; OSID Definition License}.
  14. * </p>
  15. *
  16. * @package org.osid.repository
  17. */
  18. class Asset
  19. {
  20. /**
  21. * Update the display name for this Asset.
  22. *
  23. * @param string $displayName
  24. *
  25. * @throws object RepositoryException An exception with one of
  26. * the following messages defined in
  27. * org.osid.repository.RepositoryException may be thrown: {@link }
  28. * org.osid.repository.RepositoryException#OPERATION_FAILED
  29. * OPERATION_FAILED}, {@link }
  30. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  31. * PERMISSION_DENIED}, {@link }
  32. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  33. * CONFIGURATION_ERROR}, {@link }
  34. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  35. * UNIMPLEMENTED}, {@link }
  36. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  37. * NULL_ARGUMENT}
  38. *
  39. * @access public
  40. */
  41. function updateDisplayName ( $displayName ) {
  42. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  43. }
  44.  
  45. /**
  46. * Update the date at which this Asset is effective.
  47. *
  48. * @param int $effectiveDate
  49. *
  50. * @throws object RepositoryException An exception with one of
  51. * the following messages defined in
  52. * org.osid.repository.RepositoryException may be thrown: {@link }
  53. * org.osid.repository.RepositoryException#OPERATION_FAILED
  54. * OPERATION_FAILED}, {@link }
  55. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  56. * PERMISSION_DENIED}, {@link }
  57. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  58. * CONFIGURATION_ERROR}, {@link }
  59. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  60. * UNIMPLEMENTED}, {@link }
  61. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  62. * NULL_ARGUMENT}, {@link }
  63. * org.osid.repository.RepositoryException#EFFECTIVE_PRECEDE_EXPIRATION}
  64. *
  65. * @access public
  66. */
  67. function updateEffectiveDate ( $effectiveDate ) {
  68. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  69. }
  70.  
  71. /**
  72. * Update the date at which this Asset expires.
  73. *
  74. * @param int $expirationDate
  75. *
  76. * @throws object RepositoryException An exception with one of
  77. * the following messages defined in
  78. * org.osid.repository.RepositoryException may be thrown: {@link }
  79. * org.osid.repository.RepositoryException#OPERATION_FAILED
  80. * OPERATION_FAILED}, {@link }
  81. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  82. * PERMISSION_DENIED}, {@link }
  83. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  84. * CONFIGURATION_ERROR}, {@link }
  85. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  86. * UNIMPLEMENTED}, {@link }
  87. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  88. * NULL_ARGUMENT}, {@link }
  89. * org.osid.repository.RepositoryException#EFFECTIVE_PRECEDE_EXPIRATION}
  90. *
  91. * @access public
  92. */
  93. function updateExpirationDate ( $expirationDate ) {
  94. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  95. }
  96.  
  97. /**
  98. * Get the display name for this Asset.
  99. *
  100. * @return string
  101. *
  102. * @throws object RepositoryException An exception with one of
  103. * the following messages defined in
  104. * org.osid.repository.RepositoryException may be thrown: {@link }
  105. * org.osid.repository.RepositoryException#OPERATION_FAILED
  106. * OPERATION_FAILED}, {@link }
  107. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  108. * PERMISSION_DENIED}, {@link }
  109. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  110. * CONFIGURATION_ERROR}, {@link }
  111. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  112. * UNIMPLEMENTED}
  113. *
  114. * @access public
  115. */
  116. function getDisplayName () {
  117. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  118. }
  119.  
  120. /**
  121. * Get the description for this Asset.
  122. *
  123. * @return string
  124. *
  125. * @throws object RepositoryException An exception with one of
  126. * the following messages defined in
  127. * org.osid.repository.RepositoryException may be thrown: {@link }
  128. * org.osid.repository.RepositoryException#OPERATION_FAILED
  129. * OPERATION_FAILED}, {@link }
  130. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  131. * PERMISSION_DENIED}, {@link }
  132. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  133. * CONFIGURATION_ERROR}, {@link }
  134. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  135. * UNIMPLEMENTED}
  136. *
  137. * @access public
  138. */
  139. function getDescription () {
  140. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  141. }
  142.  
  143. /**
  144. * Get the unique Id for this Asset.
  145. *
  146. * @return object Id
  147. *
  148. * @throws object RepositoryException An exception with one of
  149. * the following messages defined in
  150. * org.osid.repository.RepositoryException may be thrown: {@link }
  151. * org.osid.repository.RepositoryException#OPERATION_FAILED
  152. * OPERATION_FAILED}, {@link }
  153. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  154. * PERMISSION_DENIED}, {@link }
  155. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  156. * CONFIGURATION_ERROR}, {@link }
  157. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  158. * UNIMPLEMENTED}
  159. *
  160. * @access public
  161. */
  162. function getId () {
  163. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  164. }
  165.  
  166. /**
  167. * Get the AssetType of this Asset. AssetTypes are used to categorize
  168. * Assets.
  169. *
  170. * @return object Type
  171. *
  172. * @throws object RepositoryException An exception with one of
  173. * the following messages defined in
  174. * org.osid.repository.RepositoryException may be thrown: {@link }
  175. * org.osid.repository.RepositoryException#OPERATION_FAILED
  176. * OPERATION_FAILED}, {@link }
  177. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  178. * PERMISSION_DENIED}, {@link }
  179. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  180. * CONFIGURATION_ERROR}, {@link }
  181. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  182. * UNIMPLEMENTED}
  183. *
  184. * @access public
  185. */
  186. function getAssetType () {
  187. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  188. }
  189.  
  190. /**
  191. * Get the date at which this Asset is effective.
  192. *
  193. * @return int
  194. *
  195. * @throws object RepositoryException An exception with one of
  196. * the following messages defined in
  197. * org.osid.repository.RepositoryException may be thrown: {@link }
  198. * org.osid.repository.RepositoryException#OPERATION_FAILED
  199. * OPERATION_FAILED}, {@link }
  200. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  201. * PERMISSION_DENIED}, {@link }
  202. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  203. * CONFIGURATION_ERROR}, {@link }
  204. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  205. * UNIMPLEMENTED}
  206. *
  207. * @access public
  208. */
  209. function getEffectiveDate () {
  210. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  211. }
  212.  
  213. /**
  214. * Get the date at which this Asset expires.
  215. *
  216. * @return int
  217. *
  218. * @throws object RepositoryException An exception with one of
  219. * the following messages defined in
  220. * org.osid.repository.RepositoryException may be thrown: {@link }
  221. * org.osid.repository.RepositoryException#OPERATION_FAILED
  222. * OPERATION_FAILED}, {@link }
  223. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  224. * PERMISSION_DENIED}, {@link }
  225. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  226. * CONFIGURATION_ERROR}, {@link }
  227. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  228. * UNIMPLEMENTED}
  229. *
  230. * @access public
  231. */
  232. function getExpirationDate () {
  233. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  234. }
  235.  
  236. /**
  237. * Update the description for this Asset.
  238. *
  239. * @param string $description
  240. *
  241. * @throws object RepositoryException An exception with one of
  242. * the following messages defined in
  243. * org.osid.repository.RepositoryException may be thrown: {@link }
  244. * org.osid.repository.RepositoryException#OPERATION_FAILED
  245. * OPERATION_FAILED}, {@link }
  246. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  247. * PERMISSION_DENIED}, {@link }
  248. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  249. * CONFIGURATION_ERROR}, {@link }
  250. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  251. * UNIMPLEMENTED}, {@link }
  252. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  253. * NULL_ARGUMENT}
  254. *
  255. * @access public
  256. */
  257. function updateDescription ( $description ) {
  258. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  259. }
  260.  
  261. /**
  262. * Get the Id of the Repository in which this Asset resides. This is set
  263. * by the Repository's createAsset method.
  264. *
  265. * @return object Id
  266. *
  267. * @throws object RepositoryException An exception with one of
  268. * the following messages defined in
  269. * org.osid.repository.RepositoryException may be thrown: {@link }
  270. * org.osid.repository.RepositoryException#OPERATION_FAILED
  271. * OPERATION_FAILED}, {@link }
  272. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  273. * PERMISSION_DENIED}, {@link }
  274. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  275. * CONFIGURATION_ERROR}, {@link }
  276. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  277. * UNIMPLEMENTED}
  278. *
  279. * @access public
  280. */
  281. function getRepository () {
  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 an Asset's content. This method can be a convenience if one is not
  287. * interested in all the structure of the Records.
  288. *
  289. * @return object mixed (original type: java.io.Serializable)
  290. *
  291. * @throws object RepositoryException An exception with one of
  292. * the following messages defined in
  293. * org.osid.repository.RepositoryException may be thrown: {@link }
  294. * org.osid.repository.RepositoryException#OPERATION_FAILED
  295. * OPERATION_FAILED}, {@link }
  296. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  297. * PERMISSION_DENIED}, {@link }
  298. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  299. * CONFIGURATION_ERROR}, {@link }
  300. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  301. * UNIMPLEMENTED}
  302. *
  303. * @access public
  304. */
  305. function getContent () {
  306. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  307. }
  308.  
  309. /**
  310. * Update an Asset's content.
  311. *
  312. * @param object mixed $content (original type: java.io.Serializable)
  313. *
  314. * @throws object RepositoryException An exception with one of
  315. * the following messages defined in
  316. * org.osid.repository.RepositoryException may be thrown: {@link }
  317. * org.osid.repository.RepositoryException#OPERATION_FAILED
  318. * OPERATION_FAILED}, {@link }
  319. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  320. * PERMISSION_DENIED}, {@link }
  321. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  322. * CONFIGURATION_ERROR}, {@link }
  323. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  324. * UNIMPLEMENTED}, {@link }
  325. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  326. * NULL_ARGUMENT}
  327. *
  328. * @access public
  329. */
  330. function updateContent ( $content ) {
  331. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  332. }
  333.  
  334. /**
  335. * Add an Asset to this Asset.
  336. *
  337. * @param object Id $assetId
  338. *
  339. * @throws object RepositoryException An exception with one of
  340. * the following messages defined in
  341. * org.osid.repository.RepositoryException may be thrown: {@link }
  342. * org.osid.repository.RepositoryException#OPERATION_FAILED
  343. * OPERATION_FAILED}, {@link }
  344. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  345. * PERMISSION_DENIED}, {@link }
  346. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  347. * CONFIGURATION_ERROR}, {@link }
  348. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  349. * UNIMPLEMENTED}, {@link }
  350. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  351. * NULL_ARGUMENT}, {@link }
  352. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID},
  353. * {@link org.osid.repository.RepositoryException#ALREADY_ADDED}
  354. * ALREADY_ADDED}
  355. *
  356. * @access public
  357. */
  358. function addAsset ( $assetId ) {
  359. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  360. }
  361.  
  362. /**
  363. * Remove an Asset from this Asset. This method does not delete the Asset
  364. * from the Repository.
  365. *
  366. * @param object Id $assetId
  367. * @param boolean $includeChildren
  368. *
  369. * @throws object RepositoryException An exception with one of
  370. * the following messages defined in
  371. * org.osid.repository.RepositoryException may be thrown: {@link }
  372. * org.osid.repository.RepositoryException#OPERATION_FAILED
  373. * OPERATION_FAILED}, {@link }
  374. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  375. * PERMISSION_DENIED}, {@link }
  376. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  377. * CONFIGURATION_ERROR}, {@link }
  378. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  379. * UNIMPLEMENTED}, {@link }
  380. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  381. * NULL_ARGUMENT}, {@link }
  382. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  383. *
  384. * @access public
  385. */
  386. function removeAsset ( $assetId, $includeChildren ) {
  387. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  388. }
  389.  
  390. /**
  391. * Get all the Assets in this Asset. Iterators return a set, one at a
  392. * time.
  393. *
  394. * @return object AssetIterator
  395. *
  396. * @throws object RepositoryException An exception with one of
  397. * the following messages defined in
  398. * org.osid.repository.RepositoryException may be thrown: {@link }
  399. * org.osid.repository.RepositoryException#OPERATION_FAILED
  400. * OPERATION_FAILED}, {@link }
  401. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  402. * PERMISSION_DENIED}, {@link }
  403. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  404. * CONFIGURATION_ERROR}, {@link }
  405. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  406. * UNIMPLEMENTED}
  407. *
  408. * @access public
  409. */
  410. function getAssets () {
  411. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  412. }
  413.  
  414. /**
  415. * Get all the Assets of the specified AssetType in this Repository.
  416. * Iterators return a set, one at a time.
  417. *
  418. * @param object Type $assetType
  419. *
  420. * @return object AssetIterator
  421. *
  422. * @throws object RepositoryException An exception with one of
  423. * the following messages defined in
  424. * org.osid.repository.RepositoryException may be thrown: {@link }
  425. * org.osid.repository.RepositoryException#OPERATION_FAILED
  426. * OPERATION_FAILED}, {@link }
  427. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  428. * PERMISSION_DENIED}, {@link }
  429. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  430. * CONFIGURATION_ERROR}, {@link }
  431. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  432. * UNIMPLEMENTED}, {@link }
  433. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  434. * NULL_ARGUMENT}, {@link }
  435. * org.osid.repository.RepositoryException#UNKNOWN_TYPE
  436. * UNKNOWN_TYPE}
  437. *
  438. * @access public
  439. */
  440. function getAssetsByType ( $assetType ) {
  441. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  442. }
  443.  
  444. /**
  445. * Create a new Asset Record of the specified RecordStructure. The
  446. * implementation of this method sets the Id for the new object.
  447. *
  448. * @param object Id $recordStructureId
  449. *
  450. * @return object Record
  451. *
  452. * @throws object RepositoryException An exception with one of
  453. * the following messages defined in
  454. * org.osid.repository.RepositoryException may be thrown: {@link }
  455. * org.osid.repository.RepositoryException#OPERATION_FAILED
  456. * OPERATION_FAILED}, {@link }
  457. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  458. * PERMISSION_DENIED}, {@link }
  459. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  460. * CONFIGURATION_ERROR}, {@link }
  461. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  462. * UNIMPLEMENTED}, {@link }
  463. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  464. * NULL_ARGUMENT}, {@link }
  465. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  466. *
  467. * @access public
  468. */
  469. function createRecord ( $recordStructureId ) {
  470. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  471. }
  472.  
  473. /**
  474. * Add the specified RecordStructure and all the related Records from the
  475. * specified asset. The current and future content of the specified
  476. * Record is synchronized automatically.
  477. *
  478. * @param object Id $assetId
  479. * @param object Id $recordStructureId
  480. *
  481. * @throws object RepositoryException An exception with one of
  482. * the following messages defined in
  483. * org.osid.repository.RepositoryException may be thrown: {@link }
  484. * org.osid.repository.RepositoryException#OPERATION_FAILED
  485. * OPERATION_FAILED}, {@link }
  486. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  487. * PERMISSION_DENIED}, {@link }
  488. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  489. * CONFIGURATION_ERROR}, {@link }
  490. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  491. * UNIMPLEMENTED}, {@link }
  492. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  493. * NULL_ARGUMENT}, {@link }
  494. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID},
  495. * {@link }
  496. * org.osid.repository.RepositoryException#ALREADY_INHERITING_STRUCTURE
  497. * ALREADY_INHERITING_STRUCTURE}
  498. *
  499. * @access public
  500. */
  501. function inheritRecordStructure ( $assetId, $recordStructureId ) {
  502. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  503. }
  504.  
  505. /**
  506. * Add the specified RecordStructure and all the related Records from the
  507. * specified asset.
  508. *
  509. * @param object Id $assetId
  510. * @param object Id $recordStructureId
  511. *
  512. * @throws object RepositoryException An exception with one of
  513. * the following messages defined in
  514. * org.osid.repository.RepositoryException may be thrown: {@link }
  515. * org.osid.repository.RepositoryException#OPERATION_FAILED
  516. * OPERATION_FAILED}, {@link }
  517. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  518. * PERMISSION_DENIED}, {@link }
  519. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  520. * CONFIGURATION_ERROR}, {@link }
  521. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  522. * UNIMPLEMENTED}, {@link }
  523. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  524. * NULL_ARGUMENT}, {@link }
  525. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID},
  526. * {@link }
  527. * org.osid.repository.RepositoryException#CANNOT_COPY_OR_INHERIT_SELF
  528. * CANNOT_COPY_OR_INHERIT_SELF}
  529. *
  530. * @access public
  531. */
  532. function copyRecordStructure ( $assetId, $recordStructureId ) {
  533. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  534. }
  535.  
  536. /**
  537. * Delete a Record. If the specified Record has content that is inherited
  538. * by other Records, those other Records will not be deleted, but they
  539. * will no longer have a source from which to inherit value changes.
  540. *
  541. * @param object Id $recordId
  542. *
  543. * @throws object RepositoryException An exception with one of
  544. * the following messages defined in
  545. * org.osid.repository.RepositoryException may be thrown: {@link }
  546. * org.osid.repository.RepositoryException#OPERATION_FAILED
  547. * OPERATION_FAILED}, {@link }
  548. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  549. * PERMISSION_DENIED}, {@link }
  550. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  551. * CONFIGURATION_ERROR}, {@link }
  552. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  553. * UNIMPLEMENTED}, {@link }
  554. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  555. * NULL_ARGUMENT}, {@link }
  556. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  557. *
  558. * @access public
  559. */
  560. function deleteRecord ( $recordId ) {
  561. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  562. }
  563.  
  564. /**
  565. * Get all the Records for this Asset. Iterators return a set, one at a
  566. * time.
  567. *
  568. * @return object RecordIterator
  569. *
  570. * @throws object RepositoryException An exception with one of
  571. * the following messages defined in
  572. * org.osid.repository.RepositoryException may be thrown: {@link }
  573. * org.osid.repository.RepositoryException#OPERATION_FAILED
  574. * OPERATION_FAILED}, {@link }
  575. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  576. * PERMISSION_DENIED}, {@link }
  577. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  578. * CONFIGURATION_ERROR}, {@link }
  579. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  580. * UNIMPLEMENTED}
  581. *
  582. * @access public
  583. */
  584. function getRecords () {
  585. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  586. }
  587.  
  588. /**
  589. * Get all the Records of the specified RecordStructure for this Asset.
  590. * Iterators return a set, one at a time.
  591. *
  592. * @param object Id $recordStructureId
  593. *
  594. * @return object RecordIterator
  595. *
  596. * @throws object RepositoryException An exception with one of
  597. * the following messages defined in
  598. * org.osid.repository.RepositoryException may be thrown: {@link }
  599. * org.osid.repository.RepositoryException#OPERATION_FAILED
  600. * OPERATION_FAILED}, {@link }
  601. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  602. * PERMISSION_DENIED}, {@link }
  603. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  604. * CONFIGURATION_ERROR}, {@link }
  605. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  606. * UNIMPLEMENTED}, {@link }
  607. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  608. * NULL_ARGUMENT}, {@link }
  609. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  610. *
  611. * @access public
  612. */
  613. function getRecordsByRecordStructure ( $recordStructureId ) {
  614. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  615. }
  616.  
  617. /**
  618. * Get all the Records of the specified RecordStructureType for this Asset.
  619. * Iterators return a set, one at a time.
  620. *
  621. * @param object Type $recordStructureType
  622. *
  623. * @return object RecordIterator
  624. *
  625. * @throws object RepositoryException An exception with one of
  626. * the following messages defined in
  627. * org.osid.repository.RepositoryException may be thrown: {@link }
  628. * org.osid.repository.RepositoryException#OPERATION_FAILED
  629. * OPERATION_FAILED}, {@link }
  630. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  631. * PERMISSION_DENIED}, {@link }
  632. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  633. * CONFIGURATION_ERROR}, {@link }
  634. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  635. * UNIMPLEMENTED}, {@link }
  636. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  637. * NULL_ARGUMENT}, {@link }
  638. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  639. *
  640. * @access public
  641. */
  642. function getRecordsByRecordStructureType ( $recordStructureType ) {
  643. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  644. }
  645.  
  646. /**
  647. * Get all the RecordStructures for this Asset. RecordStructures are used
  648. * to categorize information about Assets. Iterators return a set, one at
  649. * a time.
  650. *
  651. * @return object RecordStructureIterator
  652. *
  653. * @throws object RepositoryException An exception with one of
  654. * the following messages defined in
  655. * org.osid.repository.RepositoryException may be thrown: {@link }
  656. * org.osid.repository.RepositoryException#OPERATION_FAILED
  657. * OPERATION_FAILED}, {@link }
  658. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  659. * PERMISSION_DENIED}, {@link }
  660. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  661. * CONFIGURATION_ERROR}, {@link }
  662. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  663. * UNIMPLEMENTED}
  664. *
  665. * @access public
  666. */
  667. function getRecordStructures () {
  668. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  669. }
  670.  
  671. /**
  672. * Get the RecordStructure associated with this Asset's content.
  673. *
  674. * @return object RecordStructure
  675. *
  676. * @throws object RepositoryException An exception with one of
  677. * the following messages defined in
  678. * org.osid.repository.RepositoryException may be thrown: {@link }
  679. * org.osid.repository.RepositoryException#OPERATION_FAILED
  680. * OPERATION_FAILED}, {@link }
  681. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  682. * PERMISSION_DENIED}, {@link }
  683. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  684. * CONFIGURATION_ERROR}, {@link }
  685. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  686. * UNIMPLEMENTED}
  687. *
  688. * @access public
  689. */
  690. function getContentRecordStructure () {
  691. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  692. }
  693.  
  694. /**
  695. * Get the Record for this Asset that matches this Record's unique Id.
  696. *
  697. * @param object Id $recordId
  698. *
  699. * @return object Record
  700. *
  701. * @throws object RepositoryException An exception with one of
  702. * the following messages defined in
  703. * org.osid.repository.RepositoryException may be thrown: {@link }
  704. * org.osid.repository.RepositoryException#OPERATION_FAILED
  705. * OPERATION_FAILED}, {@link }
  706. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  707. * PERMISSION_DENIED}, {@link }
  708. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  709. * CONFIGURATION_ERROR}, {@link }
  710. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  711. * UNIMPLEMENTED}, {@link }
  712. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  713. * NULL_ARGUMENT}, {@link }
  714. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  715. *
  716. * @access public
  717. */
  718. function getRecord ( $recordId ) {
  719. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  720. }
  721.  
  722. /**
  723. * Get the Part for a Record for this Asset that matches this Part's unique
  724. * Id.
  725. *
  726. * @param object Id $partId
  727. *
  728. * @return object Part
  729. *
  730. * @throws object RepositoryException An exception with one of
  731. * the following messages defined in
  732. * org.osid.repository.RepositoryException may be thrown: {@link }
  733. * org.osid.repository.RepositoryException#OPERATION_FAILED
  734. * OPERATION_FAILED}, {@link }
  735. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  736. * PERMISSION_DENIED}, {@link }
  737. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  738. * CONFIGURATION_ERROR}, {@link }
  739. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  740. * UNIMPLEMENTED}, {@link }
  741. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  742. * NULL_ARGUMENT}, {@link }
  743. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  744. *
  745. * @access public
  746. */
  747. function getPart ( $partId ) {
  748. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  749. }
  750.  
  751. /**
  752. * Get the Value of the Part of the Record for this Asset that matches this
  753. * Part's unique Id.
  754. *
  755. * @param object Id $partId
  756. *
  757. * @return object mixed (original type: java.io.Serializable)
  758. *
  759. * @throws object RepositoryException An exception with one of
  760. * the following messages defined in
  761. * org.osid.repository.RepositoryException may be thrown: {@link }
  762. * org.osid.repository.RepositoryException#OPERATION_FAILED
  763. * OPERATION_FAILED}, {@link }
  764. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  765. * PERMISSION_DENIED}, {@link }
  766. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  767. * CONFIGURATION_ERROR}, {@link }
  768. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  769. * UNIMPLEMENTED}, {@link }
  770. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  771. * NULL_ARGUMENT}, {@link }
  772. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  773. *
  774. * @access public
  775. */
  776. function getPartValue ( $partId ) {
  777. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  778. }
  779.  
  780. /**
  781. * Get the Parts of the Records for this Asset that are based on this
  782. * RecordStructure PartStructure's unique Id.
  783. *
  784. * @param object Id $partStructureId
  785. *
  786. * @return object PartIterator
  787. *
  788. * @throws object RepositoryException An exception with one of
  789. * the following messages defined in
  790. * org.osid.repository.RepositoryException may be thrown: {@link }
  791. * org.osid.repository.RepositoryException#OPERATION_FAILED
  792. * OPERATION_FAILED}, {@link }
  793. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  794. * PERMISSION_DENIED}, {@link }
  795. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  796. * CONFIGURATION_ERROR}, {@link }
  797. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  798. * UNIMPLEMENTED}, {@link }
  799. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  800. * NULL_ARGUMENT}, {@link }
  801. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  802. *
  803. * @access public
  804. */
  805. function getPartsByPartStructure ( $partStructureId ) {
  806. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  807. }
  808.  
  809. /**
  810. * Get the Values of the Parts of the Records for this Asset that are based
  811. * on this RecordStructure PartStructure's unique Id.
  812. *
  813. * @param object Id $partStructureId
  814. *
  815. * @return object ObjectIterator
  816. *
  817. * @throws object RepositoryException An exception with one of
  818. * the following messages defined in
  819. * org.osid.repository.RepositoryException may be thrown: {@link }
  820. * org.osid.repository.RepositoryException#OPERATION_FAILED
  821. * OPERATION_FAILED}, {@link }
  822. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  823. * PERMISSION_DENIED}, {@link }
  824. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  825. * CONFIGURATION_ERROR}, {@link }
  826. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  827. * UNIMPLEMENTED}, {@link }
  828. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  829. * NULL_ARGUMENT}, {@link }
  830. * org.osid.repository.RepositoryException#UNKNOWN_ID UNKNOWN_ID}
  831. *
  832. * @access public
  833. */
  834. function getPartValuesByPartStructure ( $partStructureId ) {
  835. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  836. }
  837. }
  838.  
  839. ?>

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