taskjuggler 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. data/Rakefile +1 -0
  2. data/benchmarks/depends.tjp +2 -1
  3. data/benchmarks/htmltaskreport.tjp +2 -1
  4. data/doc/classes/AppConfig.html +124 -120
  5. data/doc/classes/Arguments.html +10 -6
  6. data/doc/classes/Object.html +229 -0
  7. data/doc/classes/String.html +35 -31
  8. data/doc/classes/TaskJuggler/Account.html +18 -18
  9. data/doc/classes/TaskJuggler/AccountAttribute.html +261 -0
  10. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  11. data/doc/classes/TaskJuggler/Allocation.html +34 -30
  12. data/doc/classes/TaskJuggler/AllocationAttribute.html +70 -70
  13. data/doc/classes/TaskJuggler/AttributeBase.html +131 -147
  14. data/doc/classes/TaskJuggler/AttributeDefinition.html +38 -21
  15. data/doc/classes/TaskJuggler/BatchProcessor.html +313 -0
  16. data/doc/classes/TaskJuggler/Booking.html +22 -18
  17. data/doc/classes/TaskJuggler/BookingListAttribute.html +42 -42
  18. data/doc/classes/TaskJuggler/BooleanAttribute.html +40 -40
  19. data/doc/classes/TaskJuggler/CSVFile.html +28 -24
  20. data/doc/classes/TaskJuggler/Charge.html +22 -18
  21. data/doc/classes/TaskJuggler/ChargeListAttribute.html +30 -30
  22. data/doc/classes/TaskJuggler/ChargeSet.html +41 -37
  23. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +46 -46
  24. data/doc/classes/TaskJuggler/ColumnListAttribute.html +231 -0
  25. data/doc/classes/TaskJuggler/ColumnTable.html +23 -21
  26. data/doc/classes/TaskJuggler/DateAttribute.html +20 -20
  27. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +162 -0
  28. data/doc/classes/TaskJuggler/DependencyListAttribute.html +46 -46
  29. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  30. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  31. data/doc/classes/TaskJuggler/FlagListAttribute.html +42 -42
  32. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  33. data/doc/classes/TaskJuggler/FormatListAttribute.html +197 -0
  34. data/doc/classes/TaskJuggler/GanttChart.html +236 -207
  35. data/doc/classes/TaskJuggler/GanttContainer.html +46 -42
  36. data/doc/classes/TaskJuggler/GanttHeader.html +16 -12
  37. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +16 -12
  38. data/doc/classes/TaskJuggler/GanttLine.html +28 -24
  39. data/doc/classes/TaskJuggler/GanttLoadStack.html +22 -18
  40. data/doc/classes/TaskJuggler/GanttMilestone.html +46 -42
  41. data/doc/classes/TaskJuggler/GanttRouter.html +104 -98
  42. data/doc/classes/TaskJuggler/GanttTaskBar.html +46 -42
  43. data/doc/classes/TaskJuggler/HTMLDocument.html +12 -12
  44. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  45. data/doc/classes/TaskJuggler/Interval.html +126 -120
  46. data/doc/classes/TaskJuggler/IntervalListAttribute.html +46 -46
  47. data/doc/classes/TaskJuggler/JobInfo.html +284 -0
  48. data/doc/classes/TaskJuggler/Journal.html +197 -0
  49. data/doc/classes/TaskJuggler/JournalEntry.html +218 -0
  50. data/doc/classes/TaskJuggler/KeywordArray.html +179 -0
  51. data/doc/classes/TaskJuggler/KeywordDocumentation.html +445 -396
  52. data/doc/classes/TaskJuggler/Limits/Limit.html +34 -30
  53. data/doc/classes/TaskJuggler/Limits.html +68 -62
  54. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  55. data/doc/classes/TaskJuggler/ListAttributeBase.html +207 -0
  56. data/doc/classes/TaskJuggler/Log.html +72 -68
  57. data/doc/classes/TaskJuggler/LogicalAttribute.html +38 -34
  58. data/doc/classes/TaskJuggler/LogicalExpression.html +16 -12
  59. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +194 -0
  60. data/doc/classes/TaskJuggler/LogicalFlag.html +32 -32
  61. data/doc/classes/TaskJuggler/LogicalFunction.html +28 -24
  62. data/doc/classes/TaskJuggler/LogicalOperation.html +17 -13
  63. data/doc/classes/TaskJuggler/Macro.html +10 -6
  64. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  65. data/doc/classes/TaskJuggler/MacroTable.html +40 -36
  66. data/doc/classes/TaskJuggler/Message.html +16 -12
  67. data/doc/classes/TaskJuggler/MessageHandler.html +16 -12
  68. data/doc/classes/TaskJuggler/Navigator.html +249 -0
  69. data/doc/classes/TaskJuggler/OnShiftCache.html +316 -0
  70. data/doc/classes/TaskJuggler/Project.html +1064 -678
  71. data/doc/classes/TaskJuggler/ProjectFileParser.html +90 -85
  72. data/doc/classes/TaskJuggler/PropertyAttribute.html +194 -0
  73. data/doc/classes/TaskJuggler/PropertyList.html +114 -113
  74. data/doc/classes/TaskJuggler/PropertySet.html +355 -312
  75. data/doc/classes/TaskJuggler/PropertyTreeNode.html +527 -474
  76. data/doc/classes/TaskJuggler/Query.html +90 -85
  77. data/doc/classes/TaskJuggler/RTPNavigator.html +292 -0
  78. data/doc/classes/TaskJuggler/RTPReport.html +301 -0
  79. data/doc/classes/TaskJuggler/RealFormat.html +114 -57
  80. data/doc/classes/TaskJuggler/RealFormatAttribute.html +162 -0
  81. data/doc/classes/TaskJuggler/ReferenceAttribute.html +87 -20
  82. data/doc/classes/TaskJuggler/Report.html +82 -291
  83. data/doc/classes/TaskJuggler/ReportBase.html +448 -0
  84. data/doc/classes/TaskJuggler/ReportContext.html +243 -0
  85. data/doc/classes/TaskJuggler/ReportTable.html +158 -129
  86. data/doc/classes/TaskJuggler/ReportTableCell.html +30 -26
  87. data/doc/classes/TaskJuggler/ReportTableColumn.html +29 -25
  88. data/doc/classes/TaskJuggler/ReportTableLegend.html +28 -24
  89. data/doc/classes/TaskJuggler/ReportTableLine.html +34 -30
  90. data/doc/classes/TaskJuggler/Resource.html +12 -12
  91. data/doc/classes/TaskJuggler/ResourceListAttribute.html +46 -46
  92. data/doc/classes/TaskJuggler/ResourceListRE.html +49 -57
  93. data/doc/classes/TaskJuggler/ResourceScenario.html +126 -126
  94. data/doc/classes/TaskJuggler/RichText.html +52 -48
  95. data/doc/classes/TaskJuggler/RichTextAttribute.html +30 -30
  96. data/doc/classes/TaskJuggler/RichTextDocument.html +41 -37
  97. data/doc/classes/TaskJuggler/RichTextElement.html +274 -264
  98. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  99. data/doc/classes/TaskJuggler/RichTextParser.html +48 -47
  100. data/doc/classes/TaskJuggler/RichTextProtocolExample.html +52 -55
  101. data/doc/classes/TaskJuggler/RichTextProtocolHandler.html +55 -10
  102. data/doc/classes/TaskJuggler/RichTextScanner.html +106 -245
  103. data/doc/classes/TaskJuggler/RichTextSnip.html +28 -24
  104. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +381 -301
  105. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  106. data/doc/classes/TaskJuggler/ScenarioData.html +40 -36
  107. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +229 -0
  108. data/doc/classes/TaskJuggler/Scoreboard.html +70 -66
  109. data/doc/classes/TaskJuggler/Shift.html +18 -18
  110. data/doc/classes/TaskJuggler/ShiftAssignment.html +58 -54
  111. data/doc/classes/TaskJuggler/ShiftAssignments.html +82 -78
  112. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  113. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  114. data/doc/classes/TaskJuggler/SortListAttribute.html +196 -0
  115. data/doc/classes/TaskJuggler/SourceFileInfo.html +16 -12
  116. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  117. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  118. data/doc/classes/TaskJuggler/SyntaxReference.html +46 -42
  119. data/doc/classes/TaskJuggler/TOCEntry.html +16 -12
  120. data/doc/classes/TaskJuggler/TableColumnDefinition.html +48 -33
  121. data/doc/classes/TaskJuggler/TableOfContents.html +22 -18
  122. data/doc/classes/TaskJuggler/TableReport.html +1036 -0
  123. data/doc/classes/TaskJuggler/Task.html +12 -12
  124. data/doc/classes/TaskJuggler/TaskDependency.html +16 -12
  125. data/doc/classes/TaskJuggler/TaskListAttribute.html +46 -46
  126. data/doc/classes/TaskJuggler/TaskListRE.html +49 -58
  127. data/doc/classes/TaskJuggler/TaskScenario.html +1270 -1180
  128. data/doc/classes/TaskJuggler/TextParser/Pattern.html +100 -96
  129. data/doc/classes/TaskJuggler/TextParser/Rule.html +88 -84
  130. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -12
  131. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  132. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +10 -6
  133. data/doc/classes/TaskJuggler/TextParser.html +203 -140
  134. data/doc/classes/TaskJuggler/TextReport.html +364 -0
  135. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  136. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +50 -42
  137. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +16 -12
  138. data/doc/classes/TaskJuggler/TextScanner.html +334 -240
  139. data/doc/classes/TaskJuggler/TjException.html +6 -6
  140. data/doc/classes/TaskJuggler/TjTime.html +547 -497
  141. data/doc/classes/TaskJuggler/TjpExample.html +29 -25
  142. data/doc/classes/TaskJuggler/TjpExportRE.html +77 -97
  143. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +3911 -3886
  144. data/doc/classes/TaskJuggler/UserManual.html +54 -54
  145. data/doc/classes/TaskJuggler/WorkingHours.html +53 -49
  146. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -85
  147. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  148. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  149. data/doc/classes/TaskJuggler/XMLDocument.html +28 -24
  150. data/doc/classes/TaskJuggler/XMLElement.html +70 -58
  151. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  152. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  153. data/doc/classes/TaskJuggler.html +266 -183
  154. data/doc/files/COPYING.html +1 -1
  155. data/doc/files/README.html +1 -1
  156. data/doc/files/lib/AccountScenario_rb.html +1 -1
  157. data/doc/files/lib/Account_rb.html +1 -1
  158. data/doc/files/lib/Allocation_rb.html +1 -1
  159. data/doc/files/lib/AppConfig_rb.html +1 -1
  160. data/doc/files/lib/AttributeBase_rb.html +11 -1
  161. data/doc/files/lib/AttributeDefinition_rb.html +1 -1
  162. data/doc/files/lib/Attributes_rb.html +1 -1
  163. data/doc/files/lib/{LogicalFlag_rb.html → BatchProcessor_rb.html} +8 -6
  164. data/doc/files/lib/Booking_rb.html +1 -1
  165. data/doc/files/lib/ChargeSet_rb.html +1 -1
  166. data/doc/files/lib/Charge_rb.html +1 -1
  167. data/doc/files/lib/HTMLDocument_rb.html +1 -1
  168. data/doc/files/lib/Interval_rb.html +1 -1
  169. data/doc/files/lib/Journal_rb.html +106 -0
  170. data/doc/files/lib/KeywordArray_rb.html +106 -0
  171. data/doc/files/lib/KeywordDocumentation_rb.html +1 -1
  172. data/doc/files/lib/Limits_rb.html +1 -1
  173. data/doc/files/lib/Log_rb.html +1 -1
  174. data/doc/files/lib/LogicalExpression_rb.html +1 -3
  175. data/doc/files/lib/LogicalFunction_rb.html +1 -1
  176. data/doc/files/lib/LogicalOperation_rb.html +1 -1
  177. data/doc/files/lib/MacroParser_rb.html +1 -1
  178. data/doc/files/lib/MacroTable_rb.html +1 -1
  179. data/doc/files/lib/MessageHandler_rb.html +1 -1
  180. data/doc/files/lib/Message_rb.html +1 -1
  181. data/doc/files/lib/ProjectFileParser_rb.html +5 -1
  182. data/doc/files/lib/Project_rb.html +5 -1
  183. data/doc/files/lib/PropertyList_rb.html +1 -1
  184. data/doc/files/lib/PropertySet_rb.html +1 -1
  185. data/doc/files/lib/PropertyTreeNode_rb.html +1 -1
  186. data/doc/files/lib/Query_rb.html +1 -1
  187. data/doc/files/lib/RTPNavigator_rb.html +120 -0
  188. data/doc/files/lib/RTPReport_rb.html +118 -0
  189. data/doc/files/lib/RealFormat_rb.html +1 -1
  190. data/doc/files/lib/ResourceScenario_rb.html +1 -1
  191. data/doc/files/lib/Resource_rb.html +1 -1
  192. data/doc/files/lib/RichTextDocument_rb.html +1 -1
  193. data/doc/files/lib/RichTextElement_rb.html +1 -1
  194. data/doc/files/lib/RichTextParser_rb.html +1 -1
  195. data/doc/files/lib/RichTextProtocolExample_rb.html +1 -1
  196. data/doc/files/lib/RichTextProtocolHandler_rb.html +1 -1
  197. data/doc/files/lib/RichTextScanner_rb.html +1 -1
  198. data/doc/files/lib/RichTextSnip_rb.html +1 -1
  199. data/doc/files/lib/RichTextSyntaxRules_rb.html +1 -1
  200. data/doc/files/lib/RichText_rb.html +1 -1
  201. data/doc/files/lib/ScenarioData_rb.html +1 -1
  202. data/doc/files/lib/Scenario_rb.html +1 -1
  203. data/doc/files/lib/Scoreboard_rb.html +1 -1
  204. data/doc/files/lib/ShiftAssignments_rb.html +1 -1
  205. data/doc/files/lib/ShiftScenario_rb.html +1 -1
  206. data/doc/files/lib/Shift_rb.html +1 -1
  207. data/doc/files/lib/SourceFileInfo_rb.html +1 -1
  208. data/doc/files/lib/SyntaxReference_rb.html +1 -1
  209. data/doc/files/lib/TOCEntry_rb.html +1 -1
  210. data/doc/files/lib/TableColumnDefinition_rb.html +1 -1
  211. data/doc/files/lib/TableOfContents_rb.html +1 -1
  212. data/doc/files/lib/TaskDependency_rb.html +1 -1
  213. data/doc/files/lib/TaskJuggler_rb.html +1 -1
  214. data/doc/files/lib/TaskScenario_rb.html +1 -1
  215. data/doc/files/lib/Task_rb.html +1 -1
  216. data/doc/files/lib/TextParser/Pattern_rb.html +1 -1
  217. data/doc/files/lib/TextParser/Rule_rb.html +1 -1
  218. data/doc/files/lib/TextParser/StackElement_rb.html +1 -1
  219. data/doc/files/lib/TextParser/TokenDoc_rb.html +1 -1
  220. data/doc/files/lib/TextParser_rb.html +1 -1
  221. data/doc/files/lib/TextScanner_rb.html +1 -1
  222. data/doc/files/lib/Tj3Config_rb.html +1 -1
  223. data/doc/files/lib/TjException_rb.html +1 -1
  224. data/doc/files/lib/TjTime_rb.html +1 -1
  225. data/doc/files/lib/TjpExample_rb.html +1 -1
  226. data/doc/files/lib/TjpSyntaxRules_rb.html +1 -1
  227. data/doc/files/lib/UTF8String_rb.html +1 -1
  228. data/doc/files/lib/UserManual_rb.html +1 -1
  229. data/doc/files/lib/WorkingHours_rb.html +1 -1
  230. data/doc/files/lib/XMLDocument_rb.html +1 -1
  231. data/doc/files/lib/XMLElement_rb.html +1 -1
  232. data/doc/files/lib/deep_copy_rb.html +106 -0
  233. data/doc/files/lib/ms_test_rb.html +90 -0
  234. data/doc/files/lib/reports/CSVFile_rb.html +1 -1
  235. data/doc/files/lib/reports/ColumnTable_rb.html +1 -1
  236. data/doc/files/lib/reports/GanttChart_rb.html +1 -1
  237. data/doc/files/lib/reports/GanttContainer_rb.html +1 -1
  238. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
  239. data/doc/files/lib/reports/GanttHeader_rb.html +1 -1
  240. data/doc/files/lib/reports/GanttLine_rb.html +1 -1
  241. data/doc/files/lib/reports/GanttLoadStack_rb.html +1 -1
  242. data/doc/files/lib/reports/GanttMilestone_rb.html +1 -1
  243. data/doc/files/lib/reports/GanttRouter_rb.html +1 -1
  244. data/doc/files/lib/reports/GanttTaskBar_rb.html +1 -1
  245. data/doc/files/lib/reports/HTMLGraphics_rb.html +1 -1
  246. data/doc/files/lib/reports/{ReportElement_rb.html → Navigator_rb.html} +6 -8
  247. data/doc/files/lib/reports/ReportBase_rb.html +106 -0
  248. data/doc/files/lib/reports/ReportContext_rb.html +106 -0
  249. data/doc/files/lib/reports/ReportTableCell_rb.html +1 -1
  250. data/doc/files/lib/reports/ReportTableColumn_rb.html +1 -1
  251. data/doc/files/lib/reports/ReportTableLegend_rb.html +1 -1
  252. data/doc/files/lib/reports/ReportTableLine_rb.html +1 -1
  253. data/doc/files/lib/reports/ReportTable_rb.html +1 -1
  254. data/doc/files/lib/reports/Report_rb.html +8 -2
  255. data/doc/files/lib/reports/ResourceListRE_rb.html +2 -2
  256. data/doc/files/lib/reports/{ReportTableElement_rb.html → TableReport_rb.html} +7 -5
  257. data/doc/files/lib/reports/TaskListRE_rb.html +2 -2
  258. data/doc/files/lib/reports/TextReport_rb.html +116 -0
  259. data/doc/files/lib/reports/TjpExportRE_rb.html +2 -2
  260. data/doc/files/lib/taskjuggler3_rb.html +61 -56
  261. data/doc/files/lib/tj3man_rb.html +1 -1
  262. data/doc/fr_class_index.html +41 -3
  263. data/doc/fr_file_index.html +21 -5
  264. data/doc/fr_method_index.html +1069 -959
  265. data/examples/ContactList.html +1467 -0
  266. data/examples/Deliveries.html +485 -0
  267. data/examples/Development.html +2525 -0
  268. data/examples/Overview.html +747 -0
  269. data/examples/Resource Graph.html +616 -0
  270. data/examples/tutorial.tjp +63 -67
  271. data/lib/AttributeBase.rb +27 -31
  272. data/lib/AttributeDefinition.rb +12 -7
  273. data/lib/Attributes.rb +134 -34
  274. data/lib/Interval.rb +2 -0
  275. data/lib/Journal.rb +44 -0
  276. data/lib/{LogicalFlag.rb → KeywordArray.rb} +5 -13
  277. data/lib/KeywordDocumentation.rb +84 -47
  278. data/lib/Limits.rb +7 -5
  279. data/lib/LogicalExpression.rb +1 -1
  280. data/lib/LogicalOperation.rb +33 -0
  281. data/lib/Project.rb +313 -99
  282. data/lib/ProjectFileParser.rb +88 -11
  283. data/lib/PropertyList.rb +2 -1
  284. data/lib/PropertySet.rb +13 -4
  285. data/lib/PropertyTreeNode.rb +34 -15
  286. data/lib/Query.rb +2 -1
  287. data/lib/RTPNavigator.rb +53 -0
  288. data/lib/RTPReport.rb +62 -0
  289. data/lib/RealFormat.rb +28 -10
  290. data/lib/RichTextElement.rb +18 -12
  291. data/lib/RichTextParser.rb +1 -0
  292. data/lib/RichTextProtocolExample.rb +8 -11
  293. data/lib/RichTextProtocolHandler.rb +11 -1
  294. data/lib/RichTextScanner.rb +308 -164
  295. data/lib/RichTextSyntaxRules.rb +24 -0
  296. data/lib/TableColumnDefinition.rb +5 -1
  297. data/lib/TaskJuggler.rb +3 -2
  298. data/lib/TaskScenario.rb +123 -31
  299. data/lib/TextParser.rb +14 -3
  300. data/lib/TextScanner.rb +210 -34
  301. data/lib/Tj3Config.rb +1 -1
  302. data/lib/TjTime.rb +15 -0
  303. data/lib/TjpExample.rb +1 -1
  304. data/lib/TjpSyntaxRules.rb +674 -473
  305. data/lib/WorkingHours.rb +1 -1
  306. data/lib/XMLElement.rb +11 -3
  307. data/lib/deep_copy.rb +72 -0
  308. data/lib/ms_test.rb +27 -0
  309. data/lib/reports/ColumnTable.rb +7 -5
  310. data/lib/reports/GanttChart.rb +60 -34
  311. data/lib/reports/GanttHeader.rb +1 -1
  312. data/lib/reports/GanttRouter.rb +7 -5
  313. data/lib/reports/Navigator.rb +72 -0
  314. data/lib/reports/Report.rb +58 -73
  315. data/lib/reports/ReportBase.rb +241 -0
  316. data/lib/reports/ReportContext.rb +41 -0
  317. data/lib/reports/ReportTable.rb +7 -2
  318. data/lib/reports/ReportTableCell.rb +3 -3
  319. data/lib/reports/ResourceListRE.rb +19 -26
  320. data/lib/reports/{ReportTableElement.rb → TableReport.rb} +297 -97
  321. data/lib/reports/TaskListRE.rb +16 -24
  322. data/lib/reports/TextReport.rb +87 -0
  323. data/lib/reports/TjpExportRE.rb +55 -50
  324. data/lib/taskjuggler3.rb +6 -1
  325. data/manual/Getting_Started +57 -6
  326. data/manual/How_To_Contribute +2 -4
  327. data/manual/Intro +2 -2
  328. data/manual/Reporting_Bugs +9 -2
  329. data/manual/Rich_Text_Attributes +41 -0
  330. data/manual/Tutorial +219 -173
  331. data/tasks/test.rake +3 -0
  332. data/test/TestSuite/CSV-Reports/celltext.tjp +2 -1
  333. data/test/TestSuite/CSV-Reports/resourcereport.tjp +2 -1
  334. data/test/TestSuite/CSV-Reports/resourcereport_with_tasks.tjp +2 -1
  335. data/test/TestSuite/CSV-Reports/sortByTree.tjp +2 -1
  336. data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +2 -1
  337. data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +2 -1
  338. data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +2 -1
  339. data/test/TestSuite/CSV-Reports/taskreport.tjp +2 -1
  340. data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +2 -1
  341. data/test/TestSuite/HTML-Reports/depArrows.tjp +72 -0
  342. data/test/TestSuite/HTML-Reports/reference-export.html +187 -0
  343. data/test/TestSuite/HTML-Reports/reference.tjp +21 -0
  344. data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -1
  345. data/test/TestSuite/Scheduler/Correct/AutomaticMilestones.tjp +3 -3
  346. data/test/TestSuite/Scheduler/Correct/Booking.tjp +3 -3
  347. data/test/TestSuite/Scheduler/Correct/Container-2.tjp +37 -0
  348. data/test/TestSuite/Scheduler/Correct/Container.tjp +40 -0
  349. data/test/TestSuite/Scheduler/Correct/Depends.tjp +9 -14
  350. data/test/TestSuite/Scheduler/Correct/Duration.tjp +2 -1
  351. data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +20 -29
  352. data/test/TestSuite/Scheduler/Correct/Limits.tjp +11 -13
  353. data/test/TestSuite/Scheduler/Correct/Optimize-1.tjp +6 -5
  354. data/test/TestSuite/Scheduler/Correct/Optimize-2.tjp +10 -6
  355. data/test/TestSuite/Scheduler/Correct/Optimize-3.tjp +9 -6
  356. data/test/TestSuite/Scheduler/Correct/Optimize-4.tjp +9 -6
  357. data/test/TestSuite/Scheduler/Correct/Optimize-5.tjp +13 -10
  358. data/test/TestSuite/Scheduler/Correct/Precedes.tjp +9 -14
  359. data/test/TestSuite/Scheduler/Correct/Shift.tjp +9 -8
  360. data/test/TestSuite/Scheduler/Correct/checks.tji +4 -0
  361. data/test/TestSuite/Scheduler/Errors/weak_end_dep.tjp +16 -0
  362. data/test/TestSuite/Scheduler/Errors/weak_start_dep.tjp +16 -0
  363. data/test/TestSuite/Syntax/Correct/Account.tjp +1 -1
  364. data/test/TestSuite/Syntax/Correct/AutoID.tjp +21 -0
  365. data/test/TestSuite/Syntax/Correct/AutoMacros.tjp +2 -1
  366. data/test/TestSuite/Syntax/Correct/Caption.tjp +7 -6
  367. data/test/TestSuite/Syntax/Correct/Celltext.tjp +7 -4
  368. data/test/TestSuite/Syntax/Correct/Comments.tjp +1 -1
  369. data/test/TestSuite/Syntax/Correct/CompletedWork.tji +11 -19
  370. data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +4 -3
  371. data/test/TestSuite/Syntax/Correct/Export.tjp +3 -1
  372. data/test/TestSuite/Syntax/Correct/Flags.tjp +2 -1
  373. data/test/TestSuite/Syntax/Correct/HtmlTaskReport.tjp +2 -1
  374. data/test/TestSuite/Syntax/Correct/Journal.tjp +18 -0
  375. data/test/TestSuite/Syntax/Correct/LoadUnits.tjp +2 -1
  376. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +16 -0
  377. data/test/TestSuite/Syntax/Correct/Period.tjp +2 -1
  378. data/test/TestSuite/Syntax/Correct/RawHTML.tjp +4 -2
  379. data/test/TestSuite/Syntax/Correct/Reports.tjp +4 -2
  380. data/test/TestSuite/Syntax/Correct/ResourcePrefix.tji +2 -0
  381. data/test/TestSuite/Syntax/Correct/ResourcePrefix.tjp +23 -0
  382. data/test/TestSuite/Syntax/Correct/Responsible.tjp +1 -1
  383. data/test/TestSuite/Syntax/Correct/Simple.tjp +1 -1
  384. data/test/TestSuite/Syntax/Correct/String.tjp +1 -1
  385. data/test/TestSuite/Syntax/Correct/TaskRoot.tjp +2 -1
  386. data/test/TestSuite/Syntax/Correct/tutorial.tjp +92 -70
  387. data/test/TestSuite/Syntax/Errors/bad_comment.tjp +7 -0
  388. data/test/TestSuite/Syntax/Errors/bad_include.tjp +1 -1
  389. data/test/TestSuite/Syntax/Errors/bad_time_zone.tjp +6 -0
  390. data/test/TestSuite/Syntax/Errors/bad_timing_res.tjp +5 -0
  391. data/test/TestSuite/Syntax/Errors/chargeset_master.tjp +1 -1
  392. data/test/TestSuite/Syntax/Errors/container_attribute.tjp +1 -1
  393. data/test/TestSuite/Syntax/Errors/cost_acct_no_top.tjp +3 -2
  394. data/test/TestSuite/Syntax/Errors/cost_rev_same.tjp +1 -1
  395. data/test/TestSuite/Syntax/Errors/eof_in_istring1.tjp +5 -0
  396. data/test/TestSuite/Syntax/Errors/eof_in_istring2.tjp +5 -0
  397. data/test/TestSuite/Syntax/Errors/eof_in_istring3.tjp +6 -0
  398. data/test/TestSuite/Syntax/Errors/eof_in_istring4.tjp +6 -0
  399. data/test/TestSuite/Syntax/Errors/eof_in_istring5.tjp +6 -0
  400. data/test/TestSuite/Syntax/Errors/include_recursion.tji +1 -0
  401. data/test/TestSuite/Syntax/Errors/include_recursion.tjp +7 -0
  402. data/test/TestSuite/Syntax/Errors/junk_after_cut.tjp +6 -0
  403. data/test/TestSuite/Syntax/Errors/navigator_exists.tjp +10 -0
  404. data/test/TestSuite/Syntax/Errors/operand_unkn_flag.tjp +1 -1
  405. data/test/TestSuite/Syntax/Errors/report_end.tjp +1 -1
  406. data/test/TestSuite/Syntax/Errors/report_exists.tjp +10 -0
  407. data/test/TestSuite/Syntax/Errors/report_start.tjp +1 -1
  408. data/test/TestSuite/Syntax/Errors/rev_acct_no_top.tjp +1 -1
  409. data/test/TestSuite/Syntax/Errors/sort_direction.tjp +1 -1
  410. data/test/TestSuite/Syntax/Errors/sort_unknown_scen.tjp +1 -1
  411. data/test/TestSuite/Syntax/Errors/sorting_crit_exptd1.tjp +1 -1
  412. data/test/TestSuite/Syntax/Errors/sorting_crit_exptd2.tjp +1 -1
  413. data/test/TestSuite/Syntax/Errors/sorting_wbs.tjp +1 -1
  414. data/test/TestSuite/Syntax/Errors/too_large_timing_res.tjp +7 -0
  415. data/test/TestSuite/Syntax/Errors/unknown_scenario_idx.tjp +1 -1
  416. data/test/TestSuite/Syntax/Errors/unknown_task.tjp +1 -1
  417. data/test/all.rb +1 -16
  418. data/test/test_CSV-Reports.rb +8 -5
  419. data/test/test_Query.rb +2 -2
  420. data/test/test_RichText.rb +95 -0
  421. data/test/test_Scheduler.rb +8 -4
  422. data/test/test_Syntax.rb +8 -4
  423. data/test/test_deep_copy.rb +83 -0
  424. metadata +549 -487
  425. data/benchmarks/UTF-8-Strings.rb +0 -58
  426. data/doc/classes/TaskJuggler/ReportElement.html +0 -1070
  427. data/doc/classes/TaskJuggler/ReportTableElement.html +0 -644
  428. data/lib/reports/ReportElement.rb +0 -427
  429. data/test/TestSuite/Syntax/Correct/csvtest +0 -16
  430. data/test/TestSuite/Syntax/Errors/no_csv_suffix.tjp +0 -10
  431. data/test/TestSuite/Syntax/Errors/no_html_suffix.tjp +0 -10
  432. data/test/TestSuite/Syntax/Errors/report_redifinition.tjp +0 -10
