taskjuggler 0.0.8 → 0.0.9

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 (613) hide show
  1. data/CHANGELOG +1144 -2047
  2. data/README +1 -1
  3. data/Rakefile +6 -6
  4. data/data/css/tjmanual.css +20 -0
  5. data/data/css/tjreport.css +7 -6
  6. data/doc/AppConfig.html +136 -130
  7. data/doc/Arguments.html +46 -40
  8. data/doc/CHANGELOG.html +1162 -2057
  9. data/doc/COPYING.html +8 -2
  10. data/doc/Object.html +205 -199
  11. data/doc/README.html +9 -3
  12. data/doc/RuntimeConfig.html +75 -69
  13. data/doc/String.html +69 -63
  14. data/doc/TaskJuggler.html +350 -291
  15. data/doc/TaskJuggler/Account.html +26 -20
  16. data/doc/TaskJuggler/AccountAttribute.html +24 -18
  17. data/doc/TaskJuggler/AccountScenario.html +24 -18
  18. data/doc/TaskJuggler/Allocation.html +74 -68
  19. data/doc/TaskJuggler/AllocationAttribute.html +54 -48
  20. data/doc/TaskJuggler/AttributeBase.html +172 -93
  21. data/doc/TaskJuggler/AttributeDefinition.html +22 -16
  22. data/doc/TaskJuggler/AttributeOverwrite.html +586 -0
  23. data/doc/TaskJuggler/BatchProcessor.html +263 -257
  24. data/doc/TaskJuggler/Booking.html +44 -38
  25. data/doc/TaskJuggler/BookingListAttribute.html +25 -21
  26. data/doc/TaskJuggler/BooleanAttribute.html +24 -18
  27. data/doc/TaskJuggler/CSVFile.html +193 -187
  28. data/doc/TaskJuggler/CellSettingPattern.html +13 -7
  29. data/doc/TaskJuggler/CellSettingPatternList.html +25 -19
  30. data/doc/TaskJuggler/Charge.html +49 -43
  31. data/doc/TaskJuggler/ChargeListAttribute.html +21 -15
  32. data/doc/TaskJuggler/ChargeSet.html +94 -88
  33. data/doc/TaskJuggler/ChargeSetListAttribute.html +29 -25
  34. data/doc/TaskJuggler/CollisionDetector.html +142 -136
  35. data/doc/TaskJuggler/ColumnListAttribute.html +21 -17
  36. data/doc/TaskJuggler/ColumnTable.html +50 -44
  37. data/doc/TaskJuggler/Daemon.html +71 -50
  38. data/doc/TaskJuggler/DataCache.html +110 -58
  39. data/doc/TaskJuggler/DataCacheEntry.html +22 -16
  40. data/doc/TaskJuggler/DateAttribute.html +24 -18
  41. data/doc/TaskJuggler/DefinitionListAttribute.html +12 -6
  42. data/doc/TaskJuggler/DependencyListAttribute.html +29 -25
  43. data/doc/TaskJuggler/DurationAttribute.html +25 -19
  44. data/doc/TaskJuggler/FileList.html +25 -19
  45. data/doc/TaskJuggler/FileRecord.html +17 -11
  46. data/doc/TaskJuggler/FixnumAttribute.html +16 -10
  47. data/doc/TaskJuggler/FlagListAttribute.html +25 -21
  48. data/doc/TaskJuggler/FloatAttribute.html +20 -14
  49. data/doc/TaskJuggler/FormatListAttribute.html +17 -11
  50. data/doc/TaskJuggler/GanttChart.html +242 -236
  51. data/doc/TaskJuggler/GanttContainer.html +71 -67
  52. data/doc/TaskJuggler/GanttHeader.html +113 -107
  53. data/doc/TaskJuggler/GanttHeaderScaleItem.html +26 -20
  54. data/doc/TaskJuggler/GanttLine.html +217 -210
  55. data/doc/TaskJuggler/GanttLoadStack.html +89 -83
  56. data/doc/TaskJuggler/GanttMilestone.html +11 -6
  57. data/doc/TaskJuggler/GanttRouter.html +194 -186
  58. data/doc/TaskJuggler/GanttTaskBar.html +41 -34
  59. data/doc/TaskJuggler/HTMLDocument.html +52 -46
  60. data/doc/TaskJuggler/HTMLGraphics.html +58 -52
  61. data/doc/TaskJuggler/Interval.html +90 -84
  62. data/doc/TaskJuggler/IntervalList.html +777 -0
  63. data/doc/TaskJuggler/IntervalListAttribute.html +29 -25
  64. data/doc/TaskJuggler/JobInfo.html +36 -30
  65. data/doc/TaskJuggler/Journal.html +188 -177
  66. data/doc/TaskJuggler/JournalEntry.html +36 -30
  67. data/doc/TaskJuggler/JournalEntryList.html +88 -82
  68. data/doc/TaskJuggler/KeywordArray.html +12 -6
  69. data/doc/TaskJuggler/KeywordDocumentation.html +512 -503
  70. data/doc/TaskJuggler/Limits.html +111 -105
  71. data/doc/TaskJuggler/Limits/Limit.html +71 -65
  72. data/doc/TaskJuggler/LimitsAttribute.html +21 -15
  73. data/doc/TaskJuggler/ListAttributeBase.html +16 -10
  74. data/doc/TaskJuggler/Log.html +111 -105
  75. data/doc/TaskJuggler/LogFile.html +54 -48
  76. data/doc/TaskJuggler/LogicalAttribute.html +35 -29
  77. data/doc/TaskJuggler/LogicalExpression.html +32 -26
  78. data/doc/TaskJuggler/LogicalExpressionAttribute.html +16 -10
  79. data/doc/TaskJuggler/LogicalExpressionListAttribute.html +671 -0
  80. data/doc/TaskJuggler/LogicalFlag.html +24 -18
  81. data/doc/TaskJuggler/LogicalFunction.html +164 -158
  82. data/doc/TaskJuggler/LogicalOperation.html +138 -132
  83. data/doc/TaskJuggler/Macro.html +14 -8
  84. data/doc/TaskJuggler/MacroTable.html +42 -36
  85. data/doc/TaskJuggler/ManagerResponsibilities.html +19 -13
  86. data/doc/TaskJuggler/ManagerStatusRecord.html +23 -17
  87. data/doc/TaskJuggler/Message.html +56 -50
  88. data/doc/TaskJuggler/MessageHandler.html +73 -67
  89. data/doc/TaskJuggler/Navigator.html +92 -86
  90. data/doc/TaskJuggler/NavigatorElement.html +88 -82
  91. data/doc/TaskJuggler/NikuProject.html +15 -9
  92. data/doc/TaskJuggler/NikuReport.html +405 -370
  93. data/doc/TaskJuggler/NikuResource.html +13 -7
  94. data/doc/TaskJuggler/NodeListAttribute.html +13 -9
  95. data/doc/TaskJuggler/PlaceHolderCell.html +22 -16
  96. data/doc/TaskJuggler/ProcessIntercom.html +116 -110
  97. data/doc/TaskJuggler/ProcessIntercomIface.html +39 -33
  98. data/doc/TaskJuggler/Project.html +1064 -895
  99. data/doc/TaskJuggler/ProjectBroker.html +439 -366
  100. data/doc/TaskJuggler/ProjectBrokerIface.html +63 -53
  101. data/doc/TaskJuggler/ProjectFileParser.html +329 -319
  102. data/doc/TaskJuggler/ProjectFileScanner.html +351 -345
  103. data/doc/TaskJuggler/ProjectRecord.html +66 -60
  104. data/doc/TaskJuggler/ProjectServer.html +287 -280
  105. data/doc/TaskJuggler/ProjectServerIface.html +43 -37
  106. data/doc/TaskJuggler/PropertyAttribute.html +16 -10
  107. data/doc/TaskJuggler/PropertyList.html +205 -199
  108. data/doc/TaskJuggler/PropertySet.html +264 -296
  109. data/doc/TaskJuggler/PropertyTreeNode.html +455 -505
  110. data/doc/TaskJuggler/Query.html +309 -524
  111. data/doc/TaskJuggler/RTFHandlers.html +17 -11
  112. data/doc/TaskJuggler/RTFNavigator.html +33 -27
  113. data/doc/TaskJuggler/RTFQuery.html +135 -129
  114. data/doc/TaskJuggler/RTFReport.html +63 -57
  115. data/doc/TaskJuggler/RTFReportLink.html +55 -49
  116. data/doc/TaskJuggler/RTFWithQuerySupport.html +17 -11
  117. data/doc/TaskJuggler/RealFormat.html +64 -58
  118. data/doc/TaskJuggler/RealFormatAttribute.html +12 -6
  119. data/doc/TaskJuggler/ReferenceAttribute.html +35 -29
  120. data/doc/TaskJuggler/Report.html +294 -249
  121. data/doc/TaskJuggler/ReportBase.html +229 -223
  122. data/doc/TaskJuggler/ReportContext.html +52 -46
  123. data/doc/TaskJuggler/ReportServer.html +143 -137
  124. data/doc/TaskJuggler/ReportServerIface.html +51 -43
  125. data/doc/TaskJuggler/ReportServerRecord.html +36 -30
  126. data/doc/TaskJuggler/ReportServlet.html +167 -140
  127. data/doc/TaskJuggler/ReportTable.html +137 -131
  128. data/doc/TaskJuggler/ReportTableCell.html +332 -292
  129. data/doc/TaskJuggler/ReportTableColumn.html +46 -40
  130. data/doc/TaskJuggler/ReportTableLegend.html +43 -38
  131. data/doc/TaskJuggler/ReportTableLine.html +66 -60
  132. data/doc/TaskJuggler/Resource.html +166 -160
  133. data/doc/TaskJuggler/ResourceListAttribute.html +54 -32
  134. data/doc/TaskJuggler/ResourceListRE.html +47 -41
  135. data/doc/TaskJuggler/ResourceScenario.html +671 -644
  136. data/doc/TaskJuggler/RichText.html +51 -45
  137. data/doc/TaskJuggler/RichTextAttribute.html +28 -22
  138. data/doc/TaskJuggler/RichTextDocument.html +96 -90
  139. data/doc/TaskJuggler/RichTextElement.html +503 -497
  140. data/doc/TaskJuggler/RichTextFunctionExample.html +41 -35
  141. data/doc/TaskJuggler/RichTextFunctionHandler.html +19 -13
  142. data/doc/TaskJuggler/RichTextImage.html +14 -8
  143. data/doc/TaskJuggler/RichTextIntermediate.html +86 -80
  144. data/doc/TaskJuggler/RichTextParser.html +59 -53
  145. data/doc/TaskJuggler/RichTextScanner.html +184 -178
  146. data/doc/TaskJuggler/RichTextSnip.html +69 -63
  147. data/doc/TaskJuggler/RichTextSyntaxRules.html +416 -410
  148. data/doc/TaskJuggler/Scenario.html +13 -7
  149. data/doc/TaskJuggler/ScenarioData.html +40 -34
  150. data/doc/TaskJuggler/ScenarioListAttribute.html +21 -15
  151. data/doc/TaskJuggler/Scoreboard.html +129 -107
  152. data/doc/TaskJuggler/SheetHandlerBase.html +245 -239
  153. data/doc/TaskJuggler/SheetReceiver.html +333 -327
  154. data/doc/TaskJuggler/SheetSender.html +227 -221
  155. data/doc/TaskJuggler/Shift.html +26 -20
  156. data/doc/TaskJuggler/ShiftAssignment.html +45 -39
  157. data/doc/TaskJuggler/ShiftAssignments.html +178 -172
  158. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +21 -15
  159. data/doc/TaskJuggler/ShiftScenario.html +29 -23
  160. data/doc/TaskJuggler/SimpleQueryExpander.html +36 -30
  161. data/doc/TaskJuggler/SortListAttribute.html +17 -13
  162. data/doc/TaskJuggler/SourceFileInfo.html +19 -13
  163. data/doc/TaskJuggler/StatusSheetReceiver.html +31 -25
  164. data/doc/TaskJuggler/StatusSheetReport.html +166 -159
  165. data/doc/TaskJuggler/StatusSheetSender.html +80 -74
  166. data/doc/TaskJuggler/StringAttribute.html +20 -14
  167. data/doc/TaskJuggler/SymbolAttribute.html +16 -10
  168. data/doc/TaskJuggler/SyntaxReference.html +231 -225
  169. data/doc/TaskJuggler/TOCEntry.html +46 -40
  170. data/doc/TaskJuggler/TSResourceRecord.html +15 -9
  171. data/doc/TaskJuggler/TSTaskRecord.html +16 -10
  172. data/doc/TaskJuggler/TableColumnDefinition.html +84 -39
  173. data/doc/TaskJuggler/TableOfContents.html +28 -22
  174. data/doc/TaskJuggler/TableReport.html +906 -866
  175. data/doc/TaskJuggler/Task.html +99 -93
  176. data/doc/TaskJuggler/TaskDependency.html +24 -18
  177. data/doc/TaskJuggler/TaskListAttribute.html +29 -25
  178. data/doc/TaskJuggler/TaskListRE.html +46 -39
  179. data/doc/TaskJuggler/TaskScenario.html +2218 -1965
  180. data/doc/TaskJuggler/TextFormatter.html +154 -148
  181. data/doc/TaskJuggler/TextParser.html +362 -348
  182. data/doc/TaskJuggler/TextParser/Pattern.html +313 -307
  183. data/doc/TaskJuggler/TextParser/Rule.html +147 -141
  184. data/doc/TaskJuggler/TextParser/StackElement.html +58 -52
  185. data/doc/TaskJuggler/TextParser/State.html +88 -82
  186. data/doc/TaskJuggler/TextParser/StateTransition.html +42 -36
  187. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +20 -14
  188. data/doc/TaskJuggler/TextParser/TokenDoc.html +19 -13
  189. data/doc/TaskJuggler/TextReport.html +80 -74
  190. data/doc/TaskJuggler/TextScanner.html +284 -272
  191. data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +14 -8
  192. data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +21 -15
  193. data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +15 -9
  194. data/doc/TaskJuggler/TextScanner/StreamHandle.html +102 -96
  195. data/doc/TaskJuggler/TimeSheet.html +123 -117
  196. data/doc/TaskJuggler/TimeSheetReceiver.html +28 -22
  197. data/doc/TaskJuggler/TimeSheetRecord.html +212 -206
  198. data/doc/TaskJuggler/TimeSheetReport.html +206 -199
  199. data/doc/TaskJuggler/TimeSheetSender.html +27 -21
  200. data/doc/TaskJuggler/TimeSheetSummary.html +140 -134
  201. data/doc/TaskJuggler/TimeSheets.html +20 -14
  202. data/doc/TaskJuggler/Tj3AppBase.html +100 -94
  203. data/doc/TaskJuggler/Tj3Client.html +407 -483
  204. data/doc/TaskJuggler/Tj3Daemon.html +116 -107
  205. data/doc/TaskJuggler/Tj3SheetAppBase.html +45 -39
  206. data/doc/TaskJuggler/Tj3SsReceiver.html +31 -25
  207. data/doc/TaskJuggler/Tj3SsSender.html +64 -58
  208. data/doc/TaskJuggler/Tj3TsReceiver.html +31 -25
  209. data/doc/TaskJuggler/Tj3TsSender.html +51 -45
  210. data/doc/TaskJuggler/Tj3TsSummary.html +59 -53
  211. data/doc/TaskJuggler/TjException.html +13 -7
  212. data/doc/TaskJuggler/TjTime.html +444 -438
  213. data/doc/TaskJuggler/TjpExample.html +84 -78
  214. data/doc/TaskJuggler/TjpExportRE.html +356 -349
  215. data/doc/TaskJuggler/TjpSyntaxRules.html +4279 -4151
  216. data/doc/TaskJuggler/URLParameter.html +16 -10
  217. data/doc/TaskJuggler/UserManual.html +185 -179
  218. data/doc/TaskJuggler/VimSyntax.html +144 -138
  219. data/doc/TaskJuggler/WebServer.html +46 -39
  220. data/doc/TaskJuggler/WelcomePage.html +769 -0
  221. data/doc/TaskJuggler/WorkingHours.html +185 -179
  222. data/doc/TaskJuggler/WorkingHoursAttribute.html +42 -36
  223. data/doc/TaskJuggler/XMLBlob.html +21 -15
  224. data/doc/TaskJuggler/XMLComment.html +17 -11
  225. data/doc/TaskJuggler/XMLDocument.html +33 -27
  226. data/doc/TaskJuggler/XMLElement.html +97 -91
  227. data/doc/TaskJuggler/XMLNamedText.html +13 -7
  228. data/doc/TaskJuggler/XMLText.html +32 -26
  229. data/doc/index.html +601 -563
  230. data/doc/lib/AccountScenario_rb.html +5 -3
  231. data/doc/lib/Account_rb.html +5 -3
  232. data/doc/lib/Allocation_rb.html +5 -3
  233. data/doc/lib/AppConfig_rb.html +5 -3
  234. data/doc/lib/AttributeBase_rb.html +5 -3
  235. data/doc/lib/AttributeDefinition_rb.html +5 -3
  236. data/doc/lib/Attributes_rb.html +5 -3
  237. data/doc/lib/BatchProcessor_rb.html +5 -3
  238. data/doc/lib/Booking_rb.html +5 -3
  239. data/doc/lib/ChargeSet_rb.html +5 -3
  240. data/doc/lib/Charge_rb.html +5 -3
  241. data/doc/lib/DataCache_rb.html +5 -3
  242. data/doc/lib/FileList_rb.html +5 -3
  243. data/doc/lib/HTMLDocument_rb.html +5 -3
  244. data/doc/lib/IntervalList_rb.html +69 -0
  245. data/doc/lib/Interval_rb.html +5 -3
  246. data/doc/lib/Journal_rb.html +5 -3
  247. data/doc/lib/KeywordArray_rb.html +5 -3
  248. data/doc/lib/KeywordDocumentation_rb.html +5 -3
  249. data/doc/lib/Limits_rb.html +5 -3
  250. data/doc/lib/LogFile_rb.html +5 -3
  251. data/doc/lib/Log_rb.html +5 -3
  252. data/doc/lib/LogicalExpression_rb.html +5 -3
  253. data/doc/lib/LogicalFunction_rb.html +5 -3
  254. data/doc/lib/LogicalOperation_rb.html +5 -3
  255. data/doc/lib/MacroTable_rb.html +5 -3
  256. data/doc/lib/MessageHandler_rb.html +5 -3
  257. data/doc/lib/ProjectFileParser_rb.html +5 -3
  258. data/doc/lib/ProjectFileScanner_rb.html +5 -3
  259. data/doc/lib/Project_rb.html +5 -3
  260. data/doc/lib/PropertyList_rb.html +5 -3
  261. data/doc/lib/PropertySet_rb.html +5 -3
  262. data/doc/lib/PropertyTreeNode_rb.html +5 -3
  263. data/doc/lib/Query_rb.html +5 -3
  264. data/doc/lib/RTFHandlers_rb.html +5 -3
  265. data/doc/lib/RTFNavigator_rb.html +5 -3
  266. data/doc/lib/RTFQuery_rb.html +5 -3
  267. data/doc/lib/RTFReportLink_rb.html +5 -3
  268. data/doc/lib/RTFReport_rb.html +5 -3
  269. data/doc/lib/RTFWithQuerySupport_rb.html +5 -3
  270. data/doc/lib/RealFormat_rb.html +5 -3
  271. data/doc/lib/ResourceScenario_rb.html +5 -3
  272. data/doc/lib/Resource_rb.html +5 -3
  273. data/doc/lib/RichTextDocument_rb.html +5 -3
  274. data/doc/lib/RichTextElement_rb.html +5 -3
  275. data/doc/lib/RichTextFunctionExample_rb.html +5 -3
  276. data/doc/lib/RichTextFunctionHandler_rb.html +5 -3
  277. data/doc/lib/RichTextParser_rb.html +5 -3
  278. data/doc/lib/RichTextScanner_rb.html +5 -3
  279. data/doc/lib/RichTextSnip_rb.html +5 -3
  280. data/doc/lib/RichTextSyntaxRules_rb.html +5 -3
  281. data/doc/lib/RichText_rb.html +5 -3
  282. data/doc/lib/RuntimeConfig_rb.html +5 -3
  283. data/doc/lib/ScenarioData_rb.html +5 -3
  284. data/doc/lib/Scenario_rb.html +5 -3
  285. data/doc/lib/Scoreboard_rb.html +7 -3
  286. data/doc/lib/SheetHandlerBase_rb.html +5 -3
  287. data/doc/lib/SheetReceiver_rb.html +5 -3
  288. data/doc/lib/SheetSender_rb.html +5 -3
  289. data/doc/lib/ShiftAssignments_rb.html +5 -3
  290. data/doc/lib/ShiftScenario_rb.html +5 -3
  291. data/doc/lib/Shift_rb.html +5 -3
  292. data/doc/lib/SimpleQueryExpander_rb.html +5 -3
  293. data/doc/lib/SourceFileInfo_rb.html +5 -3
  294. data/doc/lib/StatusSheetReceiver_rb.html +5 -3
  295. data/doc/lib/StatusSheetSender_rb.html +5 -3
  296. data/doc/lib/SyntaxReference_rb.html +5 -3
  297. data/doc/lib/TOCEntry_rb.html +5 -3
  298. data/doc/lib/TableColumnDefinition_rb.html +5 -3
  299. data/doc/lib/TableOfContents_rb.html +5 -3
  300. data/doc/lib/TaskDependency_rb.html +5 -3
  301. data/doc/lib/TaskJuggler_rb.html +5 -3
  302. data/doc/lib/TaskScenario_rb.html +5 -3
  303. data/doc/lib/Task_rb.html +5 -3
  304. data/doc/lib/TextFormatter_rb.html +6 -4
  305. data/doc/lib/TextParser/Pattern_rb.html +5 -3
  306. data/doc/lib/TextParser/Rule_rb.html +5 -3
  307. data/doc/lib/TextParser/StackElement_rb.html +5 -3
  308. data/doc/lib/TextParser/State_rb.html +6 -4
  309. data/doc/lib/TextParser/TokenDoc_rb.html +5 -3
  310. data/doc/lib/TextParser_rb.html +5 -3
  311. data/doc/lib/TextScanner_rb.html +5 -3
  312. data/doc/lib/TimeSheetReceiver_rb.html +5 -3
  313. data/doc/lib/TimeSheetSender_rb.html +5 -3
  314. data/doc/lib/TimeSheetSummary_rb.html +6 -4
  315. data/doc/lib/TimeSheets_rb.html +5 -3
  316. data/doc/lib/Tj3AppBase_rb.html +5 -3
  317. data/doc/lib/Tj3Config_rb.html +5 -3
  318. data/doc/lib/Tj3SheetAppBase_rb.html +5 -3
  319. data/doc/lib/TjException_rb.html +5 -3
  320. data/doc/lib/TjTime_rb.html +5 -3
  321. data/doc/lib/TjpExample_rb.html +5 -3
  322. data/doc/lib/TjpSyntaxRules_rb.html +5 -3
  323. data/doc/lib/URLParameter_rb.html +5 -3
  324. data/doc/lib/UTF8String_rb.html +5 -3
  325. data/doc/lib/UserManual_rb.html +5 -3
  326. data/doc/lib/VimSyntax_rb.html +6 -4
  327. data/doc/lib/WorkingHours_rb.html +5 -3
  328. data/doc/lib/XMLDocument_rb.html +5 -3
  329. data/doc/lib/XMLElement_rb.html +5 -3
  330. data/doc/lib/daemon/Daemon_rb.html +5 -3
  331. data/doc/lib/daemon/ProcessIntercom_rb.html +7 -3
  332. data/doc/lib/daemon/ProjectBroker_rb.html +5 -3
  333. data/doc/lib/daemon/ProjectServer_rb.html +5 -3
  334. data/doc/lib/daemon/ReportServer_rb.html +5 -3
  335. data/doc/lib/daemon/ReportServlet_rb.html +69 -0
  336. data/doc/lib/daemon/WebServer_rb.html +9 -3
  337. data/doc/lib/daemon/WelcomePage_rb.html +71 -0
  338. data/doc/lib/deep_copy_rb.html +5 -3
  339. data/doc/lib/reports/CSVFile_rb.html +5 -3
  340. data/doc/lib/reports/CollisionDetector_rb.html +5 -3
  341. data/doc/lib/reports/ColumnTable_rb.html +5 -3
  342. data/doc/lib/reports/GanttChart_rb.html +5 -3
  343. data/doc/lib/reports/GanttContainer_rb.html +5 -3
  344. data/doc/lib/reports/GanttHeaderScaleItem_rb.html +5 -3
  345. data/doc/lib/reports/GanttHeader_rb.html +5 -3
  346. data/doc/lib/reports/GanttLine_rb.html +5 -3
  347. data/doc/lib/reports/GanttLoadStack_rb.html +5 -3
  348. data/doc/lib/reports/GanttMilestone_rb.html +5 -3
  349. data/doc/lib/reports/GanttRouter_rb.html +5 -3
  350. data/doc/lib/reports/GanttTaskBar_rb.html +5 -3
  351. data/doc/lib/reports/HTMLGraphics_rb.html +5 -3
  352. data/doc/lib/reports/Navigator_rb.html +5 -3
  353. data/doc/lib/reports/NikuReport_rb.html +5 -3
  354. data/doc/lib/reports/ReportBase_rb.html +5 -3
  355. data/doc/lib/reports/ReportContext_rb.html +5 -3
  356. data/doc/lib/reports/ReportTableCell_rb.html +5 -3
  357. data/doc/lib/reports/ReportTableColumn_rb.html +5 -3
  358. data/doc/lib/reports/ReportTableLegend_rb.html +5 -3
  359. data/doc/lib/reports/ReportTableLine_rb.html +5 -3
  360. data/doc/lib/reports/ReportTable_rb.html +5 -3
  361. data/doc/lib/reports/Report_rb.html +5 -3
  362. data/doc/lib/reports/ResourceListRE_rb.html +5 -3
  363. data/doc/lib/reports/StatusSheetReport_rb.html +5 -3
  364. data/doc/lib/reports/TableReport_rb.html +5 -3
  365. data/doc/lib/reports/TaskListRE_rb.html +5 -3
  366. data/doc/lib/reports/TextReport_rb.html +5 -3
  367. data/doc/lib/reports/TimeSheetReport_rb.html +5 -3
  368. data/doc/lib/reports/TjpExportRE_rb.html +5 -3
  369. data/doc/lib/{taskjuggler3_rb.html → tj3_rb.html} +7 -5
  370. data/doc/lib/tj3client_rb.html +5 -3
  371. data/doc/lib/tj3d_rb.html +6 -4
  372. data/doc/lib/tj3man_rb.html +5 -3
  373. data/doc/lib/tj3ss_receiver_rb.html +5 -3
  374. data/doc/lib/tj3ss_sender_rb.html +5 -3
  375. data/doc/lib/tj3ts_receiver_rb.html +5 -3
  376. data/doc/lib/tj3ts_sender_rb.html +5 -3
  377. data/doc/lib/tj3ts_summary_rb.html +5 -3
  378. data/examples/tutorial.tjp +13 -5
  379. data/gem_spec.rb +3 -0
  380. data/lib/Account.rb +2 -1
  381. data/lib/AccountScenario.rb +2 -1
  382. data/lib/Allocation.rb +2 -1
  383. data/lib/AppConfig.rb +2 -1
  384. data/lib/AttributeBase.rb +19 -5
  385. data/lib/AttributeDefinition.rb +2 -1
  386. data/lib/Attributes.rb +49 -38
  387. data/lib/BatchProcessor.rb +2 -1
  388. data/lib/Booking.rb +2 -1
  389. data/lib/Charge.rb +2 -1
  390. data/lib/ChargeSet.rb +2 -1
  391. data/lib/DataCache.rb +15 -1
  392. data/lib/FileList.rb +2 -1
  393. data/lib/HTMLDocument.rb +2 -1
  394. data/lib/Interval.rb +2 -1
  395. data/lib/IntervalList.rb +100 -0
  396. data/lib/Journal.rb +8 -2
  397. data/lib/KeywordArray.rb +2 -1
  398. data/lib/KeywordDocumentation.rb +10 -6
  399. data/lib/Limits.rb +2 -1
  400. data/lib/Log.rb +3 -2
  401. data/lib/LogFile.rb +2 -1
  402. data/lib/LogicalExpression.rb +2 -1
  403. data/lib/LogicalFunction.rb +2 -1
  404. data/lib/LogicalOperation.rb +2 -1
  405. data/lib/MacroTable.rb +2 -1
  406. data/lib/MessageHandler.rb +2 -1
  407. data/lib/Project.rb +92 -25
  408. data/lib/ProjectFileParser.rb +7 -2
  409. data/lib/ProjectFileScanner.rb +2 -1
  410. data/lib/PropertyList.rb +2 -1
  411. data/lib/PropertySet.rb +2 -6
  412. data/lib/PropertyTreeNode.rb +22 -44
  413. data/lib/Query.rb +32 -13
  414. data/lib/RTFHandlers.rb +2 -1
  415. data/lib/RTFNavigator.rb +2 -1
  416. data/lib/RTFQuery.rb +3 -2
  417. data/lib/RTFReport.rb +2 -1
  418. data/lib/RTFReportLink.rb +2 -1
  419. data/lib/RTFWithQuerySupport.rb +2 -1
  420. data/lib/RealFormat.rb +2 -1
  421. data/lib/Resource.rb +2 -1
  422. data/lib/ResourceScenario.rb +35 -14
  423. data/lib/RichText.rb +2 -1
  424. data/lib/RichTextDocument.rb +2 -1
  425. data/lib/RichTextElement.rb +2 -1
  426. data/lib/RichTextFunctionExample.rb +2 -1
  427. data/lib/RichTextFunctionHandler.rb +2 -1
  428. data/lib/RichTextParser.rb +2 -1
  429. data/lib/RichTextScanner.rb +2 -1
  430. data/lib/RichTextSnip.rb +2 -1
  431. data/lib/RichTextSyntaxRules.rb +2 -1
  432. data/lib/RuntimeConfig.rb +2 -1
  433. data/lib/Scenario.rb +2 -1
  434. data/lib/ScenarioData.rb +2 -1
  435. data/lib/Scoreboard.rb +27 -8
  436. data/lib/SheetHandlerBase.rb +2 -1
  437. data/lib/SheetReceiver.rb +2 -1
  438. data/lib/SheetSender.rb +2 -1
  439. data/lib/Shift.rb +2 -1
  440. data/lib/ShiftAssignments.rb +2 -1
  441. data/lib/ShiftScenario.rb +2 -1
  442. data/lib/SimpleQueryExpander.rb +2 -1
  443. data/lib/SourceFileInfo.rb +2 -1
  444. data/lib/StatusSheetReceiver.rb +2 -1
  445. data/lib/StatusSheetSender.rb +2 -1
  446. data/lib/SyntaxReference.rb +2 -1
  447. data/lib/TOCEntry.rb +2 -1
  448. data/lib/TableColumnDefinition.rb +9 -2
  449. data/lib/TableOfContents.rb +2 -1
  450. data/lib/Task.rb +2 -1
  451. data/lib/TaskDependency.rb +2 -1
  452. data/lib/TaskJuggler.rb +8 -6
  453. data/lib/TaskScenario.rb +337 -153
  454. data/lib/TextFormatter.rb +3 -2
  455. data/lib/TextParser.rb +7 -2
  456. data/lib/TextParser/Pattern.rb +2 -1
  457. data/lib/TextParser/Rule.rb +2 -1
  458. data/lib/TextParser/StackElement.rb +2 -1
  459. data/lib/TextParser/State.rb +3 -2
  460. data/lib/TextParser/TokenDoc.rb +2 -1
  461. data/lib/TextScanner.rb +12 -5
  462. data/lib/TimeSheetReceiver.rb +2 -1
  463. data/lib/TimeSheetSender.rb +2 -1
  464. data/lib/TimeSheetSummary.rb +3 -2
  465. data/lib/TimeSheets.rb +2 -1
  466. data/lib/Tj3AppBase.rb +6 -5
  467. data/lib/Tj3Config.rb +5 -4
  468. data/lib/Tj3SheetAppBase.rb +2 -1
  469. data/lib/TjException.rb +2 -1
  470. data/lib/TjTime.rb +2 -1
  471. data/lib/TjpExample.rb +2 -1
  472. data/lib/TjpSyntaxRules.rb +264 -65
  473. data/lib/URLParameter.rb +2 -1
  474. data/lib/UTF8String.rb +2 -1
  475. data/lib/UserManual.rb +2 -1
  476. data/lib/VimSyntax.rb +3 -2
  477. data/lib/WorkingHours.rb +2 -1
  478. data/lib/XMLDocument.rb +2 -1
  479. data/lib/XMLElement.rb +2 -1
  480. data/lib/daemon/Daemon.rb +3 -1
  481. data/lib/daemon/ProcessIntercom.rb +3 -1
  482. data/lib/daemon/ProjectBroker.rb +84 -32
  483. data/lib/daemon/ProjectServer.rb +5 -3
  484. data/lib/daemon/ReportServer.rb +8 -5
  485. data/lib/daemon/ReportServlet.rb +166 -0
  486. data/lib/daemon/WebServer.rb +6 -150
  487. data/lib/daemon/WelcomePage.rb +80 -0
  488. data/lib/deep_copy.rb +2 -1
  489. data/lib/reports/CSVFile.rb +2 -1
  490. data/lib/reports/CollisionDetector.rb +2 -1
  491. data/lib/reports/ColumnTable.rb +2 -1
  492. data/lib/reports/GanttChart.rb +2 -1
  493. data/lib/reports/GanttContainer.rb +3 -4
  494. data/lib/reports/GanttHeader.rb +2 -1
  495. data/lib/reports/GanttHeaderScaleItem.rb +2 -1
  496. data/lib/reports/GanttLine.rb +12 -10
  497. data/lib/reports/GanttLoadStack.rb +2 -1
  498. data/lib/reports/GanttMilestone.rb +3 -3
  499. data/lib/reports/GanttRouter.rb +4 -1
  500. data/lib/reports/GanttTaskBar.rb +9 -7
  501. data/lib/reports/HTMLGraphics.rb +2 -1
  502. data/lib/reports/Navigator.rb +2 -1
  503. data/lib/reports/NikuReport.rb +79 -49
  504. data/lib/reports/Report.rb +42 -10
  505. data/lib/reports/ReportBase.rb +2 -1
  506. data/lib/reports/ReportContext.rb +2 -1
  507. data/lib/reports/ReportTable.rb +2 -1
  508. data/lib/reports/ReportTableCell.rb +63 -28
  509. data/lib/reports/ReportTableColumn.rb +2 -1
  510. data/lib/reports/ReportTableLegend.rb +5 -5
  511. data/lib/reports/ReportTableLine.rb +2 -1
  512. data/lib/reports/ResourceListRE.rb +2 -1
  513. data/lib/reports/StatusSheetReport.rb +4 -2
  514. data/lib/reports/TableReport.rb +42 -38
  515. data/lib/reports/TaskListRE.rb +4 -2
  516. data/lib/reports/TextReport.rb +2 -1
  517. data/lib/reports/TimeSheetReport.rb +4 -2
  518. data/lib/reports/TjpExportRE.rb +4 -2
  519. data/lib/{taskjuggler3.rb → tj3.rb} +6 -5
  520. data/lib/tj3client.rb +19 -36
  521. data/lib/tj3d.rb +6 -2
  522. data/lib/tj3man.rb +4 -3
  523. data/lib/tj3ss_receiver.rb +2 -1
  524. data/lib/tj3ss_sender.rb +2 -1
  525. data/lib/tj3ts_receiver.rb +2 -1
  526. data/lib/tj3ts_sender.rb +2 -1
  527. data/lib/tj3ts_summary.rb +2 -1
  528. data/manual/Day_To_Day_Juggling +36 -0
  529. data/manual/How_To_Contribute +9 -4
  530. data/manual/Installation +10 -3
  531. data/manual/TaskJuggler_Internals +0 -2
  532. data/manual/Tutorial +25 -3
  533. data/prj_cfg.rb +4 -2
  534. data/spec/IntervalList_spec.rb +138 -0
  535. data/spec/ProjectBroker_spec.rb +133 -0
  536. data/tasks/changelog.rake +41 -24
  537. data/tasks/csts.rake +1 -0
  538. data/tasks/gem.rake +1 -0
  539. data/tasks/rcov.rake +1 -1
  540. data/tasks/spec.rake +7 -0
  541. data/tasks/test.rake +1 -0
  542. data/test/MessageChecker.rb +2 -1
  543. data/test/TestSuite/CSV-Reports/niku.tjp +70 -0
  544. data/test/TestSuite/CSV-Reports/{celltext-Reference.csv → refs/celltext.csv} +0 -0
  545. data/test/TestSuite/CSV-Reports/refs/niku.csv +5 -0
  546. data/test/TestSuite/CSV-Reports/{resourcereport-Reference.csv → refs/resourcereport.csv} +0 -0
  547. data/test/TestSuite/CSV-Reports/{resourcereport_with_tasks-Reference.csv → refs/resourcereport_with_tasks.csv} +0 -0
  548. data/test/TestSuite/CSV-Reports/{sortByTree-Reference.csv → refs/sortByTree.csv} +0 -0
  549. data/test/TestSuite/CSV-Reports/{sortBy_duration.down-Reference.csv → refs/sortBy_duration.down.csv} +0 -0
  550. data/test/TestSuite/CSV-Reports/{sortBy_effort.up-Reference.csv → refs/sortBy_effort.up.csv} +0 -0
  551. data/test/TestSuite/CSV-Reports/{sortBy_plan.start.down-Reference.csv → refs/sortBy_plan.start.down.csv} +0 -0
  552. data/test/TestSuite/CSV-Reports/{taskreport-Reference.csv → refs/taskreport.csv} +0 -0
  553. data/test/TestSuite/CSV-Reports/{taskreport_with_resources-Reference.csv → refs/taskreport_with_resources.csv} +0 -0
  554. data/test/TestSuite/CSV-Reports/{weekly-Reference.csv → refs/weekly.csv} +0 -0
  555. data/test/TestSuite/HTML-Reports/Alerts.tjp +12 -0
  556. data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -2
  557. data/test/TestSuite/Scheduler/Correct/Container-2.tjp +1 -2
  558. data/test/TestSuite/Scheduler/Correct/InheritedAttributes.tjp +77 -0
  559. data/test/TestSuite/Scheduler/Correct/WeakDeps.tjp +40 -0
  560. data/test/TestSuite/Scheduler/Errors/loop_detected_12.tjp +2 -2
  561. data/test/TestSuite/Scheduler/Errors/loop_detected_13.tjp +3 -4
  562. data/test/TestSuite/Scheduler/Errors/loop_detected_3.tjp +2 -2
  563. data/test/TestSuite/Scheduler/Errors/loop_detected_6.tjp +8 -7
  564. data/test/TestSuite/Scheduler/Errors/onend_wrong_direction.tjp +19 -0
  565. data/test/TestSuite/Scheduler/Errors/onstart_wrong_direction.tjp +18 -0
  566. data/test/TestSuite/Scheduler/Errors/task_depend_multi.tjp +1 -2
  567. data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/boss_2002-03-02.tji +46 -0
  568. data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/dev2_2002-03-02.tji +22 -0
  569. data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/resources.yml +11 -0
  570. data/test/TestSuite/StatusSheets/StatusSheetTemplates/acceptable_intervals +1 -0
  571. data/test/TestSuite/StatusSheets/sender.log +256 -0
  572. data/test/TestSuite/StatusSheets/statussheets.log +9 -0
  573. data/test/TestSuite/StatusSheets/tj3d.log +395 -0
  574. data/test/TestSuite/Syntax/Correct/Limits-1.tjp +2 -0
  575. data/test/TestSuite/Syntax/Correct/Niku.tjp +6 -1
  576. data/test/TestSuite/Syntax/Correct/Scenario.tjp +4 -1
  577. data/test/TestSuite/Syntax/Correct/Supplement.tjp +12 -5
  578. data/test/TestSuite/Syntax/Correct/TaskPrefix.tji +3 -0
  579. data/test/TestSuite/Syntax/Correct/TaskPrefix.tjp +24 -0
  580. data/test/TestSuite/Syntax/Correct/css/tjreport.css +7 -2
  581. data/test/TestSuite/Syntax/Correct/tutorial.tjp +15 -5
  582. data/test/all.rb +2 -4
  583. data/test/test_BatchProcessor.rb +2 -1
  584. data/test/test_CSV-Reports.rb +34 -23
  585. data/test/test_CSVFile.rb +2 -1
  586. data/test/test_CollisionDetector.rb +3 -2
  587. data/test/test_Journal.rb +2 -1
  588. data/test/test_Limits.rb +2 -1
  589. data/test/test_LogicalExpression.rb +2 -1
  590. data/test/test_MacroTable.rb +2 -1
  591. data/test/test_Project.rb +3 -2
  592. data/test/test_ProjectFileScanner.rb +2 -1
  593. data/test/test_PropertySet.rb +2 -1
  594. data/test/test_Query.rb +2 -1
  595. data/test/test_RealFormat.rb +2 -1
  596. data/test/test_ReportGenerator.rb +2 -1
  597. data/test/test_RichText.rb +2 -1
  598. data/test/test_Scheduler.rb +2 -1
  599. data/test/test_ShiftAssignments.rb +2 -1
  600. data/test/test_SimpleQueryExpander.rb +2 -1
  601. data/test/test_Syntax.rb +2 -1
  602. data/test/test_TextFormatter.rb +3 -2
  603. data/test/test_TjTime.rb +2 -1
  604. data/test/test_TjpExample.rb +2 -1
  605. data/test/test_URLParameter.rb +2 -1
  606. data/test/test_UTF8String.rb +2 -1
  607. data/test/test_WorkingHours.rb +2 -1
  608. data/test/test_deep_copy.rb +2 -1
  609. metadata +74 -20
  610. data/doc/StringIO.html +0 -595
  611. data/test/TestSuite/Scheduler/Errors/loop_detected_7.tjp +0 -46
  612. data/test/TestSuite/Scheduler/Errors/loop_detected_8.tjp +0 -51
  613. data/test/TestSuite/Scheduler/Errors/multiple_durations.tjp +0 -11
