taskjuggler 0.0.3 → 0.0.4

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 (495) hide show
  1. data/benchmarks/UTF-8-Strings.rb +58 -0
  2. data/data/css/tjmanual.css +52 -0
  3. data/data/css/tjreport.css +195 -0
  4. data/data/icons/details.png +0 -0
  5. data/data/icons/flag-green.png +0 -0
  6. data/data/icons/flag-red.png +0 -0
  7. data/data/icons/flag-yellow.png +0 -0
  8. data/data/icons/resource.png +0 -0
  9. data/data/icons/resourcegroup.png +0 -0
  10. data/data/icons/task.png +0 -0
  11. data/data/icons/taskgroup.png +0 -0
  12. data/data/icons/trend-down.png +0 -0
  13. data/data/icons/trend-flat.png +0 -0
  14. data/data/icons/trend-up.png +0 -0
  15. data/data/scripts/wz_tooltip.js +1301 -0
  16. data/doc/classes/AppConfig.html +298 -230
  17. data/doc/classes/Arguments.html +8 -8
  18. data/doc/classes/Object.html +7 -7
  19. data/doc/classes/String.html +89 -89
  20. data/doc/classes/TaskJuggler.html +396 -264
  21. data/doc/classes/TaskJuggler/Account.html +18 -18
  22. data/doc/classes/TaskJuggler/AccountAttribute.html +26 -26
  23. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  24. data/doc/classes/TaskJuggler/Allocation.html +30 -30
  25. data/doc/classes/TaskJuggler/AllocationAttribute.html +26 -26
  26. data/doc/classes/TaskJuggler/AttributeBase.html +227 -115
  27. data/doc/classes/TaskJuggler/AttributeDefinition.html +6 -6
  28. data/doc/classes/TaskJuggler/BatchProcessor.html +117 -83
  29. data/doc/classes/TaskJuggler/Booking.html +18 -18
  30. data/doc/classes/TaskJuggler/BookingListAttribute.html +26 -26
  31. data/doc/classes/TaskJuggler/BooleanAttribute.html +26 -26
  32. data/doc/classes/TaskJuggler/CSVFile.html +24 -24
  33. data/doc/classes/TaskJuggler/CellSettingPattern.html +201 -0
  34. data/doc/classes/TaskJuggler/CellSettingPatternList.html +253 -0
  35. data/doc/classes/TaskJuggler/Charge.html +18 -18
  36. data/doc/classes/TaskJuggler/ChargeListAttribute.html +20 -20
  37. data/doc/classes/TaskJuggler/ChargeSet.html +37 -37
  38. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +26 -26
  39. data/doc/classes/TaskJuggler/ColumnListAttribute.html +20 -20
  40. data/doc/classes/TaskJuggler/ColumnTable.html +40 -40
  41. data/doc/classes/TaskJuggler/DateAttribute.html +54 -15
  42. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +10 -10
  43. data/doc/classes/TaskJuggler/DependencyListAttribute.html +47 -47
  44. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  45. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  46. data/doc/classes/TaskJuggler/FlagListAttribute.html +43 -43
  47. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  48. data/doc/classes/TaskJuggler/FormatListAttribute.html +21 -21
  49. data/doc/classes/TaskJuggler/GanttChart.html +48 -48
  50. data/doc/classes/TaskJuggler/GanttContainer.html +42 -42
  51. data/doc/classes/TaskJuggler/GanttHeader.html +12 -12
  52. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +12 -12
  53. data/doc/classes/TaskJuggler/GanttLine.html +24 -24
  54. data/doc/classes/TaskJuggler/GanttLoadStack.html +18 -18
  55. data/doc/classes/TaskJuggler/GanttMilestone.html +42 -42
  56. data/doc/classes/TaskJuggler/GanttRouter.html +24 -24
  57. data/doc/classes/TaskJuggler/GanttTaskBar.html +42 -42
  58. data/doc/classes/TaskJuggler/HTMLDocument.html +13 -13
  59. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  60. data/doc/classes/TaskJuggler/Interval.html +57 -57
  61. data/doc/classes/TaskJuggler/IntervalListAttribute.html +47 -47
  62. data/doc/classes/TaskJuggler/JobInfo.html +68 -12
  63. data/doc/classes/TaskJuggler/Journal.html +266 -20
  64. data/doc/classes/TaskJuggler/JournalEntry.html +79 -23
  65. data/doc/classes/TaskJuggler/JournalEntryList.html +454 -0
  66. data/doc/classes/TaskJuggler/KeywordArray.html +10 -10
  67. data/doc/classes/TaskJuggler/KeywordDocumentation.html +171 -170
  68. data/doc/classes/TaskJuggler/Limits.html +36 -36
  69. data/doc/classes/TaskJuggler/Limits/Limit.html +30 -30
  70. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  71. data/doc/classes/TaskJuggler/ListAttributeBase.html +20 -20
  72. data/doc/classes/TaskJuggler/Log.html +145 -107
  73. data/doc/classes/TaskJuggler/LogicalAttribute.html +65 -36
  74. data/doc/classes/TaskJuggler/LogicalExpression.html +61 -24
  75. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +20 -20
  76. data/doc/classes/TaskJuggler/LogicalFlag.html +31 -51
  77. data/doc/classes/TaskJuggler/LogicalFunction.html +64 -53
  78. data/doc/classes/TaskJuggler/LogicalOperation.html +103 -55
  79. data/doc/classes/TaskJuggler/Macro.html +6 -6
  80. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  81. data/doc/classes/TaskJuggler/MacroTable.html +37 -37
  82. data/doc/classes/TaskJuggler/Message.html +12 -12
  83. data/doc/classes/TaskJuggler/MessageHandler.html +32 -20
  84. data/doc/classes/TaskJuggler/Navigator.html +110 -46
  85. data/doc/classes/TaskJuggler/NavigatorElement.html +449 -0
  86. data/doc/classes/TaskJuggler/OnShiftCache.html +24 -24
  87. data/doc/classes/TaskJuggler/Project.html +1158 -893
  88. data/doc/classes/TaskJuggler/ProjectFileParser.html +94 -91
  89. data/doc/classes/TaskJuggler/PropertyAttribute.html +20 -20
  90. data/doc/classes/TaskJuggler/PropertyList.html +225 -155
  91. data/doc/classes/TaskJuggler/PropertySet.html +375 -332
  92. data/doc/classes/TaskJuggler/PropertyTreeNode.html +750 -510
  93. data/doc/classes/TaskJuggler/Query.html +404 -139
  94. data/doc/classes/TaskJuggler/{RTPNavigator.html → RTFNavigator.html} +57 -56
  95. data/doc/classes/TaskJuggler/RTFQuery.html +343 -0
  96. data/doc/classes/TaskJuggler/{RTPReport.html → RTFReport.html} +70 -67
  97. data/doc/classes/TaskJuggler/RealFormat.html +18 -18
  98. data/doc/classes/TaskJuggler/RealFormatAttribute.html +10 -10
  99. data/doc/classes/TaskJuggler/ReferenceAttribute.html +107 -40
  100. data/doc/classes/TaskJuggler/RemoteServiceManager.html +335 -0
  101. data/doc/classes/TaskJuggler/Report.html +66 -64
  102. data/doc/classes/TaskJuggler/ReportBase.html +112 -123
  103. data/doc/classes/TaskJuggler/ReportContext.html +43 -38
  104. data/doc/classes/TaskJuggler/ReportServer.html +320 -0
  105. data/doc/classes/TaskJuggler/ReportTable.html +42 -42
  106. data/doc/classes/TaskJuggler/ReportTableCell.html +221 -129
  107. data/doc/classes/TaskJuggler/ReportTableColumn.html +27 -27
  108. data/doc/classes/TaskJuggler/ReportTableLegend.html +24 -24
  109. data/doc/classes/TaskJuggler/ReportTableLine.html +126 -80
  110. data/doc/classes/TaskJuggler/Resource.html +12 -12
  111. data/doc/classes/TaskJuggler/ResourceListAttribute.html +82 -47
  112. data/doc/classes/TaskJuggler/ResourceListRE.html +43 -39
  113. data/doc/classes/TaskJuggler/ResourceScenario.html +413 -321
  114. data/doc/classes/TaskJuggler/RichText.html +64 -248
  115. data/doc/classes/TaskJuggler/RichTextAttribute.html +94 -30
  116. data/doc/classes/TaskJuggler/RichTextDocument.html +87 -85
  117. data/doc/classes/TaskJuggler/RichTextElement.html +456 -363
  118. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  119. data/doc/classes/TaskJuggler/{RichTextProtocolExample.html → RichTextFunctionExample.html} +64 -63
  120. data/doc/classes/TaskJuggler/{RichTextProtocolHandler.html → RichTextFunctionHandler.html} +42 -36
  121. data/doc/classes/TaskJuggler/RichTextIntermediate.html +563 -0
  122. data/doc/classes/TaskJuggler/RichTextParser.html +54 -51
  123. data/doc/classes/TaskJuggler/RichTextScanner.html +94 -92
  124. data/doc/classes/TaskJuggler/RichTextSnip.html +96 -60
  125. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +369 -227
  126. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  127. data/doc/classes/TaskJuggler/ScenarioData.html +37 -37
  128. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +31 -31
  129. data/doc/classes/TaskJuggler/Scoreboard.html +66 -66
  130. data/doc/classes/TaskJuggler/Shift.html +18 -18
  131. data/doc/classes/TaskJuggler/ShiftAssignment.html +54 -54
  132. data/doc/classes/TaskJuggler/ShiftAssignments.html +78 -78
  133. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  134. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  135. data/doc/classes/TaskJuggler/SortListAttribute.html +22 -22
  136. data/doc/classes/TaskJuggler/SourceFileInfo.html +12 -12
  137. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  138. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  139. data/doc/classes/TaskJuggler/SyntaxReference.html +42 -42
  140. data/doc/classes/TaskJuggler/TOCEntry.html +12 -12
  141. data/doc/classes/TaskJuggler/TSResourceRecord.html +197 -0
  142. data/doc/classes/TaskJuggler/TSTaskRecord.html +215 -0
  143. data/doc/classes/TaskJuggler/TableColumnDefinition.html +64 -43
  144. data/doc/classes/TaskJuggler/TableOfContents.html +18 -18
  145. data/doc/classes/TaskJuggler/TableReport.html +447 -468
  146. data/doc/classes/TaskJuggler/Task.html +12 -12
  147. data/doc/classes/TaskJuggler/TaskDependency.html +12 -12
  148. data/doc/classes/TaskJuggler/TaskListAttribute.html +47 -47
  149. data/doc/classes/TaskJuggler/TaskListRE.html +43 -39
  150. data/doc/classes/TaskJuggler/TaskScenario.html +529 -282
  151. data/doc/classes/TaskJuggler/TextParser.html +215 -194
  152. data/doc/classes/TaskJuggler/TextParser/Pattern.html +97 -97
  153. data/doc/classes/TaskJuggler/TextParser/Rule.html +84 -84
  154. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -15
  155. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  156. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +6 -6
  157. data/doc/classes/TaskJuggler/TextReport.html +77 -74
  158. data/doc/classes/TaskJuggler/TextScanner.html +294 -281
  159. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  160. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +59 -60
  161. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +12 -12
  162. data/doc/classes/TaskJuggler/TimeSheetReport.html +406 -0
  163. data/doc/classes/TaskJuggler/TjException.html +6 -6
  164. data/doc/classes/TaskJuggler/TjTime.html +522 -513
  165. data/doc/classes/TaskJuggler/TjpExample.html +25 -25
  166. data/doc/classes/TaskJuggler/TjpExportRE.html +21 -24
  167. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +6177 -4318
  168. data/doc/classes/TaskJuggler/UserManual.html +212 -213
  169. data/doc/classes/TaskJuggler/WorkingHours.html +49 -49
  170. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -53
  171. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  172. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  173. data/doc/classes/TaskJuggler/XMLDocument.html +27 -26
  174. data/doc/classes/TaskJuggler/XMLElement.html +86 -50
  175. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  176. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  177. data/doc/files/COPYING.html +1 -1
  178. data/doc/files/README.html +1 -1
  179. data/doc/files/lib/AccountScenario_rb.html +3 -2
  180. data/doc/files/lib/Account_rb.html +3 -2
  181. data/doc/files/lib/Allocation_rb.html +3 -2
  182. data/doc/files/lib/AppConfig_rb.html +5 -2
  183. data/doc/files/lib/AttributeBase_rb.html +3 -2
  184. data/doc/files/lib/AttributeDefinition_rb.html +3 -2
  185. data/doc/files/lib/Attributes_rb.html +3 -2
  186. data/doc/files/lib/BatchProcessor_rb.html +4 -3
  187. data/doc/files/lib/Booking_rb.html +3 -2
  188. data/doc/files/lib/ChargeSet_rb.html +3 -2
  189. data/doc/files/lib/Charge_rb.html +3 -2
  190. data/doc/files/lib/HTMLDocument_rb.html +3 -2
  191. data/doc/files/lib/Interval_rb.html +3 -2
  192. data/doc/files/lib/Journal_rb.html +4 -3
  193. data/doc/files/lib/KeywordArray_rb.html +3 -2
  194. data/doc/files/lib/KeywordDocumentation_rb.html +3 -2
  195. data/doc/files/lib/Limits_rb.html +3 -2
  196. data/doc/files/lib/Log_rb.html +3 -2
  197. data/doc/files/lib/LogicalExpression_rb.html +3 -2
  198. data/doc/files/lib/LogicalFunction_rb.html +3 -2
  199. data/doc/files/lib/LogicalOperation_rb.html +3 -2
  200. data/doc/files/lib/MacroParser_rb.html +3 -2
  201. data/doc/files/lib/MacroTable_rb.html +3 -2
  202. data/doc/files/lib/MessageHandler_rb.html +3 -2
  203. data/doc/files/lib/Message_rb.html +3 -2
  204. data/doc/files/lib/ProjectFileParser_rb.html +7 -4
  205. data/doc/files/lib/Project_rb.html +3 -2
  206. data/doc/files/lib/PropertyList_rb.html +3 -2
  207. data/doc/files/lib/PropertySet_rb.html +3 -2
  208. data/doc/files/lib/PropertyTreeNode_rb.html +3 -2
  209. data/doc/files/lib/Query_rb.html +3 -2
  210. data/doc/files/lib/{RTPNavigator_rb.html → RTFNavigator_rb.html} +8 -7
  211. data/doc/files/lib/RTFQuery_rb.html +121 -0
  212. data/doc/files/lib/{RTPReport_rb.html → RTFReport_rb.html} +8 -7
  213. data/doc/files/lib/RealFormat_rb.html +3 -2
  214. data/doc/files/lib/RemoteServiceManager_rb.html +117 -0
  215. data/doc/files/lib/ReportServer_rb.html +107 -0
  216. data/doc/files/lib/ResourceScenario_rb.html +3 -2
  217. data/doc/files/lib/Resource_rb.html +3 -2
  218. data/doc/files/lib/RichTextDocument_rb.html +4 -3
  219. data/doc/files/lib/RichTextElement_rb.html +3 -2
  220. data/doc/files/lib/{RichTextProtocolExample_rb.html → RichTextFunctionExample_rb.html} +8 -7
  221. data/doc/files/lib/{RichTextProtocolHandler_rb.html → RichTextFunctionHandler_rb.html} +7 -6
  222. data/doc/files/lib/RichTextParser_rb.html +3 -2
  223. data/doc/files/lib/RichTextScanner_rb.html +3 -2
  224. data/doc/files/lib/RichTextSnip_rb.html +3 -2
  225. data/doc/files/lib/RichTextSyntaxRules_rb.html +3 -2
  226. data/doc/files/lib/RichText_rb.html +3 -2
  227. data/doc/files/lib/ScenarioData_rb.html +3 -2
  228. data/doc/files/lib/Scenario_rb.html +3 -2
  229. data/doc/files/lib/Scoreboard_rb.html +3 -2
  230. data/doc/files/lib/ShiftAssignments_rb.html +3 -2
  231. data/doc/files/lib/ShiftScenario_rb.html +3 -2
  232. data/doc/files/lib/Shift_rb.html +3 -2
  233. data/doc/files/lib/SourceFileInfo_rb.html +3 -2
  234. data/doc/files/lib/SyntaxReference_rb.html +3 -2
  235. data/doc/files/lib/TOCEntry_rb.html +3 -2
  236. data/doc/files/lib/TableColumnDefinition_rb.html +3 -2
  237. data/doc/files/lib/TableOfContents_rb.html +3 -2
  238. data/doc/files/lib/TaskDependency_rb.html +3 -2
  239. data/doc/files/lib/TaskJuggler_rb.html +7 -2
  240. data/doc/files/lib/TaskScenario_rb.html +3 -2
  241. data/doc/files/lib/Task_rb.html +3 -2
  242. data/doc/files/lib/TextParser/Pattern_rb.html +4 -3
  243. data/doc/files/lib/TextParser/Rule_rb.html +4 -3
  244. data/doc/files/lib/TextParser/StackElement_rb.html +4 -3
  245. data/doc/files/lib/TextParser/TokenDoc_rb.html +4 -3
  246. data/doc/files/lib/TextParser_rb.html +3 -2
  247. data/doc/files/lib/TextScanner_rb.html +3 -2
  248. data/doc/files/lib/Tj3Config_rb.html +3 -2
  249. data/doc/files/lib/TjException_rb.html +3 -2
  250. data/doc/files/lib/TjTime_rb.html +3 -2
  251. data/doc/files/lib/TjpExample_rb.html +3 -2
  252. data/doc/files/lib/TjpSyntaxRules_rb.html +3 -2
  253. data/doc/files/lib/UTF8String_rb.html +14 -6
  254. data/doc/files/lib/UserManual_rb.html +6 -3
  255. data/doc/files/lib/WorkingHours_rb.html +3 -2
  256. data/doc/files/lib/XMLDocument_rb.html +3 -2
  257. data/doc/files/lib/XMLElement_rb.html +3 -2
  258. data/doc/files/lib/deep_copy_rb.html +3 -2
  259. data/doc/files/lib/reports/CSVFile_rb.html +3 -2
  260. data/doc/files/lib/reports/ColumnTable_rb.html +3 -2
  261. data/doc/files/lib/reports/GanttChart_rb.html +3 -2
  262. data/doc/files/lib/reports/GanttContainer_rb.html +3 -2
  263. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +3 -2
  264. data/doc/files/lib/reports/GanttHeader_rb.html +3 -2
  265. data/doc/files/lib/reports/GanttLine_rb.html +3 -2
  266. data/doc/files/lib/reports/GanttLoadStack_rb.html +3 -2
  267. data/doc/files/lib/reports/GanttMilestone_rb.html +3 -2
  268. data/doc/files/lib/reports/GanttRouter_rb.html +3 -2
  269. data/doc/files/lib/reports/GanttTaskBar_rb.html +3 -2
  270. data/doc/files/lib/reports/HTMLGraphics_rb.html +3 -2
  271. data/doc/files/lib/reports/Navigator_rb.html +3 -2
  272. data/doc/files/lib/reports/ReportBase_rb.html +3 -2
  273. data/doc/files/lib/reports/ReportContext_rb.html +3 -2
  274. data/doc/files/lib/reports/ReportTableCell_rb.html +3 -2
  275. data/doc/files/lib/reports/ReportTableColumn_rb.html +3 -2
  276. data/doc/files/lib/reports/ReportTableLegend_rb.html +3 -2
  277. data/doc/files/lib/reports/ReportTableLine_rb.html +3 -2
  278. data/doc/files/lib/reports/ReportTable_rb.html +3 -2
  279. data/doc/files/lib/reports/Report_rb.html +7 -2
  280. data/doc/files/lib/reports/ResourceListRE_rb.html +3 -2
  281. data/doc/files/lib/reports/TableReport_rb.html +3 -2
  282. data/doc/files/lib/reports/TaskListRE_rb.html +3 -2
  283. data/doc/files/lib/reports/TextReport_rb.html +4 -3
  284. data/doc/files/lib/reports/TimeSheetReport_rb.html +117 -0
  285. data/doc/files/lib/reports/TjpExportRE_rb.html +3 -2
  286. data/doc/files/lib/taskjuggler3_rb.html +94 -77
  287. data/doc/files/lib/tj3client_rb.html +280 -0
  288. data/doc/files/lib/tj3man_rb.html +10 -9
  289. data/doc/fr_class_index.html +27 -5
  290. data/doc/fr_file_index.html +15 -7
  291. data/doc/fr_method_index.html +1312 -1020
  292. data/examples/tutorial.tjp +113 -14
  293. data/gem_spec.rb +2 -1
  294. data/lib/Account.rb +1 -1
  295. data/lib/AccountScenario.rb +1 -1
  296. data/lib/Allocation.rb +1 -1
  297. data/lib/AppConfig.rb +23 -10
  298. data/lib/AttributeBase.rb +34 -6
  299. data/lib/AttributeDefinition.rb +1 -1
  300. data/lib/Attributes.rb +51 -16
  301. data/lib/BatchProcessor.rb +204 -77
  302. data/lib/Booking.rb +1 -1
  303. data/lib/Charge.rb +1 -1
  304. data/lib/ChargeSet.rb +1 -1
  305. data/lib/HTMLDocument.rb +2 -2
  306. data/lib/Interval.rb +1 -1
  307. data/lib/Journal.rb +231 -9
  308. data/lib/KeywordArray.rb +1 -1
  309. data/lib/KeywordDocumentation.rb +6 -4
  310. data/lib/Limits.rb +1 -1
  311. data/lib/Log.rb +8 -1
  312. data/lib/LogicalExpression.rb +14 -13
  313. data/lib/LogicalFunction.rb +88 -14
  314. data/lib/LogicalOperation.rb +124 -53
  315. data/lib/MacroParser.rb +1 -1
  316. data/lib/MacroTable.rb +2 -2
  317. data/lib/Message.rb +1 -1
  318. data/lib/MessageHandler.rb +7 -3
  319. data/lib/Project.rb +93 -14
  320. data/lib/ProjectFileParser.rb +30 -15
  321. data/lib/PropertyList.rb +103 -36
  322. data/lib/PropertySet.rb +22 -10
  323. data/lib/PropertyTreeNode.rb +120 -15
  324. data/lib/Query.rb +119 -48
  325. data/lib/{RTPNavigator.rb → RTFNavigator.rb} +11 -10
  326. data/lib/RTFQuery.rb +166 -0
  327. data/lib/{RTPReport.rb → RTFReport.rb} +11 -8
  328. data/lib/RealFormat.rb +1 -1
  329. data/lib/RemoteServiceManager.rb +80 -0
  330. data/lib/ReportServer.rb +66 -0
  331. data/lib/Resource.rb +1 -1
  332. data/lib/ResourceScenario.rb +48 -19
  333. data/lib/RichText.rb +98 -41
  334. data/lib/RichTextDocument.rb +10 -8
  335. data/lib/RichTextElement.rb +72 -28
  336. data/lib/{RichTextProtocolExample.rb → RichTextFunctionExample.rb} +8 -7
  337. data/lib/{RichTextProtocolHandler.rb → RichTextFunctionHandler.rb} +12 -14
  338. data/lib/RichTextParser.rb +6 -3
  339. data/lib/RichTextScanner.rb +91 -19
  340. data/lib/RichTextSnip.rb +8 -3
  341. data/lib/RichTextSyntaxRules.rb +103 -45
  342. data/lib/Scenario.rb +1 -1
  343. data/lib/ScenarioData.rb +2 -2
  344. data/lib/Scoreboard.rb +1 -1
  345. data/lib/Shift.rb +1 -1
  346. data/lib/ShiftAssignments.rb +1 -1
  347. data/lib/ShiftScenario.rb +1 -1
  348. data/lib/SourceFileInfo.rb +1 -1
  349. data/lib/SyntaxReference.rb +2 -2
  350. data/lib/TOCEntry.rb +1 -1
  351. data/lib/TableColumnDefinition.rb +59 -16
  352. data/lib/TableOfContents.rb +1 -1
  353. data/lib/Task.rb +1 -1
  354. data/lib/TaskDependency.rb +1 -1
  355. data/lib/TaskJuggler.rb +31 -8
  356. data/lib/TaskScenario.rb +165 -16
  357. data/lib/TextParser.rb +36 -22
  358. data/lib/TextParser/Pattern.rb +3 -3
  359. data/lib/TextParser/Rule.rb +2 -2
  360. data/lib/TextParser/StackElement.rb +4 -3
  361. data/lib/TextParser/TokenDoc.rb +2 -2
  362. data/lib/TextScanner.rb +52 -37
  363. data/lib/Tj3Config.rb +6 -5
  364. data/lib/TjException.rb +1 -1
  365. data/lib/TjTime.rb +12 -3
  366. data/lib/TjpExample.rb +1 -1
  367. data/lib/TjpSyntaxRules.rb +1044 -150
  368. data/lib/UTF8String.rb +2 -1
  369. data/lib/UserManual.rb +18 -70
  370. data/lib/WorkingHours.rb +3 -3
  371. data/lib/XMLDocument.rb +3 -2
  372. data/lib/XMLElement.rb +6 -1
  373. data/lib/deep_copy.rb +1 -1
  374. data/lib/reports/CSVFile.rb +1 -1
  375. data/lib/reports/ColumnTable.rb +9 -9
  376. data/lib/reports/GanttChart.rb +1 -1
  377. data/lib/reports/GanttContainer.rb +1 -1
  378. data/lib/reports/GanttHeader.rb +1 -1
  379. data/lib/reports/GanttHeaderScaleItem.rb +1 -1
  380. data/lib/reports/GanttLine.rb +40 -40
  381. data/lib/reports/GanttLoadStack.rb +1 -1
  382. data/lib/reports/GanttMilestone.rb +1 -1
  383. data/lib/reports/GanttRouter.rb +1 -1
  384. data/lib/reports/GanttTaskBar.rb +1 -1
  385. data/lib/reports/HTMLGraphics.rb +1 -1
  386. data/lib/reports/Navigator.rb +149 -22
  387. data/lib/reports/Report.rb +115 -172
  388. data/lib/reports/ReportBase.rb +22 -27
  389. data/lib/reports/ReportContext.rb +29 -15
  390. data/lib/reports/ReportTable.rb +1 -1
  391. data/lib/reports/ReportTableCell.rb +120 -27
  392. data/lib/reports/ReportTableColumn.rb +3 -3
  393. data/lib/reports/ReportTableLegend.rb +1 -1
  394. data/lib/reports/ReportTableLine.rb +10 -2
  395. data/lib/reports/ResourceListRE.rb +5 -1
  396. data/lib/reports/TableReport.rb +237 -287
  397. data/lib/reports/TaskListRE.rb +5 -1
  398. data/lib/reports/TextReport.rb +7 -4
  399. data/lib/reports/TimeSheetReport.rb +233 -0
  400. data/lib/reports/TjpExportRE.rb +2 -2
  401. data/lib/taskjuggler3.rb +27 -11
  402. data/lib/tj3client.rb +110 -0
  403. data/lib/tj3man.rb +4 -4
  404. data/manual/Getting_Started +0 -50
  405. data/manual/How_To_Contribute +6 -13
  406. data/manual/Installation +102 -28
  407. data/manual/Intro +11 -1
  408. data/manual/Reporting_Bugs +23 -7
  409. data/manual/Rich_Text_Attributes +59 -6
  410. data/manual/TaskJuggler_2x_Migration +27 -0
  411. data/manual/The_TaskJuggler_Syntax +104 -0
  412. data/manual/Tutorial +10 -9
  413. data/prj_cfg.rb +8 -2
  414. data/tasks/csts.rake +1 -1
  415. data/tasks/manual.rake +5 -3
  416. data/test/MessageChecker.rb +1 -1
  417. data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
  418. data/test/TestSuite/HTML-Reports/Alerts.tjp +77 -0
  419. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  420. data/test/TestSuite/HTML-Reports/CellText.tjp +75 -0
  421. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  422. data/test/TestSuite/HTML-Reports/ColumnPeriods.tjp +44 -0
  423. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  424. data/test/TestSuite/HTML-Reports/IsOngoing.tjp +34 -0
  425. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +80 -0
  426. data/test/TestSuite/HTML-Reports/LogicalFunctions.tjp +20 -0
  427. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  428. data/test/TestSuite/HTML-Reports/Query.tjp +28 -0
  429. data/test/TestSuite/HTML-Reports/Sorting.tjp +68 -0
  430. data/test/TestSuite/HTML-Reports/TimeSheet.tjp +69 -0
  431. data/test/TestSuite/HTML-Reports/UDAQuery.tjp +27 -0
  432. data/test/TestSuite/HTML-Reports/css/tjmanual.css +52 -0
  433. data/test/TestSuite/HTML-Reports/css/tjreport.css +195 -0
  434. data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
  435. data/test/TestSuite/HTML-Reports/icons/details.png +0 -0
  436. data/test/TestSuite/HTML-Reports/icons/flag-green.png +0 -0
  437. data/test/TestSuite/HTML-Reports/icons/flag-red.png +0 -0
  438. data/test/TestSuite/HTML-Reports/icons/flag-yellow.png +0 -0
  439. data/test/TestSuite/HTML-Reports/icons/resource.png +0 -0
  440. data/test/TestSuite/HTML-Reports/icons/resourcegroup.png +0 -0
  441. data/test/TestSuite/HTML-Reports/icons/task.png +0 -0
  442. data/test/TestSuite/HTML-Reports/icons/taskgroup.png +0 -0
  443. data/test/TestSuite/HTML-Reports/reference.tjp +7 -8
  444. data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
  445. data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +1301 -0
  446. data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +34 -0
  447. data/test/TestSuite/Syntax/Correct/Celltext.tjp +2 -1
  448. data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -2
  449. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +2 -1
  450. data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +20 -0
  451. data/test/TestSuite/Syntax/Correct/Query.tjp +18 -0
  452. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +45 -0
  453. data/test/TestSuite/Syntax/Correct/TimeSheet.tjp +49 -0
  454. data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
  455. data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
  456. data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
  457. data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
  458. data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
  459. data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
  460. data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
  461. data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
  462. data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
  463. data/test/TestSuite/Syntax/Correct/tutorial.tjp +113 -14
  464. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +28 -0
  465. data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +12 -0
  466. data/test/all.rb +2 -2
  467. data/test/test_BatchProcessor.rb +42 -13
  468. data/test/test_CSV-Reports.rb +1 -1
  469. data/test/test_Journal.rb +176 -0
  470. data/test/test_Limits.rb +1 -1
  471. data/test/test_LogicalExpression.rb +14 -5
  472. data/test/test_MacroTable.rb +1 -1
  473. data/test/test_Project.rb +1 -1
  474. data/test/test_PropertySet.rb +1 -1
  475. data/test/test_Query.rb +1 -1
  476. data/test/test_RealFormat.rb +1 -1
  477. data/test/test_RichText.rb +30 -20
  478. data/test/test_Scheduler.rb +1 -1
  479. data/test/test_ShiftAssignments.rb +2 -2
  480. data/test/test_Syntax.rb +1 -1
  481. data/test/test_TextScanner.rb +1 -1
  482. data/test/test_TjTime.rb +1 -1
  483. data/test/test_TjpExample.rb +1 -1
  484. data/test/test_UTF8String.rb +1 -1
  485. data/test/test_WorkingHours.rb +1 -1
  486. data/test/test_deep_copy.rb +2 -2
  487. metadata +610 -532
  488. data/doc/files/lib/ms_test_rb.html +0 -90
  489. data/examples/ContactList.html +0 -1467
  490. data/examples/Deliveries.html +0 -485
  491. data/examples/Development.html +0 -2525
  492. data/examples/Overview.html +0 -747
  493. data/examples/Resource Graph.html +0 -616
  494. data/lib/ms_test.rb +0 -27
  495. data/test/TestSuite/HTML-Reports/reference-export.html +0 -187