@@ -0,0 +1,313 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <title>Class: TaskJuggler::BatchProcessor [TaskJuggler III API documentation]</title>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
8
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
9
+ <script type="text/javascript">
10
+ // <![CDATA[
11
+
12
+ function popupCode( url ) {
13
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
14
+ }
15
+
16
+ function toggleCode( id ) {
17
+ if ( document.getElementById )
18
+ elem = document.getElementById( id );
19
+ else if ( document.all )
20
+ elem = eval( "document.all." + id );
21
+ else
22
+ return false;
23
+
24
+ elemStyle = elem.style;
25
+
26
+ if ( elemStyle.display != "block" ) {
27
+ elemStyle.display = "block"
28
+ } else {
29
+ elemStyle.display = "none"
30
+ }
31
+
32
+ return true;
33
+ }
34
+
35
+ // Make codeblocks hidden by default
36
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
37
+
38
+ // ]]>
39
+ </script>
40
+
41
+ </head>
42
+ <body>
43
+
44
+
45
+ <div id="classHeader">
46
+ <table class="header-table">
47
+ <tr class="top-aligned-row">
48
+ <td><strong>Class</strong></td>
49
+ <td class="class-name-in-header">TaskJuggler::BatchProcessor</td>
50
+ </tr>
51
+ <tr class="top-aligned-row">
52
+ <td><strong>In:</strong></td>
53
+ <td>
54
+
55
+
56
+ <a href="../../files/lib/BatchProcessor_rb.html">
57
+
58
+ lib/BatchProcessor.rb
59
+
60
+ </a>
61
+
62
+
63
+ <br />
64
+
65
+ </td>
66
+ </tr>
67
+
68
+
69
+ <tr class="top-aligned-row">
70
+ <td><strong>Parent:</strong></td>
71
+ <td>
72
+
73
+ <a href="../Object.html">
74
+
75
+ Object
76
+
77
+ </a>
78
+
79
+ </td>
80
+ </tr>
81
+
82
+ </table>
83
+ </div>
84
+ <!-- banner header -->
85
+
86
+ <div id="bodyContent">
87
+
88
+ <div id="contextContent">
89
+
90
+ <div id="description">
91
+ <p>
92
+ The <a href="BatchProcessor.html">BatchProcessor</a> class can be used to
93
+ run code blocks of the program as a separate process. Mulitple pieces of
94
+ code can be submitted to be executed in parallel. The number of CPU cores
95
+ to use is limited at object creation time. The submitted jobs will be
96
+ queued and scheduled to the given number of CPUs. The usage model is
97
+ simple. Create an <a href="BatchProcessor.html">BatchProcessor</a> object.
98
+ use <a href="BatchProcessor.html#M000339">BatchProcessor#queue</a> to
99
+ submit all the jobs and then use <a
100
+ href="BatchProcessor.html#M000340">BatchProcessor#wait</a> to wait for
101
+ completion and to process the results.
102
+ </p>
103
+
104
+ </div>
105
+
106
+ </div>
107
+
108
+
109
+ <div id="method-list">
110
+ <h3 class="section-bar">Methods</h3>
111
+
112
+ <div class="name-list">
113
+
114
+ <a href="#M000338">new</a>&nbsp;&nbsp;
115
+
116
+ <a href="#M000339">queue</a>&nbsp;&nbsp;
117
+
118
+ <a href="#M000340">wait</a>&nbsp;&nbsp;
119
+
120
+ </div>
121
+ </div>
122
+
123
+ </div>
124
+
125
+ <!-- if includes -->
126
+
127
+ <div id="section">
128
+
129
+
130
+
131
+
132
+ <!-- if method_list -->
133
+
134
+ <div id="methods">
135
+
136
+ <h3 class="section-bar">Public Class methods</h3>
137
+
138
+
139
+ <div id="method-M000338" class="method-detail">
140
+ <a name="M000338"></a>
141
+
142
+ <div class="method-heading">
143
+
144
+ <a href="#M000338" class="method-signature">
145
+
146
+ <span class="method-name">new</span><span class="method-args">(maxCpuCores)</span>
147
+
148
+ </a>
149
+
150
+ </div>
151
+
152
+ <div class="method-description">
153
+
154
+ <p>
155
+ Create a <a href="BatchProcessor.html">BatchProcessor</a> object.
156
+ <tt>maxCpuCores</tt> limits the number of simultaneously spawned processes.
157
+ </p>
158
+
159
+ <p><a class="source-toggle" href="#"
160
+ onclick="toggleCode('M000338-source');return false;">[Source]</a></p>
161
+ <div class="method-source-code" id="M000338-source">
162
+ <pre>
163
+ <span class="ruby-comment cmt"># File lib/BatchProcessor.rb, line 59</span>
164
+ 59: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">maxCpuCores</span>)
165
+ 60: <span class="ruby-ivar">@maxCpuCores</span> = <span class="ruby-identifier">maxCpuCores</span>
166
+ 61: <span class="ruby-comment cmt"># The job queue.</span>
167
+ 62: <span class="ruby-ivar">@queue</span> = <span class="ruby-constant">Queue</span>.<span class="ruby-identifier">new</span>
168
+ 63: <span class="ruby-comment cmt"># A semaphore to guard accesses to shared data structures.`</span>
169
+ 64: <span class="ruby-ivar">@lock</span> = <span class="ruby-constant">Monitor</span>.<span class="ruby-identifier">new</span>
170
+ 65: <span class="ruby-comment cmt"># A hash that maps process ids to JobInfo objects.</span>
171
+ 66: <span class="ruby-ivar">@jobs</span> = { }
172
+ 67: <span class="ruby-comment cmt"># Counts the number of pending processes.</span>
173
+ 68: <span class="ruby-ivar">@pendingJobs</span> = <span class="ruby-value">0</span>
174
+ 69: <span class="ruby-comment cmt"># An Array that holds all the IO objects to receive data from.</span>
175
+ 70: <span class="ruby-ivar">@pipes</span> = []
176
+ 71: <span class="ruby-comment cmt"># A hash that maps IO objects to JobInfo objects</span>
177
+ 72: <span class="ruby-ivar">@pipeToJob</span> = {}
178
+ 73: <span class="ruby-comment cmt"># This global flag is set to true to signal the threads to terminate.</span>
179
+ 74: <span class="ruby-ivar">@terminate</span> = <span class="ruby-keyword kw">false</span>
180
+ 75: <span class="ruby-comment cmt"># Sleep time of the threads when no data is pending.</span>
181
+ 76: <span class="ruby-ivar">@timeout</span> = <span class="ruby-value">0</span><span class="ruby-value">.05</span>
182
+ 77:
183
+ 78: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">abort_on_exception</span> = <span class="ruby-keyword kw">true</span>
184
+ 79: <span class="ruby-comment cmt"># The JobInfo objects in the @queue are processed by the pusher thread.</span>
185
+ 80: <span class="ruby-comment cmt"># It forkes off processes to execute the code block associated with the</span>
186
+ 81: <span class="ruby-comment cmt"># JobInfo.</span>
187
+ 82: <span class="ruby-ivar">@pusher</span> = <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">pusher</span> }
188
+ 83: <span class="ruby-comment cmt"># The popper thread waits for terminated childs and picks up the</span>
189
+ 84: <span class="ruby-comment cmt"># results.</span>
190
+ 85: <span class="ruby-ivar">@popper</span> = <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">popper</span> }
191
+ 86: <span class="ruby-comment cmt"># The grabber thread collects $stdout and $stderr data from each child</span>
192
+ 87: <span class="ruby-comment cmt"># process and stores them in the corresponding JobInfo.</span>
193
+ 88: <span class="ruby-ivar">@grabber</span> = <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">grabber</span> }
194
+ 89: <span class="ruby-keyword kw">end</span>
195
+ </pre>
196
+ </div>
197
+
198
+ </div>
199
+ </div>
200
+
201
+
202
+ <h3 class="section-bar">Public Instance methods</h3>
203
+
204
+
205
+ <div id="method-M000339" class="method-detail">
206
+ <a name="M000339"></a>
207
+
208
+ <div class="method-heading">
209
+
210
+ <a href="#M000339" class="method-signature">
211
+
212
+ <span class="method-name">queue</span><span class="method-args">(tag = nil, &amp;block)</span>
213
+
214
+ </a>
215
+
216
+ </div>
217
+
218
+ <div class="method-description">
219
+
220
+ <p>
221
+ Add a new job the job queue. <tt>tag</tt> is some data that the caller can
222
+ use to identify the job upon completion. <tt>block</tt> is a Ruby code
223
+ block to be executed in a separate process.
224
+ </p>
225
+
226
+ <p><a class="source-toggle" href="#"
227
+ onclick="toggleCode('M000339-source');return false;">[Source]</a></p>
228
+ <div class="method-source-code" id="M000339-source">
229
+ <pre>
230
+ <span class="ruby-comment cmt"># File lib/BatchProcessor.rb, line 94</span>
231
+ 94: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">queue</span>(<span class="ruby-identifier">tag</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-operator">&amp;</span><span class="ruby-identifier">block</span>)
232
+ 95: <span class="ruby-comment cmt"># Create a new JobInfo object for the job and push it to the @queue.</span>
233
+ 96: <span class="ruby-identifier">jobInfo</span> = <span class="ruby-constant">JobInfo</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">length</span>, <span class="ruby-identifier">block</span>, <span class="ruby-identifier">tag</span>)
234
+ 97: <span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">push</span>(<span class="ruby-identifier">jobInfo</span>)
235
+ 98: <span class="ruby-ivar">@lock</span>.<span class="ruby-identifier">synchronize</span> <span class="ruby-keyword kw">do</span>
236
+ 99: <span class="ruby-comment cmt"># Add the receiver end of the pipe to the @pipes Array.</span>
237
+ 100: <span class="ruby-ivar">@pipes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">jobInfo</span>.<span class="ruby-identifier">stdoutP</span>
238
+ 101: <span class="ruby-comment cmt"># Map the pipe end to this JobInfo object.</span>
239
+ 102: <span class="ruby-ivar">@pipeToJob</span>[<span class="ruby-identifier">jobInfo</span>.<span class="ruby-identifier">stdoutP</span>] = <span class="ruby-identifier">jobInfo</span>
240
+ 103: <span class="ruby-comment cmt"># Same for $stderr.</span>
241
+ 104: <span class="ruby-ivar">@pipes</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">jobInfo</span>.<span class="ruby-identifier">stderrP</span>
242
+ 105: <span class="ruby-ivar">@pipeToJob</span>[<span class="ruby-identifier">jobInfo</span>.<span class="ruby-identifier">stderrP</span>] = <span class="ruby-identifier">jobInfo</span>
243
+ 106: <span class="ruby-keyword kw">end</span>
244
+ 107: <span class="ruby-keyword kw">end</span>
245
+ </pre>
246
+ </div>
247
+
248
+ </div>
249
+ </div>
250
+
251
+
252
+ <div id="method-M000340" class="method-detail">
253
+ <a name="M000340"></a>
254
+
255
+ <div class="method-heading">
256
+
257
+ <a href="#M000340" class="method-signature">
258
+
259
+ <span class="method-name">wait</span><span class="method-args">() {|job| ...}</span>
260
+
261
+ </a>
262
+
263
+ </div>
264
+
265
+ <div class="method-description">
266
+
267
+ <p>
268
+ Wait for all jobs to complete. The code block will get the <a
269
+ href="JobInfo.html">JobInfo</a> objects for each job to pick up the
270
+ results.
271
+ </p>
272
+
273
+ <p><a class="source-toggle" href="#"
274
+ onclick="toggleCode('M000340-source');return false;">[Source]</a></p>
275
+ <div class="method-source-code" id="M000340-source">
276
+ <pre>
277
+ <span class="ruby-comment cmt"># File lib/BatchProcessor.rb, line 111</span>
278
+ 111: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">wait</span>
279
+ 112: <span class="ruby-keyword kw">while</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@queue</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@pendingJobs</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-keyword kw">do</span>
280
+ 113: <span class="ruby-identifier">sleep</span>(<span class="ruby-ivar">@timeout</span>)
281
+ 114: <span class="ruby-keyword kw">end</span>
282
+ 115:
283
+ 116: <span class="ruby-comment cmt"># Signal threads to stop</span>
284
+ 117: <span class="ruby-ivar">@terminate</span> = <span class="ruby-keyword kw">true</span>
285
+ 118: <span class="ruby-comment cmt"># Wait for treads to finish</span>
286
+ 119: <span class="ruby-ivar">@pusher</span>.<span class="ruby-identifier">join</span>
287
+ 120: <span class="ruby-ivar">@popper</span>.<span class="ruby-identifier">join</span>
288
+ 121: <span class="ruby-ivar">@grabber</span>.<span class="ruby-identifier">join</span>
289
+ 122:
290
+ 123: <span class="ruby-comment cmt"># Pass the results of the jobs to the caller.</span>
291
+ 124: <span class="ruby-ivar">@jobs</span>.<span class="ruby-identifier">each_value</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">job</span><span class="ruby-operator">|</span> <span class="ruby-keyword kw">yield</span>(<span class="ruby-identifier">job</span>) }
292
+ 125: <span class="ruby-keyword kw">end</span>
293
+ </pre>
294
+ </div>
295
+
296
+ </div>
297
+ </div>
298
+
299
+
300
+
301
+ </div>
302
+
303
+
304
+
305
+
306
+ </div>
307
+
308
+ <div id="validator-badges">
309
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
310
+ </div>
311
+
312
+ </body>
313
+ </html>
@@ -70,8 +70,12 @@
70
70
  <td><strong>Parent:</strong></td>