@@ -131,6 +131,8 @@
131
131
 
132
132
  <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
133
133
 
134
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
135
+
134
136
  <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
135
137
 
136
138
  <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
@@ -209,6 +211,8 @@
209
211
 
210
212
  <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
211
213
 
214
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
215
+
212
216
  <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
213
217
 
214
218
  <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
@@ -241,6 +245,8 @@
241
245
 
242
246
  <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
243
247
 
248
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
249
+
244
250
  <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
245
251
 
246
252
  <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
@@ -521,6 +527,8 @@
521
527
 
522
528
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
523
529
 
530
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
531
+
524
532
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
525
533
 
526
534
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -547,8 +555,6 @@
547
555
 
548
556
  <li><a href="../String.html">String</a></li>
549
557
 
550
- <li><a href="../StringIO.html">StringIO</a></li>
551
-
552
558
  </ul>
553
559
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
554
560
  </div>
@@ -602,16 +608,16 @@ record any transactions.
602
608
  <div class="method-source-code"
603
609
  id="new-source">
604
610
  <pre>
605
- <span class="ruby-comment cmt"># File lib/Account.rb, line 24</span>
606
- 24: <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>)
607
- 25: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">resources</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
608
- 26: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">addAccount</span>(<span class="ruby-keyword kw">self</span>)
609
- 27:
610
- 28: <span class="ruby-ivar">@data</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioCount</span>, <span class="ruby-keyword kw">nil</span>)
611
- 29: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioCount</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
612
- 30: <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">i</span>] = <span class="ruby-constant">AccountScenario</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">i</span>, <span class="ruby-ivar">@scenarioAttributes</span>[<span class="ruby-identifier">i</span>])
613
- 31: <span class="ruby-keyword kw">end</span>
614
- 32: <span class="ruby-keyword kw">end</span></pre>
611
+ <span class="ruby-comment cmt"># File lib/Account.rb, line 25</span>
612
+ 25: <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>)
613
+ 26: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">resources</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">name</span>, <span class="ruby-identifier">parent</span>)
614
+ 27: <span class="ruby-identifier">project</span>.<span class="ruby-identifier">addAccount</span>(<span class="ruby-keyword kw">self</span>)
615
+ 28:
616
+ 29: <span class="ruby-ivar">@data</span> = <span class="ruby-constant">Array</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioCount</span>, <span class="ruby-keyword kw">nil</span>)
617
+ 30: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioCount</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
618
+ 31: <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">i</span>] = <span class="ruby-constant">AccountScenario</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">i</span>, <span class="ruby-ivar">@scenarioAttributes</span>[<span class="ruby-identifier">i</span>])
619
+ 32: <span class="ruby-keyword kw">end</span>
620
+ 33: <span class="ruby-keyword kw">end</span></pre>
615
621
  </div>
