Source for file PartStructure.php

Documentation is available at PartStructure.php

  1. <?php
  2. /**
  3. * Each Asset has one of the AssetType supported by the Repository. There are
  4. * also zero or more RecordStructures required by the Repository for each
  5. * AssetType. RecordStructures provide structural information. The values for
  6. * a given Asset's RecordStructure are stored in a Record. RecordStructures
  7. * can contain sub-elements which are referred to as PartStructures. The
  8. * structure defined in the RecordStructure and its PartStructures is used in
  9. * for any Records for the Asset. Records have Parts which parallel
  10. * PartStructures.
  11. *
  12. * <p>
  13. * OSID Version: 2.0
  14. * </p>
  15. *
  16. * <p>
  17. * Licensed under the {@link org.osid.SidImplementationLicenseMIT MIT}
  18. * O.K.I&#46; OSID Definition License}.
  19. * </p>
  20. *
  21. * @package org.osid.repository
  22. */
  23. class PartStructure
  24. {
  25. /**
  26. * Update the display name for this PartStructure.
  27. *
  28. * @param string $displayName
  29. *
  30. * @throws object RepositoryException An exception with one of
  31. * the following messages defined in
  32. * org.osid.repository.RepositoryException may be thrown: {@link }
  33. * org.osid.repository.RepositoryException#OPERATION_FAILED
  34. * OPERATION_FAILED}, {@link }
  35. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  36. * PERMISSION_DENIED}, {@link }
  37. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  38. * CONFIGURATION_ERROR}, {@link }
  39. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  40. * UNIMPLEMENTED}, {@link }
  41. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  42. * NULL_ARGUMENT}
  43. *
  44. * @access public
  45. */
  46. function updateDisplayName ( $displayName ) {
  47. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  48. }
  49.  
  50. /**
  51. * Get the display name for this PartStructure.
  52. *
  53. * @return string
  54. *
  55. * @throws object RepositoryException An exception with one of
  56. * the following messages defined in
  57. * org.osid.repository.RepositoryException may be thrown: {@link }
  58. * org.osid.repository.RepositoryException#OPERATION_FAILED
  59. * OPERATION_FAILED}, {@link }
  60. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  61. * PERMISSION_DENIED}, {@link }
  62. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  63. * CONFIGURATION_ERROR}, {@link }
  64. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  65. * UNIMPLEMENTED}
  66. *
  67. * @access public
  68. */
  69. function getDisplayName () {
  70. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  71. }
  72.  
  73. /**
  74. * Get the description for this PartStructure.
  75. *
  76. * @return string
  77. *
  78. * @throws object RepositoryException An exception with one of
  79. * the following messages defined in
  80. * org.osid.repository.RepositoryException may be thrown: {@link }
  81. * org.osid.repository.RepositoryException#OPERATION_FAILED
  82. * OPERATION_FAILED}, {@link }
  83. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  84. * PERMISSION_DENIED}, {@link }
  85. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  86. * CONFIGURATION_ERROR}, {@link }
  87. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  88. * UNIMPLEMENTED}
  89. *
  90. * @access public
  91. */
  92. function getDescription () {
  93. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  94. }
  95.  
  96. /**
  97. * Get the unique Id for this PartStructure.
  98. *
  99. * @return object Id
  100. *
  101. * @throws object RepositoryException An exception with one of
  102. * the following messages defined in
  103. * org.osid.repository.RepositoryException may be thrown: {@link }
  104. * org.osid.repository.RepositoryException#OPERATION_FAILED
  105. * OPERATION_FAILED}, {@link }
  106. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  107. * PERMISSION_DENIED}, {@link }
  108. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  109. * CONFIGURATION_ERROR}, {@link }
  110. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  111. * UNIMPLEMENTED}
  112. *
  113. * @access public
  114. */
  115. function getId () {
  116. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  117. }
  118.  
  119. /**
  120. * Get the Type for this PartStructure.
  121. *
  122. * @return object Type
  123. *
  124. * @throws object RepositoryException An exception with one of
  125. * the following messages defined in
  126. * org.osid.repository.RepositoryException may be thrown: {@link }
  127. * org.osid.repository.RepositoryException#OPERATION_FAILED
  128. * OPERATION_FAILED}, {@link }
  129. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  130. * PERMISSION_DENIED}, {@link }
  131. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  132. * CONFIGURATION_ERROR}, {@link }
  133. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  134. * UNIMPLEMENTED}
  135. *
  136. * @access public
  137. */
  138. function getType () {
  139. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  140. }
  141.  
  142. /**
  143. * Return true if this PartStructure is automatically populated by the
  144. * Repository; false otherwise. Examples of the kind of PartStructures
  145. * that might be populated are a time-stamp or the Agent setting the data.
  146. *
  147. * @return boolean
  148. *
  149. * @throws object RepositoryException An exception with one of
  150. * the following messages defined in
  151. * org.osid.repository.RepositoryException may be thrown: {@link }
  152. * org.osid.repository.RepositoryException#OPERATION_FAILED
  153. * OPERATION_FAILED}, {@link }
  154. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  155. * PERMISSION_DENIED}, {@link }
  156. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  157. * CONFIGURATION_ERROR}, {@link }
  158. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  159. * UNIMPLEMENTED}
  160. *
  161. * @access public
  162. */
  163. function isPopulatedByRepository () {
  164. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  165. }
  166.  
  167. /**
  168. * Return true if this PartStructure is mandatory; false otherwise.
  169. *
  170. * @return boolean
  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 isMandatory () {
  187. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  188. }
  189.  
  190. /**
  191. * Return true if this PartStructure is repeatable; false otherwise. This
  192. * is determined by the implementation.
  193. *
  194. * @return boolean
  195. *
  196. * @throws object RepositoryException An exception with one of
  197. * the following messages defined in
  198. * org.osid.repository.RepositoryException may be thrown: {@link }
  199. * org.osid.repository.RepositoryException#OPERATION_FAILED
  200. * OPERATION_FAILED}, {@link }
  201. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  202. * PERMISSION_DENIED}, {@link }
  203. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  204. * CONFIGURATION_ERROR}, {@link }
  205. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  206. * UNIMPLEMENTED}
  207. *
  208. * @access public
  209. */
  210. function isRepeatable () {
  211. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  212. }
  213.  
  214. /**
  215. * Get the RecordStructure associated with this PartStructure.
  216. *
  217. * @return object RecordStructure
  218. *
  219. * @throws object RepositoryException An exception with one of
  220. * the following messages defined in
  221. * org.osid.repository.RepositoryException may be thrown: {@link }
  222. * org.osid.repository.RepositoryException#OPERATION_FAILED
  223. * OPERATION_FAILED}, {@link }
  224. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  225. * PERMISSION_DENIED}, {@link }
  226. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  227. * CONFIGURATION_ERROR}, {@link }
  228. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  229. * UNIMPLEMENTED}
  230. *
  231. * @access public
  232. */
  233. function getRecordStructure () {
  234. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  235. }
  236.  
  237. /**
  238. * Get all the PartStructures in the PartStructure. Iterators return a
  239. * set, one at a time.
  240. *
  241. * @return object PartStructureIterator
  242. *
  243. * @throws object RepositoryException An exception with one of
  244. * the following messages defined in
  245. * org.osid.repository.RepositoryException may be thrown: {@link }
  246. * org.osid.repository.RepositoryException#OPERATION_FAILED
  247. * OPERATION_FAILED}, {@link }
  248. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  249. * PERMISSION_DENIED}, {@link }
  250. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  251. * CONFIGURATION_ERROR}, {@link }
  252. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  253. * UNIMPLEMENTED}
  254. *
  255. * @access public
  256. */
  257. function getPartStructures () {
  258. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  259. }
  260.  
  261. /**
  262. * Validate a Part against its PartStructure. Return true if valid; false
  263. * otherwise. The status of the Asset holding this Record is not changed
  264. * through this method. The implementation may throw an Exception for any
  265. * validation failures and use the Exception's message to identify
  266. * specific causes.
  267. *
  268. * @param object Part $part
  269. *
  270. * @return boolean
  271. *
  272. * @throws object RepositoryException An exception with one of
  273. * the following messages defined in
  274. * org.osid.repository.RepositoryException may be thrown: {@link }
  275. * org.osid.repository.RepositoryException#OPERATION_FAILED
  276. * OPERATION_FAILED}, {@link }
  277. * org.osid.repository.RepositoryException#PERMISSION_DENIED
  278. * PERMISSION_DENIED}, {@link }
  279. * org.osid.repository.RepositoryException#CONFIGURATION_ERROR
  280. * CONFIGURATION_ERROR}, {@link }
  281. * org.osid.repository.RepositoryException#UNIMPLEMENTED
  282. * UNIMPLEMENTED}, {@link }
  283. * org.osid.repository.RepositoryException#NULL_ARGUMENT
  284. * NULL_ARGUMENT}
  285. *
  286. * @access public
  287. */
  288. function validatePart ( $part ) {
  289. die ("Method <b>".__FUNCTION__."()</b> declared in interface<b> ".__CLASS__."</b> has not been overloaded in a child class.");
  290. }
  291. }
  292.  
  293. ?>

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