71
71
  <td>
72
72
 
73
+ <a href="../Object.html">
74
+
73
75
  Object
74
76
 
77
+ </a>
78
+
75
79
  </td>
76
80
  </tr>
77
81
 
@@ -91,11 +95,11 @@
91
95
 
92
96
  <div class="name-list">
93
97
 
94
- <a href="#M000589">new</a>&nbsp;&nbsp;
98
+ <a href="#M000432">new</a>&nbsp;&nbsp;
95
99
 
96
- <a href="#M000590">to_s</a>&nbsp;&nbsp;
100
+ <a href="#M000433">to_s</a>&nbsp;&nbsp;
97
101
 
98
- <a href="#M000591">to_tjp</a>&nbsp;&nbsp;
102
+ <a href="#M000434">to_tjp</a>&nbsp;&nbsp;
99
103
 
100
104
  </div>
101
105
  </div>
@@ -174,12 +178,12 @@
174
178
  <h3 class="section-bar">Public Class methods</h3>
175
179
 
176
180
 
177
- <div id="method-M000589" class="method-detail">
178
- <a name="M000589"></a>
181
+ <div id="method-M000432" class="method-detail">
182
+ <a name="M000432"></a>
179
183
 
180
184
  <div class="method-heading">
181
185
 
182
- <a href="#M000589" class="method-signature">
186
+ <a href="#M000432" class="method-signature">
183
187
 