616
622
 
617
623
  </div>
@@ -654,10 +660,10 @@ try to find it in <a href="AccountScenario.html">AccountScenario</a>.
654
660
  <div class="method-source-code"
655
661
  id="method-missing-source">
656
662
  <pre>
657
- <span class="ruby-comment cmt"># File lib/Account.rb, line 38</span>
658
- 38: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">func</span>, <span class="ruby-identifier">scenarioIdx</span>, *<span class="ruby-identifier">args</span>)
659
- 39: <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">method</span>(<span class="ruby-identifier">func</span>).<span class="ruby-identifier">call</span>(*<span class="ruby-identifier">args</span>)
660
- 40: <span class="ruby-keyword kw">end</span></pre>
663
+ <span class="ruby-comment cmt"># File lib/Account.rb, line 39</span>
664
+ 39: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">func</span>, <span class="ruby-identifier">scenarioIdx</span>, *<span class="ruby-identifier">args</span>)
665
+ 40: <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">method</span>(<span class="ruby-identifier">func</span>).<span class="ruby-identifier">call</span>(*<span class="ruby-identifier">args</span>)
666
+ 41: <span class="ruby-keyword kw">end</span></pre>
661
667
  </div>
662
668
 
663
669
  </div>
@@ -690,10 +696,10 @@ Return a reference to the <em>scenarioIdx</em>-th scenario.
690
696
  <div class="method-source-code"