@@ -0,0 +1,335 @@
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::RemoteServiceManager [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::RemoteServiceManager</td>
50
+ </tr>
51
+ <tr class="top-aligned-row">
52
+ <td><strong>In:</strong></td>
53
+ <td>
54
+
55
+
56
+ <a href="../../files/lib/RemoteServiceManager_rb.html">
57
+
58
+ lib/RemoteServiceManager.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="RemoteServiceManager.html">RemoteServiceManager</a> only waits
93
+ for service requests from DRb clients. When this function is called, the
94
+ process forks so all changes happen on a copy of the data. The original <a
95
+ href="Project.html">Project</a> remains unchanged. The child process starts
96
+ another DRb server that than handles the further requests.
97
+ </p>
98
+
99
+ </div>
100
+
101
+ </div>
102
+
103
+
104
+ <div id="method-list">
105
+ <h3 class="section-bar">Methods</h3>
106
+
107
+ <div class="name-list">
108
+
109
+ <a href="#M000734">new</a>&nbsp;&nbsp;
110
+
111
+ <a href="#M000735">requestService</a>&nbsp;&nbsp;
112
+
113
+ <a href="#M000736">terminateService</a>&nbsp;&nbsp;
114
+
115
+ <a href="#M000737">waitForChild</a>&nbsp;&nbsp;
116
+
117
+ </div>
118
+ </div>
119
+
120
+ </div>
121
+
122
+ <!-- if includes -->
123
+
124
+ <div id="section">
125
+
126
+
127
+
128
+ <div id="attribute-list">
129
+ <h3 class="section-bar">Attributes</h3>
130
+
131
+ <div class="name-list">
132
+ <table>
133
+
134
+ <tr class="top-aligned-row context-row">
135
+ <td class="context-item-name">terminate</td>
136
+
137
+ <td class="context-item-value">&nbsp;[W]&nbsp;</td>
138
+
139
+ <td class="context-item-desc"></td>
140
+ </tr>
141
+
142
+ </table>
143
+ </div>
144
+ </div>
145
+
146
+
147
+ <!-- if method_list -->
148
+
149
+ <div id="methods">
150
+
151
+ <h3 class="section-bar">Public Class methods</h3>
152
+
153
+
154
+ <div id="method-M000734" class="method-detail">
155
+ <a name="M000734"></a>
156
+
157
+ <div class="method-heading">
158
+
159
+ <a href="#M000734" class="method-signature">
160
+
161
+ <span class="method-name">new</span><span class="method-args">(parser, project)</span>
162
+
163
+ </a>
164
+
165
+ </div>
166
+
167
+ <div class="method-description">
168
+
169
+ <p><a class="source-toggle" href="#"
170
+ onclick="toggleCode('M000734-source');return false;">[Source]</a></p>
171
+ <div class="method-source-code" id="M000734-source">
172
+ <pre>
173
+ <span class="ruby-comment cmt"># File lib/RemoteServiceManager.rb, line 26</span>
174
+ 26: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">parser</span>, <span class="ruby-identifier">project</span>)
175
+ 27: <span class="ruby-ivar">@parser</span> = <span class="ruby-identifier">parser</span>
176
+ 28: <span class="ruby-ivar">@project</span> = <span class="ruby-identifier">project</span>
177
+ 29: <span class="ruby-ivar">@terminate</span> = <span class="ruby-keyword kw">false</span>
178
+ 30: <span class="ruby-ivar">@childPIDs</span> = []
179
+ 31: <span class="ruby-keyword kw">end</span>
180
+ </pre>
181
+ </div>
182
+
183
+ </div>
184
+ </div>
185
+
186
+
187
+ <h3 class="section-bar">Public Instance methods</h3>
188
+
189
+
190
+ <div id="method-M000735" class="method-detail">
191
+ <a name="M000735"></a>
192
+
193
+ <div class="method-heading">
194
+
195
+ <a href="#M000735" class="method-signature">
196
+
197
+ <span class="method-name">requestService</span><span class="method-args">()</span>
198
+
199
+ </a>
200
+
201
+ </div>
202
+
203
+ <div class="method-description">
204
+
205
+ <p>
206
+ This function should be called by the DRb client.
207
+ </p>
208
+
209
+ <p><a class="source-toggle" href="#"
210
+ onclick="toggleCode('M000735-source');return false;">[Source]</a></p>
211
+ <div class="method-source-code" id="M000735-source">
212
+ <pre>
213
+ <span class="ruby-comment cmt"># File lib/RemoteServiceManager.rb, line 34</span>
214
+ 34: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">requestService</span>
215
+ 35: <span class="ruby-identifier">rd</span>, <span class="ruby-identifier">wr</span> = <span class="ruby-constant">IO</span>.<span class="ruby-identifier">pipe</span>
216
+ 36: <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">pid</span> = <span class="ruby-identifier">fork</span>)
217
+ 37: <span class="ruby-comment cmt"># We are in the parent</span>
218
+ 38: <span class="ruby-ivar">@childPIDs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">pid</span>
219
+ 39: <span class="ruby-identifier">wr</span>.<span class="ruby-identifier">close</span>
220
+ 40: <span class="ruby-comment cmt"># Return the URI of the child's DRb ReportServer</span>
221
+ 41: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">new</span> { <span class="ruby-identifier">waitForChild</span> }
222
+ 42: <span class="ruby-comment cmt"># TODO: Need to add some security and make it more robust.</span>
223
+ 43: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">rd</span>.<span class="ruby-identifier">read</span>
224
+ 44: <span class="ruby-keyword kw">else</span>
225
+ 45: <span class="ruby-comment cmt"># We are in the child</span>
226
+ 46: <span class="ruby-identifier">rd</span>.<span class="ruby-identifier">close</span>
227
+ 47: <span class="ruby-constant">DRb</span>.<span class="ruby-identifier">stop_service</span>
228
+ 48: <span class="ruby-identifier">server</span> = <span class="ruby-constant">ReportServer</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-ivar">@parser</span>, <span class="ruby-ivar">@project</span>)
229
+ 49: <span class="ruby-identifier">uri</span> = <span class="ruby-constant">DRb</span>.<span class="ruby-identifier">start_service</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">server</span>).<span class="ruby-identifier">uri</span>
230
+ 50: <span class="ruby-comment cmt"># Send URI of new server to parent</span>
231
+ 51: <span class="ruby-identifier">wr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">uri</span>
232
+ 52: <span class="ruby-identifier">wr</span>.<span class="ruby-identifier">close</span>
233
+ 53:
234
+ 54: <span class="ruby-comment cmt"># Now we have to wait for the @terminate flag to be set to true by a DRb</span>
235
+ 55: <span class="ruby-comment cmt"># thread.</span>
236
+ 56: <span class="ruby-keyword kw">until</span> <span class="ruby-ivar">@terminate</span> <span class="ruby-keyword kw">do</span>
237
+ 57: <span class="ruby-identifier">sleep</span>(<span class="ruby-value">0</span><span class="ruby-value">.5</span>)
238
+ 58: <span class="ruby-keyword kw">end</span>
239
+ 59: <span class="ruby-comment cmt"># Stop DRb service and wait for threads to finish</span>
240
+ 60: <span class="ruby-constant">DRb</span>.<span class="ruby-identifier">stop_service</span>
241
+ 61: <span class="ruby-constant">DRb</span>.<span class="ruby-identifier">thread</span>.<span class="ruby-identifier">join</span>
242
+ 62: <span class="ruby-keyword kw">end</span>
243
+ 63: <span class="ruby-keyword kw">end</span>
244
+ </pre>
245
+ </div>
246
+
247
+ </div>
248
+ </div>
249
+
250
+
251
+ <div id="method-M000736" class="method-detail">
252
+ <a name="M000736"></a>
253
+
254
+ <div class="method-heading">
255
+
256
+ <a href="#M000736" class="method-signature">
257
+
258
+ <span class="method-name">terminateService</span><span class="method-args">()</span>
259
+
260
+ </a>
261
+
262
+ </div>
263
+
264
+ <div class="method-description">
265
+
266
+ <p>
267
+ This function needs to be called by the DRb thread to terminate the child
268
+ process.
269
+ </p>
270
+
271
+ <p><a class="source-toggle" href="#"
272
+ onclick="toggleCode('M000736-source');return false;">[Source]</a></p>
273
+ <div class="method-source-code" id="M000736-source">
274
+ <pre>
275
+ <span class="ruby-comment cmt"># File lib/RemoteServiceManager.rb, line 67</span>
276
+ 67: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">terminateService</span>
277
+ 68: <span class="ruby-ivar">@terminate</span> = <span class="ruby-keyword kw">true</span>
278
+ 69: <span class="ruby-keyword kw">end</span>
279
+ </pre>
280
+ </div>
281
+
282
+ </div>
283
+ </div>
284
+
285
+
286
+ <div id="method-M000737" class="method-detail">
287
+ <a name="M000737"></a>
288
+
289
+ <div class="method-heading">
290
+
291
+ <a href="#M000737" class="method-signature">
292
+
293
+ <span class="method-name">waitForChild</span><span class="method-args">()</span>
294
+
295
+ </a>
296
+
297
+ </div>
298
+
299
+ <div class="method-description">
300
+
301
+ <p>
302
+ Run forever in the parent and pick-up the terminated childs.
303
+ </p>
304
+
305
+ <p><a class="source-toggle" href="#"
306
+ onclick="toggleCode('M000737-source');return false;">[Source]</a></p>
307
+ <div class="method-source-code" id="M000737-source">
308
+ <pre>
309
+ <span class="ruby-comment cmt"># File lib/RemoteServiceManager.rb, line 72</span>
310
+ 72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">waitForChild</span>
311
+ 73: <span class="ruby-keyword kw">while</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">do</span>
312
+ 74: <span class="ruby-constant">Process</span>.<span class="ruby-identifier">wait2</span>
313
+ 75: <span class="ruby-keyword kw">end</span>
314
+ 76: <span class="ruby-keyword kw">end</span>
315
+ </pre>
316
+ </div>
317
+
318
+ </div>
319
+ </div>
320
+
321
+
322
+
323
+ </div>
324
+
325
+
326
+
327
+
328
+ </div>
329
+
330
+ <div id="validator-badges">
331
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
332
+ </div>
333
+
334
+ </body>
335
+ </html>
@@ -104,11 +104,11 @@ readable form. A report may contain other reports.
104
104
 
105
105
  <div class="name-list">
106
106
 
107
- <a href="#M000614">generate</a>&nbsp;&nbsp;
107
+ <a href="#M000444">generate</a>&nbsp;&nbsp;
108
108
 
109
- <a href="#M000613">new</a>&nbsp;&nbsp;
109
+ <a href="#M000443">new</a>&nbsp;&nbsp;
110
110
 
111
- <a href="#M000615">to_html</a>&nbsp;&nbsp;
111
+ <a href="#M000445">to_html</a>&nbsp;&nbsp;
112
112
 
113
113
  </div>
114
114
  </div>
@@ -155,12 +155,12 @@ readable form. A report may contain other reports.
155
155
  <h3 class="section-bar">Public Class methods</h3>
156
156
 
157
157
 
158
- <div id="method-M000613" class="method-detail">
159
- <a name="M000613"></a>
158
+ <div id="method-M000443" class="method-detail">
159
+ <a name="M000443"></a>
160
160
 
161
161
  <div class="method-heading">
162
162
 
163
- <a href="#M000613" class="method-signature">
163
+ <a href="#M000443" class="method-signature">
164
164
 
165
165
  <span class="method-name">new</span><span class="method-args">(project, id, name, parent)</span>
166
166
 
@@ -175,18 +175,18 @@ Create a new report object.
175
175
  </p>
176
176
 
177
177
  <p><a class="source-toggle" href="#"
178
- onclick="toggleCode('M000613-source');return false;">[Source]</a></p>
179
- <div class="method-source-code" id="M000613-source">
178
+ onclick="toggleCode('M000443-source');return false;">[Source]</a></p>
179
+ <div class="method-source-code" id="M000443-source">
180
180
  <pre>
181
- <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 33</span>
182
- 33: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">project</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
183
- 34: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">reports</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
184
- 35: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">addReport</span>(<span class="ruby-keyword kw">self</span>)
185
- 36:
186
- 37: <span class="ruby-comment cmt"># The type specifier must be set for every report. It tells whether this</span>
187
- 38: <span class="ruby-comment cmt"># is a task, resource, text or other report.</span>
188
- 39: <span class="ruby-ivar">@typeSpec</span> = <span class="ruby-keyword kw">nil</span>
189
- 40: <span class="ruby-keyword kw">end</span>
181
+ <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 35</span>
182
+ 35: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">project</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
183
+ 36: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">reports</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
184
+ 37: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">addReport</span>(<span class="ruby-keyword kw">self</span>)
185
+ 38:
186
+ 39: <span class="ruby-comment cmt"># The type specifier must be set for every report. It tells whether this</span>
187
+ 40: <span class="ruby-comment cmt"># is a task, resource, text or other report.</span>
188
+ 41: <span class="ruby-ivar">@typeSpec</span> = <span class="ruby-keyword kw">nil</span>
189
+ 42: <span class="ruby-keyword kw">end</span>
190
190
  </pre>
191
191
  </div>
192
192
 
@@ -197,12 +197,12 @@ Create a new report object.
197
197
  <h3 class="section-bar">Public Instance methods</h3>
198
198
 
199
199
 
200
- <div id="method-M000614" class="method-detail">
201
- <a name="M000614"></a>
200
+ <div id="method-M000444" class="method-detail">
201
+ <a name="M000444"></a>
202
202
 
203
203
  <div class="method-heading">
204
204
 
205
- <a href="#M000614" class="method-signature">
205
+ <a href="#M000444" class="method-signature">
206
206
 
207
207
  <span class="method-name">generate</span><span class="method-args">()</span>
208
208
 
@@ -219,49 +219,51 @@ according the the requested output format(s).
219
219
  </p>
220
220
 
221
221
  <p><a class="source-toggle" href="#"
222
- onclick="toggleCode('M000614-source');return false;">[Source]</a></p>
223
- <div class="method-source-code" id="M000614-source">
222
+ onclick="toggleCode('M000444-source');return false;">[Source]</a></p>
223
+ <div class="method-source-code" id="M000444-source">
224
224
  <pre>
225
- <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 45</span>
226
- 45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generate</span>
227
- 46: <span class="ruby-keyword kw">begin</span>
228
- 47: <span class="ruby-ivar">@content</span> = <span class="ruby-keyword kw">nil</span>
229
- 48: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@typeSpec</span>
230
- 49: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:export</span>
231
- 50: <span class="ruby-comment cmt"># Does not have an intermediate representation. Nothing to do here.</span>
225
+ <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 47</span>
226
+ 47: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generate</span>
227
+ 48: <span class="ruby-keyword kw">begin</span>
228
+ 49: <span class="ruby-ivar">@content</span> = <span class="ruby-keyword kw">nil</span>
229
+ 50: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@typeSpec</span>
232
230
  51: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:resourcereport</span>
233
231
  52: <span class="ruby-ivar">@content</span> = <span class="ruby-constant">ResourceListRE</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
234
232
  53: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:textreport</span>
235
233
  54: <span class="ruby-ivar">@content</span> = <span class="ruby-constant">TextReport</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
236
234
  55: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:taskreport</span>
237
235
  56: <span class="ruby-ivar">@content</span> = <span class="ruby-constant">TaskListRE</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
238
- 57: <span class="ruby-keyword kw">else</span>
239
- 58: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Unknown report type&quot;</span>
240
- 59: <span class="ruby-keyword kw">end</span>
241
- 60:
242
- 61: <span class="ruby-comment cmt"># Most output format can be generated from a common intermediate</span>
243
- 62: <span class="ruby-comment cmt"># representation of the elements. We generate that IR first.</span>
244
- 63: <span class="ruby-ivar">@content</span>.<span class="ruby-identifier">generateIntermediateFormat</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@content</span>
236
+ 57: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:export</span>
237
+ 58: <span class="ruby-ivar">@content</span> = <span class="ruby-constant">TjpExportRE</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
238
+ 59: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:timeSheet</span>
239
+ 60: <span class="ruby-ivar">@content</span> = <span class="ruby-constant">TimeSheetReport</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
240
+ 61: <span class="ruby-keyword kw">else</span>
241
+ 62: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Unknown report type&quot;</span>
242
+ 63: <span class="ruby-keyword kw">end</span>
245
243
  64:
246
- 65: <span class="ruby-comment cmt"># Then generate the actual output format.</span>
247
- 66: <span class="ruby-identifier">get</span>(<span class="ruby-value str">'formats'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
248
- 67: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">format</span>
249
- 68: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:html</span>
250
- 69: <span class="ruby-identifier">generateHTML</span>
251
- 70: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:csv</span>
252
- 71: <span class="ruby-identifier">generateCSV</span>
253
- 72: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:export</span>
254
- 73: <span class="ruby-identifier">generateExport</span>
255
- 74: <span class="ruby-keyword kw">else</span>
256
- 75: <span class="ruby-identifier">raise</span> <span class="ruby-value str">'Unknown report output format.'</span>
257
- 76: <span class="ruby-keyword kw">end</span>
258
- 77: <span class="ruby-keyword kw">end</span>
259
- 78: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">TjException</span>
260
- 79: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">send</span>(<span class="ruby-constant">Message</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'reporting_failed'</span>, <span class="ruby-value str">'error'</span>,
261
- 80: <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">message</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span>,
262
- 81: <span class="ruby-ivar">@sourceFileInfo</span>))
263
- 82: <span class="ruby-keyword kw">end</span>
264
- 83: <span class="ruby-keyword kw">end</span>
244
+ 65: <span class="ruby-comment cmt"># Most output format can be generated from a common intermediate</span>
245
+ 66: <span class="ruby-comment cmt"># representation of the elements. We generate that IR first.</span>
246
+ 67: <span class="ruby-ivar">@content</span>.<span class="ruby-identifier">generateIntermediateFormat</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@content</span>
247
+ 68:
248
+ 69: <span class="ruby-comment cmt"># Then generate the actual output format.</span>
249
+ 70: <span class="ruby-identifier">get</span>(<span class="ruby-value str">'formats'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">format</span><span class="ruby-operator">|</span>
250
+ 71: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">format</span>
251
+ 72: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:html</span>
252
+ 73: <span class="ruby-identifier">generateHTML</span>
253
+ 74: <span class="ruby-identifier">copyAuxiliaryFiles</span>
254
+ 75: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:csv</span>
255
+ 76: <span class="ruby-identifier">generateCSV</span>
256
+ 77: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:tjp</span>
257
+ 78: <span class="ruby-identifier">generateTJP</span>
258
+ 79: <span class="ruby-keyword kw">else</span>
259
+ 80: <span class="ruby-identifier">raise</span> <span class="ruby-value str">'Unknown report output format.'</span>
260
+ 81: <span class="ruby-keyword kw">end</span>
261
+ 82: <span class="ruby-keyword kw">end</span>
262
+ 83: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">TjException</span>
263
+ 84: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'reporting_failed'</span>, <span class="ruby-identifier">$!</span>.<span class="ruby-identifier">message</span>)
264
+ 85: <span class="ruby-keyword kw">end</span>
265
+ 86: <span class="ruby-value">0</span>
266
+ 87: <span class="ruby-keyword kw">end</span>
265
267
  </pre>