184
188
  <span class="method-name">new</span><span class="method-args">(resource, task, intervals)</span>
185
189
 
@@ -190,8 +194,8 @@
190
194
  <div class="method-description">
191
195
 
192
196
  <p><a class="source-toggle" href="#"
193
- onclick="toggleCode('M000589-source');return false;">[Source]</a></p>
194
- <div class="method-source-code" id="M000589-source">
197
+ onclick="toggleCode('M000432-source');return false;">[Source]</a></p>
198
+ <div class="method-source-code" id="M000432-source">
195
199
  <pre>
196
200
  <span class="ruby-comment cmt"># File lib/Booking.rb, line 20</span>
197
201
  20: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">intervals</span>)
@@ -212,12 +216,12 @@
212
216
  <h3 class="section-bar">Public Instance methods</h3>
213
217
 
214
218
 
215
- <div id="method-M000590" class="method-detail">
216
- <a name="M000590"></a>
219
+ <div id="method-M000433" class="method-detail">
220
+ <a name="M000433"></a>
217
221
 
218
222
  <div class="method-heading">
219
223
 
220
- <a href="#M000590" class="method-signature">
224
+ <a href="#M000433" class="method-signature">
221
225
 
222
226
  <span class="method-name">to_s</span><span class="method-args">()</span>