691
697
  id="scenario-source">
692
698
  <pre>
693
- <span class="ruby-comment cmt"># File lib/Account.rb, line 43</span>
694
- 43: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scenario</span>(<span class="ruby-identifier">scenarioIdx</span>)
695
- 44: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">scenarioIdx</span>]
696
- 45: <span class="ruby-keyword kw">end</span></pre>
699
+ <span class="ruby-comment cmt"># File lib/Account.rb, line 44</span>
700
+ 44: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">scenario</span>(<span class="ruby-identifier">scenarioIdx</span>)
701
+ 45: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@data</span>[<span class="ruby-identifier">scenarioIdx</span>]
702
+ 46: <span class="ruby-keyword kw">end</span></pre>
697
703
  </div>
698
704
 
699
705
  </div>
@@ -133,6 +133,8 @@
133
133
 
134
134
  <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
135
135
 
136
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
137
+
136
138
  <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
137
139
 
138
140
  <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
@@ -211,6 +213,8 @@
211
213
 
212
214
  <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
213
215
 
216
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
217
+
214
218
  <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
215
219
 
216
220
  <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
@@ -243,6 +247,8 @@
243
247
 
244
248
  <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
245
249
 
250
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
251
+
246
252
  <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
247
253
 
248
254
  <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
@@ -523,6 +529,8 @@
523
529
 