266
268
  </div>
267
269
 
@@ -269,12 +271,12 @@ according the the requested output format(s).
269
271
  </div>
270
272
 
271
273
 
272
- <div id="method-M000615" class="method-detail">
273
- <a name="M000615"></a>
274
+ <div id="method-M000445" class="method-detail">
275
+ <a name="M000445"></a>
274
276
 
275
277
  <div class="method-heading">
276
278
 
277
- <a href="#M000615" class="method-signature">
279
+ <a href="#M000445" class="method-signature">
278
280
 
279
281
  <span class="method-name">to_html</span><span class="method-args">()</span>
280
282
 
@@ -289,13 +291,13 @@ Render the content of the report as HTML (without the framing).
289
291
  </p>
290
292
 
291
293
  <p><a class="source-toggle" href="#"
292
- onclick="toggleCode('M000615-source');return false;">[Source]</a></p>
293
- <div class="method-source-code" id="M000615-source">
294
+ onclick="toggleCode('M000445-source');return false;">[Source]</a></p>
295
+ <div class="method-source-code" id="M000445-source">
294
296
  <pre>
295
- <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 86</span>
296
- 86: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
297
- 87: <span class="ruby-ivar">@content</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@content</span>.<span class="ruby-identifier">to_html</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
298
- 88: <span class="ruby-keyword kw">end</span>
297
+ <span class="ruby-comment cmt"># File lib/reports/Report.rb, line 90</span>
298
+ 90: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
299
+ 91: <span class="ruby-ivar">@content</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@content</span>.<span class="ruby-identifier">to_html</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
300
+ 92: <span class="ruby-keyword kw">end</span>
299
301
  </pre>
300
302
  </div>
301
303