223
227
 
@@ -228,8 +232,8 @@
228
232
  <div class="method-description">
229
233
 
230
234
  <p><a class="source-toggle" href="#"
231
- onclick="toggleCode('M000590-source');return false;">[Source]</a></p>
232
- <div class="method-source-code" id="M000590-source">
235
+ onclick="toggleCode('M000433-source');return false;">[Source]</a></p>
236
+ <div class="method-source-code" id="M000433-source">
233
237
  <pre>
234
238
  <span class="ruby-comment cmt"># File lib/Booking.rb, line 29</span>
235
239
  29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
@@ -251,12 +255,12 @@
251
255
  </div>
252
256
 
253
257
 
254
- <div id="method-M000591" class="method-detail">
255
- <a name="M000591"></a>
258
+ <div id="method-M000434" class="method-detail">
259
+ <a name="M000434"></a>
256
260
 
257
261
  <div class="method-heading">
258
262
 
259
- <a href="#M000591" class="method-signature">
263
+ <a href="#M000434" class="method-signature">
260
264
 
261
265
  <span class="method-name">to_tjp</span><span class="method-args">()</span>
262
266
 
@@ -267,8 +271,8 @@
267
271
  <div class="method-description">
268
272
 
269
273
  <p><a class="source-toggle" href="#"