524
530
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
525
531
 
532
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
533
+
526
534
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
527
535
 
528
536
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -549,8 +557,6 @@
549
557
 
550
558
  <li><a href="../String.html">String</a></li>
551
559
 
552
- <li><a href="../StringIO.html">StringIO</a></li>
553
-
554
560
  </ul>
555
561
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
556
562
  </div>
@@ -598,10 +604,10 @@
598
604
  <div class="method-source-code"
599
605
  id="new-source">
600
606
  <pre>
601
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 25</span>
602
- 25: <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>)
603
- 26: <span class="ruby-keyword kw">super</span>
604
- 27: <span class="ruby-keyword kw">end</span></pre>
607
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 26</span>
608
+ 26: <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>)
609
+ 27: <span class="ruby-keyword kw">super</span>
610
+ 28: <span class="ruby-keyword kw">end</span></pre>
605
611
  </div>
606
612
 
607
613
  </div>
@@ -632,10 +638,10 @@
632
638
  <div class="method-source-code"
633
639
  id="tjp-d-source">
634
640
  <pre>
635
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 29</span>
636
- 29: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">AccountAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
637
- 30: <span class="ruby-value str">'account'</span>
638
- 31: <span class="ruby-keyword kw">end</span></pre>
641
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 30</span>
642
+ 30: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">AccountAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
643
+ 31: <span class="ruby-value str">'account'</span>
644
+ 32: <span class="ruby-keyword kw">end</span></pre>
639
645
  </div>