270
- onclick="toggleCode('M000591-source');return false;">[Source]</a></p>
271
- <div class="method-source-code" id="M000591-source">
274
+ onclick="toggleCode('M000434-source');return false;">[Source]</a></p>
275
+ <div class="method-source-code" id="M000434-source">
272
276
  <pre>
273
277
  <span class="ruby-comment cmt"># File lib/Booking.rb, line 42</span>
274
278
  42: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
@@ -95,13 +95,13 @@
95
95
 
96
96
  <div class="name-list">
97
97
 
98
- <a href="#M000706">new</a>&nbsp;&nbsp;
98
+ <a href="#M000443">new</a>&nbsp;&nbsp;
99
99
 
100
- <a href="#M000707">tjpId</a>&nbsp;&nbsp;
100
+ <a href="#M000444">tjpId</a>&nbsp;&nbsp;
101
101
 
102
- <a href="#M000708">to_s</a>&nbsp;&nbsp;
102
+ <a href="#M000445">to_s</a>&nbsp;&nbsp;
103
103
 
104
- <a href="#M000709">to_tjp</a>&nbsp;&nbsp;
104
+ <a href="#M000446">to_tjp</a>&nbsp;&nbsp;
105
105
 
106
106
  </div>
107
107
  </div>
@@ -122,12 +122,12 @@
122
122
  <h3 class="section-bar">Public Class methods</h3>