640
646
 
641
647
  </div>
@@ -672,10 +678,10 @@
672
678
  <div class="method-source-code"
673
679
  id="to-s-source">
674
680
  <pre>
675
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 33</span>
676
- 33: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">query</span> = <span class="ruby-keyword kw">nil</span>)
677
- 34: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
678
- 35: <span class="ruby-keyword kw">end</span></pre>
681
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 34</span>
682
+ 34: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">query</span> = <span class="ruby-keyword kw">nil</span>)
683
+ 35: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
684
+ 36: <span class="ruby-keyword kw">end</span></pre>
679
685
  </div>
680
686
 
681
687
  </div>
@@ -706,10 +712,10 @@
706
712
  <div class="method-source-code"
707
713
  id="to-tjp-source">
708
714
  <pre>
709
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 37</span>
710
- 37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
711
- 38: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
712
- 39: <span class="ruby-keyword kw">end</span></pre>
715
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 38</span>
716
+ 38: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
717
+ 39: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">id</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
718
+ 40: <span class="ruby-keyword kw">end</span></pre>
713
719
  </div>
714
720
 
715
721
  </div>
@@ -129,6 +129,8 @@
129
129
 
130
130
  <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
131
131
 
132
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
133
+
132
134
  <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
133
135
 
134
136
  <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
@@ -207,6 +209,8 @@
207
209
 
208
210
  <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
209
211
 
212
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
213
+
210
214
  <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
211
215
 
212
216
  <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
@@ -239,6 +243,8 @@
239
243
 
240
244
  <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
241
245
 
246
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
247
+
242
248
  <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
243
249
 
244
250
  <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
@@ -519,6 +525,8 @@
519
525
 
520
526
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
521
527
 
528
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
529
+
522
530
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
523
531
 
524
532
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -545,8 +553,6 @@
545
553
 
546
554
  <li><a href="../String.html">String</a></li>
547
555
 
548
- <li><a href="../StringIO.html">StringIO</a></li>
549
-
550
556
  </ul>
551
557
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
552
558
  </div>
@@ -598,10 +604,10 @@ href="Account.html">Account</a> object.
598
604
  <div class="method-source-code"
599
605
  id="new-source">
600
606
  <pre>
601
- <span class="ruby-comment cmt"># File lib/AccountScenario.rb, line 20</span>
602
- 20: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">account</span>, <span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">attributes</span>)
603
- 21: <span class="ruby-keyword kw">super</span>
604
- 22: <span class="ruby-keyword kw">end</span></pre>
607
+ <span class="ruby-comment cmt"># File lib/AccountScenario.rb, line 21</span>
608
+ 21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">account</span>, <span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">attributes</span>)
609
+ 22: <span class="ruby-keyword kw">super</span>
610
+ 23: <span class="ruby-keyword kw">end</span></pre>
605
611
  </div>
606
612
 
607
613
  </div>
@@ -641,18 +647,18 @@ href="Interval.html">Interval</a>.
641
647
  <div class="method-source-code"
642
648
  id="turnover-source">
643
649
  <pre>
644
- <span class="ruby-comment cmt"># File lib/AccountScenario.rb, line 25</span>
645
- 25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">turnover</span>(<span class="ruby-identifier">period</span>)
646
- 26: <span class="ruby-identifier">amount</span> = <span class="ruby-value">0.0</span>
647
- 27: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">container?</span>
648
- 28: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">amount</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">child</span>.<span class="ruby-identifier">turnover</span> }
649
- 29: <span class="ruby-keyword kw">else</span>
650
- 30: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
651
- 31: <span class="ruby-identifier">amount</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">turnover</span>(<span class="ruby-identifier">period</span>, <span class="ruby-keyword kw">self</span>)
652
- 32: <span class="ruby-keyword kw">end</span>
653
- 33: <span class="ruby-keyword kw">end</span>
654
- 34: <span class="ruby-identifier">amount</span>
655
- 35: <span class="ruby-keyword kw">end</span></pre>
650
+ <span class="ruby-comment cmt"># File lib/AccountScenario.rb, line 26</span>
651
+ 26: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">turnover</span>(<span class="ruby-identifier">period</span>)
652
+ 27: <span class="ruby-identifier">amount</span> = <span class="ruby-value">0.0</span>
653
+ 28: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">container?</span>
654
+ 29: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">child</span><span class="ruby-operator">|</span> <span class="ruby-identifier">amount</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">child</span>.<span class="ruby-identifier">turnover</span> }
655
+ 30: <span class="ruby-keyword kw">else</span>
656
+ 31: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
657
+ 32: <span class="ruby-identifier">amount</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">turnover</span>(<span class="ruby-identifier">period</span>, <span class="ruby-keyword kw">self</span>)
658
+ 33: <span class="ruby-keyword kw">end</span>
659
+ 34: <span class="ruby-keyword kw">end</span>
660
+ 35: <span class="ruby-identifier">amount</span>
661
+ 36: <span class="ruby-keyword kw">end</span></pre>
656
662
  </div>
657
663
 
658
664
  </div>
@@ -135,6 +135,8 @@
135
135
 
136
136
  <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
137
137
 
138
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
139
+
138
140
  <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
139
141
 
140
142
  <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
@@ -213,6 +215,8 @@
213
215
 
214
216
  <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
215
217
 
218
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
219
+
216
220
  <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
217
221
 
218
222
  <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
@@ -245,6 +249,8 @@
245
249
 
246
250
  <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
247
251
 
252
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
253
+
248
254
  <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
249
255
 
250
256
  <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
@@ -525,6 +531,8 @@
525
531
 
526
532
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
527
533
 
534
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
535
+
528
536
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
529
537
 
530
538
  <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
@@ -551,8 +559,6 @@
551
559
 
552
560
  <li><a href="../String.html">String</a></li>
553
561
 
554
- <li><a href="../StringIO.html">StringIO</a></li>
555
-
556
562
  </ul>
557
563
  <div id="no-class-search-results" style="display: none;">No matching classes.</div>
558
564
  </div>
@@ -702,25 +708,25 @@ href="Resource.html">Resource</a> reference.
702
708
  <div class="method-source-code"
703
709
  id="new-source">
704
710
  <pre>
705
- <span class="ruby-comment cmt"># File lib/Allocation.rb, line 30</span>
706
- 30: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">candidates</span>, <span class="ruby-identifier">selectionMode</span> = <span class="ruby-value">1</span>, <span class="ruby-identifier">persistent</span> = <span class="ruby-keyword kw">false</span>,
707
- 31: <span class="ruby-identifier">mandatory</span> = <span class="ruby-keyword kw">false</span>)
708
- 32: <span class="ruby-ivar">@candidates</span> = <span class="ruby-identifier">candidates</span>
709
- 33: <span class="ruby-comment cmt"># The selection mode determines how the candidate is selected from the</span>
710
- 34: <span class="ruby-comment cmt"># list of candidates.</span>
711
- 35: <span class="ruby-comment cmt"># 0 : 'order' : select by order of list</span>
712
- 36: <span class="ruby-comment cmt"># 1 : 'minallocated' : select candidate with lowest allocation</span>
713
- 37: <span class="ruby-comment cmt"># probability</span>
714
- 38: <span class="ruby-comment cmt"># 2 : 'minloaded' : select candidate with lowest allocated overall</span>
715
- 39: <span class="ruby-comment cmt"># load</span>
716
- 40: <span class="ruby-comment cmt"># 3 : 'maxloaded' : select candidate with highest allocated overall</span>
717
- 41: <span class="ruby-comment cmt"># load</span>
718
- 42: <span class="ruby-comment cmt"># 4 : 'random' : select a random candidate</span>
719
- 43: <span class="ruby-ivar">@selectionMode</span> = <span class="ruby-identifier">selectionMode</span>
720
- 44: <span class="ruby-ivar">@persistent</span> = <span class="ruby-identifier">persistent</span>
721
- 45: <span class="ruby-ivar">@mandatory</span> = <span class="ruby-identifier">mandatory</span>
722
- 46: <span class="ruby-ivar">@shifts</span> = <span class="ruby-keyword kw">nil</span>
723
- 47: <span class="ruby-keyword kw">end</span></pre>
711
+ <span class="ruby-comment cmt"># File lib/Allocation.rb, line 31</span>
712
+ 31: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">candidates</span>, <span class="ruby-identifier">selectionMode</span> = <span class="ruby-value">1</span>, <span class="ruby-identifier">persistent</span> = <span class="ruby-keyword kw">false</span>,
713
+ 32: <span class="ruby-identifier">mandatory</span> = <span class="ruby-keyword kw">false</span>)
714
+ 33: <span class="ruby-ivar">@candidates</span> = <span class="ruby-identifier">candidates</span>
715
+ 34: <span class="ruby-comment cmt"># The selection mode determines how the candidate is selected from the</span>
716
+ 35: <span class="ruby-comment cmt"># list of candidates.</span>
717
+ 36: <span class="ruby-comment cmt"># 0 : 'order' : select by order of list</span>
718
+ 37: <span class="ruby-comment cmt"># 1 : 'minallocated' : select candidate with lowest allocation</span>
719
+ 38: <span class="ruby-comment cmt"># probability</span>
720
+ 39: <span class="ruby-comment cmt"># 2 : 'minloaded' : select candidate with lowest allocated overall</span>
721
+ 40: <span class="ruby-comment cmt"># load</span>
722
+ 41: <span class="ruby-comment cmt"># 3 : 'maxloaded' : select candidate with highest allocated overall</span>
723
+ 42: <span class="ruby-comment cmt"># load</span>
724
+ 43: <span class="ruby-comment cmt"># 4 : 'random' : select a random candidate</span>
725
+ 44: <span class="ruby-ivar">@selectionMode</span> = <span class="ruby-identifier">selectionMode</span>
726
+ 45: <span class="ruby-ivar">@persistent</span> = <span class="ruby-identifier">persistent</span>
727
+ 46: <span class="ruby-ivar">@mandatory</span> = <span class="ruby-identifier">mandatory</span>
728
+ 47: <span class="ruby-ivar">@shifts</span> = <span class="ruby-keyword kw">nil</span>
729
+ 48: <span class="ruby-keyword kw">end</span></pre>
724
730
  </div>
725
731
 
726
732
  </div>
@@ -759,10 +765,10 @@ Append another candidate to the candidates list.
759
765
  <div class="method-source-code"
760
766
  id="add-andidate-source">
761
767
  <pre>
762
- <span class="ruby-comment cmt"># File lib/Allocation.rb, line 58</span>
763
- 58: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addCandidate</span>(<span class="ruby-identifier">candidate</span>)
764
- 59: <span class="ruby-ivar">@candidates</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">candidate</span>
765
- 60: <span class="ruby-keyword kw">end</span></pre>
768
+ <span class="ruby-comment cmt"># File lib/Allocation.rb, line 59</span>
769
+ 59: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addCandidate</span>(<span class="ruby-identifier">candidate</span>)
770
+ 60: <span class="ruby-ivar">@candidates</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">candidate</span>
771
+ 61: <span class="ruby-keyword kw">end</span></pre>
766
772
  </div>
767
773
 
768
774
  </div>
@@ -795,37 +801,37 @@ Return the candidate list sorted according to the selectionMode.
795
801
  <div class="method-source-code"
796
802
  id="candidates-source">
797
803
  <pre>