123
123
 
124
124
 
125
- <div id="method-M000706" class="method-detail">
126
- <a name="M000706"></a>
125
+ <div id="method-M000443" class="method-detail">
126
+ <a name="M000443"></a>
127
127
 
128
128
  <div class="method-heading">
129
129
 
130
- <a href="#M000706" class="method-signature">
130
+ <a href="#M000443" class="method-signature">
131
131
 
132
132
  <span class="method-name">new</span><span class="method-args">(property, type)</span>
133
133
 
@@ -138,15 +138,15 @@
138
138
  <div class="method-description">
139
139
 
140
140
  <p><a class="source-toggle" href="#"
141
- onclick="toggleCode('M000706-source');return false;">[Source]</a></p>
142
- <div class="method-source-code" id="M000706-source">
141
+ onclick="toggleCode('M000443-source');return false;">[Source]</a></p>
142
+ <div class="method-source-code" id="M000443-source">
143
143
  <pre>
144
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 74</span>
145
- 74: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">type</span>)
146
- 75: <span class="ruby-keyword kw">super</span>
147
- 76:
148
- 77: <span class="ruby-ivar">@value</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
149
- 78: <span class="ruby-keyword kw">end</span>
144
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 93</span>
145
+ 93: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">type</span>)
146
+ 94: <span class="ruby-keyword kw">super</span>
147
+ 95:
148
+ 96: <span class="ruby-ivar">@value</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>
149
+ 97: <span class="ruby-keyword kw">end</span>
150
150
  </pre>
151
151
  </div>
152
152
 
@@ -154,12 +154,12 @@
154
154
  </div>
155
155
 
156
156
 
157
- <div id="method-M000707" class="method-detail">
158
- <a name="M000707"></a>
157
+ <div id="method-M000444" class="method-detail">
158
+ <a name="M000444"></a>
159
159
 
160
160
  <div class="method-heading">
161
161
 
162
- <a href="#M000707" class="method-signature">
162
+ <a href="#M000444" class="method-signature">
163
163
 
164
164
  <span class="method-name">tjpId</span><span class="method-args">()</span>
165
165
 
@@ -170,13 +170,13 @@
170
170
  <div class="method-description">
171
171
 
172
172
  <p><a class="source-toggle" href="#"
173
- onclick="toggleCode('M000707-source');return false;">[Source]</a></p>
174
- <div class="method-source-code" id="M000707-source">
173
+ onclick="toggleCode('M000444-source');return false;">[Source]</a></p>
174
+ <div class="method-source-code" id="M000444-source">
175
175
  <pre>
176
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 80</span>
177
- 80: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">BookingListAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
178
- 81: <span class="ruby-value str">'bookinglist'</span>
179
- 82: <span class="ruby-keyword kw">end</span>
176
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 99</span>
177
+ 99: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">BookingListAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
178
+ 100: <span class="ruby-value str">'bookinglist'</span>
179
+ 101: <span class="ruby-keyword kw">end</span>
180
180
  </pre>
181
181
  </div>
182
182
 
@@ -187,12 +187,12 @@
187
187
  <h3 class="section-bar">Public Instance methods</h3>
188
188
 
189
189
 
190
- <div id="method-M000708" class="method-detail">
191
- <a name="M000708"></a>
190
+ <div id="method-M000445" class="method-detail">
191
+ <a name="M000445"></a>
192
192
 
193
193
  <div class="method-heading">
194
194
 
195
- <a href="#M000708" class="method-signature">
195
+ <a href="#M000445" class="method-signature">
196
196
 
197
197
  <span class="method-name">to_s</span><span class="method-args">()</span>
198
198
 
@@ -203,13 +203,13 @@
203
203
  <div class="method-description">
204
204
 
205
205
  <p><a class="source-toggle" href="#"
206
- onclick="toggleCode('M000708-source');return false;">[Source]</a></p>
207
- <div class="method-source-code" id="M000708-source">
206
+ onclick="toggleCode('M000445-source');return false;">[Source]</a></p>
207
+ <div class="method-source-code" id="M000445-source">
208
208
  <pre>
209
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 84</span>
210
- 84: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
211
- 85: <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">collect</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> <span class="ruby-identifier">x</span>.<span class="ruby-identifier">to_s</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-value str">', '</span>)
212
- 86: <span class="ruby-keyword kw">end</span>
209
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 103</span>
210
+ 103: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
211
+ 104: <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">collect</span>{ <span class="ruby-operator">|</span><span class="ruby-identifier">x</span><span class="ruby-operator">|</span> <span class="ruby-identifier">x</span>.<span class="ruby-identifier">to_s</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-value str">', '</span>)
212
+ 105: <span class="ruby-keyword kw">end</span>
213
213
  </pre>
214
214
  </div>
215
215
 
@@ -217,12 +217,12 @@
217
217
  </div>
218
218
 
219
219
 
220
- <div id="method-M000709" class="method-detail">
221
- <a name="M000709"></a>
220
+ <div id="method-M000446" class="method-detail">
221
+ <a name="M000446"></a>
222
222
 
223
223
  <div class="method-heading">
224
224
 
225
- <a href="#M000709" class="method-signature">
225
+ <a href="#M000446" class="method-signature">
226
226
 
227
227
  <span class="method-name">to_tjp</span><span class="method-args">()</span>
228
228
 
@@ -233,13 +233,13 @@
233
233
  <div class="method-description">
234
234
 
235
235
  <p><a class="source-toggle" href="#"
236
- onclick="toggleCode('M000709-source');return false;">[Source]</a></p>
237
- <div class="method-source-code" id="M000709-source">
236
+ onclick="toggleCode('M000446-source');return false;">[Source]</a></p>
237
+ <div class="method-source-code" id="M000446-source">
238
238
  <pre>
239
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 88</span>
240
- 88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
241
- 89: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Don't call this method. This needs to be a special case.&quot;</span>
242
- 90: <span class="ruby-keyword kw">end</span>
239
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 107</span>
240
+ 107: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
241
+ 108: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Don't call this method. This needs to be a special case.&quot;</span>
242
+ 109: <span class="ruby-keyword kw">end</span>
243
243
  </pre>
244
244
  </div>
245
245