798
- <span class="ruby-comment cmt"># File lib/Allocation.rb, line 71</span>
799
- 71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">candidates</span>(<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-value">1</span>)
800
- 72: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@selectionMode</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-comment cmt"># oder</span>
801
- 73: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@candidates</span>
802
- 74: <span class="ruby-keyword kw">end</span>
803
- 75: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@selectionMode</span> <span class="ruby-operator">==</span> <span class="ruby-value">4</span> <span class="ruby-comment cmt"># random</span>
804
- 76: <span class="ruby-comment cmt"># For a random sorting we put the candidates in a hash with a random</span>
805
- 77: <span class="ruby-comment cmt"># number as key. Then we sort the hash according to the random keys an</span>
806
- 78: <span class="ruby-comment cmt"># use the resuling sequence of the values.</span>
807
- 79: <span class="ruby-identifier">hash</span> = {}
808
- 80: <span class="ruby-ivar">@candidates</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">rand</span>] = <span class="ruby-identifier">c</span> }
809
- 81: <span class="ruby-identifier">twinList</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">sort</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">x</span>, <span class="ruby-identifier">y</span><span class="ruby-operator">|</span> <span class="ruby-identifier">x</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value">0</span>] }
810
- 82: <span class="ruby-identifier">list</span> = []
811
- 83: <span class="ruby-identifier">twinList</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">list</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">v</span> }
812
- 84: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">list</span>
813
- 85: <span class="ruby-keyword kw">end</span>
814
- 86:
815
- 87: <span class="ruby-identifier">list</span> = <span class="ruby-ivar">@candidates</span>.<span class="ruby-identifier">sort</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span>, <span class="ruby-identifier">y</span><span class="ruby-operator">|</span>
816
- 88: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@selectionMode</span>
817
- 89: <span class="ruby-keyword kw">when</span> <span class="ruby-value">1</span> <span class="ruby-comment cmt"># lowest alloc probability</span>
818
- 90: <span class="ruby-identifier">x</span>[<span class="ruby-value str">'criticalness'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value str">'criticalness'</span>, <span class="ruby-identifier">scenarioIdx</span>]
819
- 91: <span class="ruby-keyword kw">when</span> <span class="ruby-value">2</span> <span class="ruby-comment cmt"># lowest allocated load</span>
820
- 92: <span class="ruby-identifier">x</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>]
821
- 93: <span class="ruby-keyword kw">when</span> <span class="ruby-value">3</span> <span class="ruby-comment cmt"># hightes allocated load</span>
822
- 94: <span class="ruby-identifier">y</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">x</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>]
823
- 95: <span class="ruby-keyword kw">else</span>
824
- 96: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unknown selection mode #{@selectionMode}&quot;</span>
825
- 97: <span class="ruby-keyword kw">end</span>
826
- 98: <span class="ruby-keyword kw">end</span>
827
- 99: <span class="ruby-identifier">list</span>
828
- 100: <span class="ruby-keyword kw">end</span></pre>
804
+ <span class="ruby-comment cmt"># File lib/Allocation.rb, line 72</span>
805
+ 72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">candidates</span>(<span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-value">1</span>)
806
+ 73: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">&lt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@selectionMode</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-comment cmt"># oder</span>
807
+ 74: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@candidates</span>
808
+ 75: <span class="ruby-keyword kw">end</span>
809
+ 76: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@selectionMode</span> <span class="ruby-operator">==</span> <span class="ruby-value">4</span> <span class="ruby-comment cmt"># random</span>
810
+ 77: <span class="ruby-comment cmt"># For a random sorting we put the candidates in a hash with a random</span>
811
+ 78: <span class="ruby-comment cmt"># number as key. Then we sort the hash according to the random keys an</span>
812
+ 79: <span class="ruby-comment cmt"># use the resuling sequence of the values.</span>
813
+ 80: <span class="ruby-identifier">hash</span> = {}
814
+ 81: <span class="ruby-ivar">@candidates</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span> <span class="ruby-identifier">hash</span>[<span class="ruby-identifier">rand</span>] = <span class="ruby-identifier">c</span> }
815
+ 82: <span class="ruby-identifier">twinList</span> = <span class="ruby-identifier">hash</span>.<span class="ruby-identifier">sort</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">x</span>, <span class="ruby-identifier">y</span><span class="ruby-operator">|</span> <span class="ruby-identifier">x</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value">0</span>] }
816
+ 83: <span class="ruby-identifier">list</span> = []
817
+ 84: <span class="ruby-identifier">twinList</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">list</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">v</span> }
818
+ 85: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">list</span>
819
+ 86: <span class="ruby-keyword kw">end</span>
820
+ 87:
821
+ 88: <span class="ruby-identifier">list</span> = <span class="ruby-ivar">@candidates</span>.<span class="ruby-identifier">sort</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">x</span>, <span class="ruby-identifier">y</span><span class="ruby-operator">|</span>
822
+ 89: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@selectionMode</span>
823
+ 90: <span class="ruby-keyword kw">when</span> <span class="ruby-value">1</span> <span class="ruby-comment cmt"># lowest alloc probability</span>
824
+ 91: <span class="ruby-identifier">x</span>[<span class="ruby-value str">'criticalness'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value str">'criticalness'</span>, <span class="ruby-identifier">scenarioIdx</span>]
825
+ 92: <span class="ruby-keyword kw">when</span> <span class="ruby-value">2</span> <span class="ruby-comment cmt"># lowest allocated load</span>
826
+ 93: <span class="ruby-identifier">x</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">y</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>]
827
+ 94: <span class="ruby-keyword kw">when</span> <span class="ruby-value">3</span> <span class="ruby-comment cmt"># hightes allocated load</span>
828
+ 95: <span class="ruby-identifier">y</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">x</span>[<span class="ruby-value str">'effort'</span>, <span class="ruby-identifier">scenarioIdx</span>]
829
+ 96: <span class="ruby-keyword kw">else</span>
830
+ 97: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unknown selection mode #{@selectionMode}&quot;</span>
831
+ 98: <span class="ruby-keyword kw">end</span>
832
+ 99: <span class="ruby-keyword kw">end</span>
833
+ 100: <span class="ruby-identifier">list</span>
834
+ 101: <span class="ruby-keyword kw">end</span></pre>
829
835
  </div>
830
836
 
831
837
  </div>
@@ -859,12 +865,12 @@ active at <em>date</em>.
859
865
  <div class="method-source-code"
860
866
  id="on-hift--source">
861
867
  <pre>
862
- <span class="ruby-comment cmt"># File lib/Allocation.rb, line 64</span>
863
- 64: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">onShift?</span>(<span class="ruby-identifier">date</span>)
864
- 65: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@shifts</span>.<span class="ruby-identifier">onShift?</span>(<span class="ruby-identifier">date</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@shifts</span>
865
- 66:
866
- 67: <span class="ruby-keyword kw">true</span>
867
- 68: <span class="ruby-keyword kw">end</span></pre>
868
+ <span class="ruby-comment cmt"># File lib/Allocation.rb, line 65</span>
869
+ 65: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">onShift?</span>(<span class="ruby-identifier">date</span>)
870
+ 66: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@shifts</span>.<span class="ruby-identifier">onShift?</span>(<span class="ruby-identifier">date</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@shifts</span>
871
+ 67:
872
+ 68: <span class="ruby-keyword kw">true</span>
873
+ 69: <span class="ruby-keyword kw">end</span></pre>
868
874
  </div>
869
875
 
870
876
  </div>
@@ -898,12 +904,12 @@ efficiency reasons, we turn the name into a Fixnum value.
898
904
  <div class="method-source-code"
899
905
  id="set-election-ode-source">
900
906
  <pre>
901
- <span class="ruby-comment cmt"># File lib/Allocation.rb, line 51</span>
902
- 51: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setSelectionMode</span>(<span class="ruby-identifier">str</span>)
903
- 52: <span class="ruby-identifier">modes</span> = <span class="ruby-node">%( order minallocated minloaded maxloaded random )</span>
904
- 53: <span class="ruby-ivar">@selectionMode</span> = <span class="ruby-identifier">modes</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">str</span>)
905
- 54: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unknown selection mode #{str}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@selectionMode</span>.<span class="ruby-identifier">nil?</span>
906
- 55: <span class="ruby-keyword kw">end</span></pre>
907
+ <span class="ruby-comment cmt"># File lib/Allocation.rb, line 52</span>
908
+ 52: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setSelectionMode</span>(<span class="ruby-identifier">str</span>)
909
+ 53: <span class="ruby-identifier">modes</span> = <span class="ruby-node">%( order minallocated minloaded maxloaded random )</span>
910
+ 54: <span class="ruby-ivar">@selectionMode</span> = <span class="ruby-identifier">modes</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">str</span>)
911
+ 55: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unknown selection mode #{str}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@selectionMode</span>.<span class="ruby-identifier">nil?</span>
912
+ 56: <span class="ruby-keyword kw">end</span></pre>
907
913
  </div>
908
914
 
909
915
  </div>