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.
- data/CHANGELOG +1144 -2047
- data/README +1 -1
- data/Rakefile +6 -6
- data/data/css/tjmanual.css +20 -0
- data/data/css/tjreport.css +7 -6
- data/doc/AppConfig.html +136 -130
- data/doc/Arguments.html +46 -40
- data/doc/CHANGELOG.html +1162 -2057
- data/doc/COPYING.html +8 -2
- data/doc/Object.html +205 -199
- data/doc/README.html +9 -3
- data/doc/RuntimeConfig.html +75 -69
- data/doc/String.html +69 -63
- data/doc/TaskJuggler.html +350 -291
- data/doc/TaskJuggler/Account.html +26 -20
- data/doc/TaskJuggler/AccountAttribute.html +24 -18
- data/doc/TaskJuggler/AccountScenario.html +24 -18
- data/doc/TaskJuggler/Allocation.html +74 -68
- data/doc/TaskJuggler/AllocationAttribute.html +54 -48
- data/doc/TaskJuggler/AttributeBase.html +172 -93
- data/doc/TaskJuggler/AttributeDefinition.html +22 -16
- data/doc/TaskJuggler/AttributeOverwrite.html +586 -0
- data/doc/TaskJuggler/BatchProcessor.html +263 -257
- data/doc/TaskJuggler/Booking.html +44 -38
- data/doc/TaskJuggler/BookingListAttribute.html +25 -21
- data/doc/TaskJuggler/BooleanAttribute.html +24 -18
- data/doc/TaskJuggler/CSVFile.html +193 -187
- data/doc/TaskJuggler/CellSettingPattern.html +13 -7
- data/doc/TaskJuggler/CellSettingPatternList.html +25 -19
- data/doc/TaskJuggler/Charge.html +49 -43
- data/doc/TaskJuggler/ChargeListAttribute.html +21 -15
- data/doc/TaskJuggler/ChargeSet.html +94 -88
- data/doc/TaskJuggler/ChargeSetListAttribute.html +29 -25
- data/doc/TaskJuggler/CollisionDetector.html +142 -136
- data/doc/TaskJuggler/ColumnListAttribute.html +21 -17
- data/doc/TaskJuggler/ColumnTable.html +50 -44
- data/doc/TaskJuggler/Daemon.html +71 -50
- data/doc/TaskJuggler/DataCache.html +110 -58
- data/doc/TaskJuggler/DataCacheEntry.html +22 -16
- data/doc/TaskJuggler/DateAttribute.html +24 -18
- data/doc/TaskJuggler/DefinitionListAttribute.html +12 -6
- data/doc/TaskJuggler/DependencyListAttribute.html +29 -25
- data/doc/TaskJuggler/DurationAttribute.html +25 -19
- data/doc/TaskJuggler/FileList.html +25 -19
- data/doc/TaskJuggler/FileRecord.html +17 -11
- data/doc/TaskJuggler/FixnumAttribute.html +16 -10
- data/doc/TaskJuggler/FlagListAttribute.html +25 -21
- data/doc/TaskJuggler/FloatAttribute.html +20 -14
- data/doc/TaskJuggler/FormatListAttribute.html +17 -11
- data/doc/TaskJuggler/GanttChart.html +242 -236
- data/doc/TaskJuggler/GanttContainer.html +71 -67
- data/doc/TaskJuggler/GanttHeader.html +113 -107
- data/doc/TaskJuggler/GanttHeaderScaleItem.html +26 -20
- data/doc/TaskJuggler/GanttLine.html +217 -210
- data/doc/TaskJuggler/GanttLoadStack.html +89 -83
- data/doc/TaskJuggler/GanttMilestone.html +11 -6
- data/doc/TaskJuggler/GanttRouter.html +194 -186
- data/doc/TaskJuggler/GanttTaskBar.html +41 -34
- data/doc/TaskJuggler/HTMLDocument.html +52 -46
- data/doc/TaskJuggler/HTMLGraphics.html +58 -52
- data/doc/TaskJuggler/Interval.html +90 -84
- data/doc/TaskJuggler/IntervalList.html +777 -0
- data/doc/TaskJuggler/IntervalListAttribute.html +29 -25
- data/doc/TaskJuggler/JobInfo.html +36 -30
- data/doc/TaskJuggler/Journal.html +188 -177
- data/doc/TaskJuggler/JournalEntry.html +36 -30
- data/doc/TaskJuggler/JournalEntryList.html +88 -82
- data/doc/TaskJuggler/KeywordArray.html +12 -6
- data/doc/TaskJuggler/KeywordDocumentation.html +512 -503
- data/doc/TaskJuggler/Limits.html +111 -105
- data/doc/TaskJuggler/Limits/Limit.html +71 -65
- data/doc/TaskJuggler/LimitsAttribute.html +21 -15
- data/doc/TaskJuggler/ListAttributeBase.html +16 -10
- data/doc/TaskJuggler/Log.html +111 -105
- data/doc/TaskJuggler/LogFile.html +54 -48
- data/doc/TaskJuggler/LogicalAttribute.html +35 -29
- data/doc/TaskJuggler/LogicalExpression.html +32 -26
- data/doc/TaskJuggler/LogicalExpressionAttribute.html +16 -10
- data/doc/TaskJuggler/LogicalExpressionListAttribute.html +671 -0
- data/doc/TaskJuggler/LogicalFlag.html +24 -18
- data/doc/TaskJuggler/LogicalFunction.html +164 -158
- data/doc/TaskJuggler/LogicalOperation.html +138 -132
- data/doc/TaskJuggler/Macro.html +14 -8
- data/doc/TaskJuggler/MacroTable.html +42 -36
- data/doc/TaskJuggler/ManagerResponsibilities.html +19 -13
- data/doc/TaskJuggler/ManagerStatusRecord.html +23 -17
- data/doc/TaskJuggler/Message.html +56 -50
- data/doc/TaskJuggler/MessageHandler.html +73 -67
- data/doc/TaskJuggler/Navigator.html +92 -86
- data/doc/TaskJuggler/NavigatorElement.html +88 -82
- data/doc/TaskJuggler/NikuProject.html +15 -9
- data/doc/TaskJuggler/NikuReport.html +405 -370
- data/doc/TaskJuggler/NikuResource.html +13 -7
- data/doc/TaskJuggler/NodeListAttribute.html +13 -9
- data/doc/TaskJuggler/PlaceHolderCell.html +22 -16
- data/doc/TaskJuggler/ProcessIntercom.html +116 -110
- data/doc/TaskJuggler/ProcessIntercomIface.html +39 -33
- data/doc/TaskJuggler/Project.html +1064 -895
- data/doc/TaskJuggler/ProjectBroker.html +439 -366
- data/doc/TaskJuggler/ProjectBrokerIface.html +63 -53
- data/doc/TaskJuggler/ProjectFileParser.html +329 -319
- data/doc/TaskJuggler/ProjectFileScanner.html +351 -345
- data/doc/TaskJuggler/ProjectRecord.html +66 -60
- data/doc/TaskJuggler/ProjectServer.html +287 -280
- data/doc/TaskJuggler/ProjectServerIface.html +43 -37
- data/doc/TaskJuggler/PropertyAttribute.html +16 -10
- data/doc/TaskJuggler/PropertyList.html +205 -199
- data/doc/TaskJuggler/PropertySet.html +264 -296
- data/doc/TaskJuggler/PropertyTreeNode.html +455 -505
- data/doc/TaskJuggler/Query.html +309 -524
- data/doc/TaskJuggler/RTFHandlers.html +17 -11
- data/doc/TaskJuggler/RTFNavigator.html +33 -27
- data/doc/TaskJuggler/RTFQuery.html +135 -129
- data/doc/TaskJuggler/RTFReport.html +63 -57
- data/doc/TaskJuggler/RTFReportLink.html +55 -49
- data/doc/TaskJuggler/RTFWithQuerySupport.html +17 -11
- data/doc/TaskJuggler/RealFormat.html +64 -58
- data/doc/TaskJuggler/RealFormatAttribute.html +12 -6
- data/doc/TaskJuggler/ReferenceAttribute.html +35 -29
- data/doc/TaskJuggler/Report.html +294 -249
- data/doc/TaskJuggler/ReportBase.html +229 -223
- data/doc/TaskJuggler/ReportContext.html +52 -46
- data/doc/TaskJuggler/ReportServer.html +143 -137
- data/doc/TaskJuggler/ReportServerIface.html +51 -43
- data/doc/TaskJuggler/ReportServerRecord.html +36 -30
- data/doc/TaskJuggler/ReportServlet.html +167 -140
- data/doc/TaskJuggler/ReportTable.html +137 -131
- data/doc/TaskJuggler/ReportTableCell.html +332 -292
- data/doc/TaskJuggler/ReportTableColumn.html +46 -40
- data/doc/TaskJuggler/ReportTableLegend.html +43 -38
- data/doc/TaskJuggler/ReportTableLine.html +66 -60
- data/doc/TaskJuggler/Resource.html +166 -160
- data/doc/TaskJuggler/ResourceListAttribute.html +54 -32
- data/doc/TaskJuggler/ResourceListRE.html +47 -41
- data/doc/TaskJuggler/ResourceScenario.html +671 -644
- data/doc/TaskJuggler/RichText.html +51 -45
- data/doc/TaskJuggler/RichTextAttribute.html +28 -22
- data/doc/TaskJuggler/RichTextDocument.html +96 -90
- data/doc/TaskJuggler/RichTextElement.html +503 -497
- data/doc/TaskJuggler/RichTextFunctionExample.html +41 -35
- data/doc/TaskJuggler/RichTextFunctionHandler.html +19 -13
- data/doc/TaskJuggler/RichTextImage.html +14 -8
- data/doc/TaskJuggler/RichTextIntermediate.html +86 -80
- data/doc/TaskJuggler/RichTextParser.html +59 -53
- data/doc/TaskJuggler/RichTextScanner.html +184 -178
- data/doc/TaskJuggler/RichTextSnip.html +69 -63
- data/doc/TaskJuggler/RichTextSyntaxRules.html +416 -410
- data/doc/TaskJuggler/Scenario.html +13 -7
- data/doc/TaskJuggler/ScenarioData.html +40 -34
- data/doc/TaskJuggler/ScenarioListAttribute.html +21 -15
- data/doc/TaskJuggler/Scoreboard.html +129 -107
- data/doc/TaskJuggler/SheetHandlerBase.html +245 -239
- data/doc/TaskJuggler/SheetReceiver.html +333 -327
- data/doc/TaskJuggler/SheetSender.html +227 -221
- data/doc/TaskJuggler/Shift.html +26 -20
- data/doc/TaskJuggler/ShiftAssignment.html +45 -39
- data/doc/TaskJuggler/ShiftAssignments.html +178 -172
- data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +21 -15
- data/doc/TaskJuggler/ShiftScenario.html +29 -23
- data/doc/TaskJuggler/SimpleQueryExpander.html +36 -30
- data/doc/TaskJuggler/SortListAttribute.html +17 -13
- data/doc/TaskJuggler/SourceFileInfo.html +19 -13
- data/doc/TaskJuggler/StatusSheetReceiver.html +31 -25
- data/doc/TaskJuggler/StatusSheetReport.html +166 -159
- data/doc/TaskJuggler/StatusSheetSender.html +80 -74
- data/doc/TaskJuggler/StringAttribute.html +20 -14
- data/doc/TaskJuggler/SymbolAttribute.html +16 -10
- data/doc/TaskJuggler/SyntaxReference.html +231 -225
- data/doc/TaskJuggler/TOCEntry.html +46 -40
- data/doc/TaskJuggler/TSResourceRecord.html +15 -9
- data/doc/TaskJuggler/TSTaskRecord.html +16 -10
- data/doc/TaskJuggler/TableColumnDefinition.html +84 -39
- data/doc/TaskJuggler/TableOfContents.html +28 -22
- data/doc/TaskJuggler/TableReport.html +906 -866
- data/doc/TaskJuggler/Task.html +99 -93
- data/doc/TaskJuggler/TaskDependency.html +24 -18
- data/doc/TaskJuggler/TaskListAttribute.html +29 -25
- data/doc/TaskJuggler/TaskListRE.html +46 -39
- data/doc/TaskJuggler/TaskScenario.html +2218 -1965
- data/doc/TaskJuggler/TextFormatter.html +154 -148
- data/doc/TaskJuggler/TextParser.html +362 -348
- data/doc/TaskJuggler/TextParser/Pattern.html +313 -307
- data/doc/TaskJuggler/TextParser/Rule.html +147 -141
- data/doc/TaskJuggler/TextParser/StackElement.html +58 -52
- data/doc/TaskJuggler/TextParser/State.html +88 -82
- data/doc/TaskJuggler/TextParser/StateTransition.html +42 -36
- data/doc/TaskJuggler/TextParser/TextParserResultArray.html +20 -14
- data/doc/TaskJuggler/TextParser/TokenDoc.html +19 -13
- data/doc/TaskJuggler/TextReport.html +80 -74
- data/doc/TaskJuggler/TextScanner.html +284 -272
- data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +14 -8
- data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +21 -15
- data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +15 -9
- data/doc/TaskJuggler/TextScanner/StreamHandle.html +102 -96
- data/doc/TaskJuggler/TimeSheet.html +123 -117
- data/doc/TaskJuggler/TimeSheetReceiver.html +28 -22
- data/doc/TaskJuggler/TimeSheetRecord.html +212 -206
- data/doc/TaskJuggler/TimeSheetReport.html +206 -199
- data/doc/TaskJuggler/TimeSheetSender.html +27 -21
- data/doc/TaskJuggler/TimeSheetSummary.html +140 -134
- data/doc/TaskJuggler/TimeSheets.html +20 -14
- data/doc/TaskJuggler/Tj3AppBase.html +100 -94
- data/doc/TaskJuggler/Tj3Client.html +407 -483
- data/doc/TaskJuggler/Tj3Daemon.html +116 -107
- data/doc/TaskJuggler/Tj3SheetAppBase.html +45 -39
- data/doc/TaskJuggler/Tj3SsReceiver.html +31 -25
- data/doc/TaskJuggler/Tj3SsSender.html +64 -58
- data/doc/TaskJuggler/Tj3TsReceiver.html +31 -25
- data/doc/TaskJuggler/Tj3TsSender.html +51 -45
- data/doc/TaskJuggler/Tj3TsSummary.html +59 -53
- data/doc/TaskJuggler/TjException.html +13 -7
- data/doc/TaskJuggler/TjTime.html +444 -438
- data/doc/TaskJuggler/TjpExample.html +84 -78
- data/doc/TaskJuggler/TjpExportRE.html +356 -349
- data/doc/TaskJuggler/TjpSyntaxRules.html +4279 -4151
- data/doc/TaskJuggler/URLParameter.html +16 -10
- data/doc/TaskJuggler/UserManual.html +185 -179
- data/doc/TaskJuggler/VimSyntax.html +144 -138
- data/doc/TaskJuggler/WebServer.html +46 -39
- data/doc/TaskJuggler/WelcomePage.html +769 -0
- data/doc/TaskJuggler/WorkingHours.html +185 -179
- data/doc/TaskJuggler/WorkingHoursAttribute.html +42 -36
- data/doc/TaskJuggler/XMLBlob.html +21 -15
- data/doc/TaskJuggler/XMLComment.html +17 -11
- data/doc/TaskJuggler/XMLDocument.html +33 -27
- data/doc/TaskJuggler/XMLElement.html +97 -91
- data/doc/TaskJuggler/XMLNamedText.html +13 -7
- data/doc/TaskJuggler/XMLText.html +32 -26
- data/doc/index.html +601 -563
- data/doc/lib/AccountScenario_rb.html +5 -3
- data/doc/lib/Account_rb.html +5 -3
- data/doc/lib/Allocation_rb.html +5 -3
- data/doc/lib/AppConfig_rb.html +5 -3
- data/doc/lib/AttributeBase_rb.html +5 -3
- data/doc/lib/AttributeDefinition_rb.html +5 -3
- data/doc/lib/Attributes_rb.html +5 -3
- data/doc/lib/BatchProcessor_rb.html +5 -3
- data/doc/lib/Booking_rb.html +5 -3
- data/doc/lib/ChargeSet_rb.html +5 -3
- data/doc/lib/Charge_rb.html +5 -3
- data/doc/lib/DataCache_rb.html +5 -3
- data/doc/lib/FileList_rb.html +5 -3
- data/doc/lib/HTMLDocument_rb.html +5 -3
- data/doc/lib/IntervalList_rb.html +69 -0
- data/doc/lib/Interval_rb.html +5 -3
- data/doc/lib/Journal_rb.html +5 -3
- data/doc/lib/KeywordArray_rb.html +5 -3
- data/doc/lib/KeywordDocumentation_rb.html +5 -3
- data/doc/lib/Limits_rb.html +5 -3
- data/doc/lib/LogFile_rb.html +5 -3
- data/doc/lib/Log_rb.html +5 -3
- data/doc/lib/LogicalExpression_rb.html +5 -3
- data/doc/lib/LogicalFunction_rb.html +5 -3
- data/doc/lib/LogicalOperation_rb.html +5 -3
- data/doc/lib/MacroTable_rb.html +5 -3
- data/doc/lib/MessageHandler_rb.html +5 -3
- data/doc/lib/ProjectFileParser_rb.html +5 -3
- data/doc/lib/ProjectFileScanner_rb.html +5 -3
- data/doc/lib/Project_rb.html +5 -3
- data/doc/lib/PropertyList_rb.html +5 -3
- data/doc/lib/PropertySet_rb.html +5 -3
- data/doc/lib/PropertyTreeNode_rb.html +5 -3
- data/doc/lib/Query_rb.html +5 -3
- data/doc/lib/RTFHandlers_rb.html +5 -3
- data/doc/lib/RTFNavigator_rb.html +5 -3
- data/doc/lib/RTFQuery_rb.html +5 -3
- data/doc/lib/RTFReportLink_rb.html +5 -3
- data/doc/lib/RTFReport_rb.html +5 -3
- data/doc/lib/RTFWithQuerySupport_rb.html +5 -3
- data/doc/lib/RealFormat_rb.html +5 -3
- data/doc/lib/ResourceScenario_rb.html +5 -3
- data/doc/lib/Resource_rb.html +5 -3
- data/doc/lib/RichTextDocument_rb.html +5 -3
- data/doc/lib/RichTextElement_rb.html +5 -3
- data/doc/lib/RichTextFunctionExample_rb.html +5 -3
- data/doc/lib/RichTextFunctionHandler_rb.html +5 -3
- data/doc/lib/RichTextParser_rb.html +5 -3
- data/doc/lib/RichTextScanner_rb.html +5 -3
- data/doc/lib/RichTextSnip_rb.html +5 -3
- data/doc/lib/RichTextSyntaxRules_rb.html +5 -3
- data/doc/lib/RichText_rb.html +5 -3
- data/doc/lib/RuntimeConfig_rb.html +5 -3
- data/doc/lib/ScenarioData_rb.html +5 -3
- data/doc/lib/Scenario_rb.html +5 -3
- data/doc/lib/Scoreboard_rb.html +7 -3
- data/doc/lib/SheetHandlerBase_rb.html +5 -3
- data/doc/lib/SheetReceiver_rb.html +5 -3
- data/doc/lib/SheetSender_rb.html +5 -3
- data/doc/lib/ShiftAssignments_rb.html +5 -3
- data/doc/lib/ShiftScenario_rb.html +5 -3
- data/doc/lib/Shift_rb.html +5 -3
- data/doc/lib/SimpleQueryExpander_rb.html +5 -3
- data/doc/lib/SourceFileInfo_rb.html +5 -3
- data/doc/lib/StatusSheetReceiver_rb.html +5 -3
- data/doc/lib/StatusSheetSender_rb.html +5 -3
- data/doc/lib/SyntaxReference_rb.html +5 -3
- data/doc/lib/TOCEntry_rb.html +5 -3
- data/doc/lib/TableColumnDefinition_rb.html +5 -3
- data/doc/lib/TableOfContents_rb.html +5 -3
- data/doc/lib/TaskDependency_rb.html +5 -3
- data/doc/lib/TaskJuggler_rb.html +5 -3
- data/doc/lib/TaskScenario_rb.html +5 -3
- data/doc/lib/Task_rb.html +5 -3
- data/doc/lib/TextFormatter_rb.html +6 -4
- data/doc/lib/TextParser/Pattern_rb.html +5 -3
- data/doc/lib/TextParser/Rule_rb.html +5 -3
- data/doc/lib/TextParser/StackElement_rb.html +5 -3
- data/doc/lib/TextParser/State_rb.html +6 -4
- data/doc/lib/TextParser/TokenDoc_rb.html +5 -3
- data/doc/lib/TextParser_rb.html +5 -3
- data/doc/lib/TextScanner_rb.html +5 -3
- data/doc/lib/TimeSheetReceiver_rb.html +5 -3
- data/doc/lib/TimeSheetSender_rb.html +5 -3
- data/doc/lib/TimeSheetSummary_rb.html +6 -4
- data/doc/lib/TimeSheets_rb.html +5 -3
- data/doc/lib/Tj3AppBase_rb.html +5 -3
- data/doc/lib/Tj3Config_rb.html +5 -3
- data/doc/lib/Tj3SheetAppBase_rb.html +5 -3
- data/doc/lib/TjException_rb.html +5 -3
- data/doc/lib/TjTime_rb.html +5 -3
- data/doc/lib/TjpExample_rb.html +5 -3
- data/doc/lib/TjpSyntaxRules_rb.html +5 -3
- data/doc/lib/URLParameter_rb.html +5 -3
- data/doc/lib/UTF8String_rb.html +5 -3
- data/doc/lib/UserManual_rb.html +5 -3
- data/doc/lib/VimSyntax_rb.html +6 -4
- data/doc/lib/WorkingHours_rb.html +5 -3
- data/doc/lib/XMLDocument_rb.html +5 -3
- data/doc/lib/XMLElement_rb.html +5 -3
- data/doc/lib/daemon/Daemon_rb.html +5 -3
- data/doc/lib/daemon/ProcessIntercom_rb.html +7 -3
- data/doc/lib/daemon/ProjectBroker_rb.html +5 -3
- data/doc/lib/daemon/ProjectServer_rb.html +5 -3
- data/doc/lib/daemon/ReportServer_rb.html +5 -3
- data/doc/lib/daemon/ReportServlet_rb.html +69 -0
- data/doc/lib/daemon/WebServer_rb.html +9 -3
- data/doc/lib/daemon/WelcomePage_rb.html +71 -0
- data/doc/lib/deep_copy_rb.html +5 -3
- data/doc/lib/reports/CSVFile_rb.html +5 -3
- data/doc/lib/reports/CollisionDetector_rb.html +5 -3
- data/doc/lib/reports/ColumnTable_rb.html +5 -3
- data/doc/lib/reports/GanttChart_rb.html +5 -3
- data/doc/lib/reports/GanttContainer_rb.html +5 -3
- data/doc/lib/reports/GanttHeaderScaleItem_rb.html +5 -3
- data/doc/lib/reports/GanttHeader_rb.html +5 -3
- data/doc/lib/reports/GanttLine_rb.html +5 -3
- data/doc/lib/reports/GanttLoadStack_rb.html +5 -3
- data/doc/lib/reports/GanttMilestone_rb.html +5 -3
- data/doc/lib/reports/GanttRouter_rb.html +5 -3
- data/doc/lib/reports/GanttTaskBar_rb.html +5 -3
- data/doc/lib/reports/HTMLGraphics_rb.html +5 -3
- data/doc/lib/reports/Navigator_rb.html +5 -3
- data/doc/lib/reports/NikuReport_rb.html +5 -3
- data/doc/lib/reports/ReportBase_rb.html +5 -3
- data/doc/lib/reports/ReportContext_rb.html +5 -3
- data/doc/lib/reports/ReportTableCell_rb.html +5 -3
- data/doc/lib/reports/ReportTableColumn_rb.html +5 -3
- data/doc/lib/reports/ReportTableLegend_rb.html +5 -3
- data/doc/lib/reports/ReportTableLine_rb.html +5 -3
- data/doc/lib/reports/ReportTable_rb.html +5 -3
- data/doc/lib/reports/Report_rb.html +5 -3
- data/doc/lib/reports/ResourceListRE_rb.html +5 -3
- data/doc/lib/reports/StatusSheetReport_rb.html +5 -3
- data/doc/lib/reports/TableReport_rb.html +5 -3
- data/doc/lib/reports/TaskListRE_rb.html +5 -3
- data/doc/lib/reports/TextReport_rb.html +5 -3
- data/doc/lib/reports/TimeSheetReport_rb.html +5 -3
- data/doc/lib/reports/TjpExportRE_rb.html +5 -3
- data/doc/lib/{taskjuggler3_rb.html → tj3_rb.html} +7 -5
- data/doc/lib/tj3client_rb.html +5 -3
- data/doc/lib/tj3d_rb.html +6 -4
- data/doc/lib/tj3man_rb.html +5 -3
- data/doc/lib/tj3ss_receiver_rb.html +5 -3
- data/doc/lib/tj3ss_sender_rb.html +5 -3
- data/doc/lib/tj3ts_receiver_rb.html +5 -3
- data/doc/lib/tj3ts_sender_rb.html +5 -3
- data/doc/lib/tj3ts_summary_rb.html +5 -3
- data/examples/tutorial.tjp +13 -5
- data/gem_spec.rb +3 -0
- data/lib/Account.rb +2 -1
- data/lib/AccountScenario.rb +2 -1
- data/lib/Allocation.rb +2 -1
- data/lib/AppConfig.rb +2 -1
- data/lib/AttributeBase.rb +19 -5
- data/lib/AttributeDefinition.rb +2 -1
- data/lib/Attributes.rb +49 -38
- data/lib/BatchProcessor.rb +2 -1
- data/lib/Booking.rb +2 -1
- data/lib/Charge.rb +2 -1
- data/lib/ChargeSet.rb +2 -1
- data/lib/DataCache.rb +15 -1
- data/lib/FileList.rb +2 -1
- data/lib/HTMLDocument.rb +2 -1
- data/lib/Interval.rb +2 -1
- data/lib/IntervalList.rb +100 -0
- data/lib/Journal.rb +8 -2
- data/lib/KeywordArray.rb +2 -1
- data/lib/KeywordDocumentation.rb +10 -6
- data/lib/Limits.rb +2 -1
- data/lib/Log.rb +3 -2
- data/lib/LogFile.rb +2 -1
- data/lib/LogicalExpression.rb +2 -1
- data/lib/LogicalFunction.rb +2 -1
- data/lib/LogicalOperation.rb +2 -1
- data/lib/MacroTable.rb +2 -1
- data/lib/MessageHandler.rb +2 -1
- data/lib/Project.rb +92 -25
- data/lib/ProjectFileParser.rb +7 -2
- data/lib/ProjectFileScanner.rb +2 -1
- data/lib/PropertyList.rb +2 -1
- data/lib/PropertySet.rb +2 -6
- data/lib/PropertyTreeNode.rb +22 -44
- data/lib/Query.rb +32 -13
- data/lib/RTFHandlers.rb +2 -1
- data/lib/RTFNavigator.rb +2 -1
- data/lib/RTFQuery.rb +3 -2
- data/lib/RTFReport.rb +2 -1
- data/lib/RTFReportLink.rb +2 -1
- data/lib/RTFWithQuerySupport.rb +2 -1
- data/lib/RealFormat.rb +2 -1
- data/lib/Resource.rb +2 -1
- data/lib/ResourceScenario.rb +35 -14
- data/lib/RichText.rb +2 -1
- data/lib/RichTextDocument.rb +2 -1
- data/lib/RichTextElement.rb +2 -1
- data/lib/RichTextFunctionExample.rb +2 -1
- data/lib/RichTextFunctionHandler.rb +2 -1
- data/lib/RichTextParser.rb +2 -1
- data/lib/RichTextScanner.rb +2 -1
- data/lib/RichTextSnip.rb +2 -1
- data/lib/RichTextSyntaxRules.rb +2 -1
- data/lib/RuntimeConfig.rb +2 -1
- data/lib/Scenario.rb +2 -1
- data/lib/ScenarioData.rb +2 -1
- data/lib/Scoreboard.rb +27 -8
- data/lib/SheetHandlerBase.rb +2 -1
- data/lib/SheetReceiver.rb +2 -1
- data/lib/SheetSender.rb +2 -1
- data/lib/Shift.rb +2 -1
- data/lib/ShiftAssignments.rb +2 -1
- data/lib/ShiftScenario.rb +2 -1
- data/lib/SimpleQueryExpander.rb +2 -1
- data/lib/SourceFileInfo.rb +2 -1
- data/lib/StatusSheetReceiver.rb +2 -1
- data/lib/StatusSheetSender.rb +2 -1
- data/lib/SyntaxReference.rb +2 -1
- data/lib/TOCEntry.rb +2 -1
- data/lib/TableColumnDefinition.rb +9 -2
- data/lib/TableOfContents.rb +2 -1
- data/lib/Task.rb +2 -1
- data/lib/TaskDependency.rb +2 -1
- data/lib/TaskJuggler.rb +8 -6
- data/lib/TaskScenario.rb +337 -153
- data/lib/TextFormatter.rb +3 -2
- data/lib/TextParser.rb +7 -2
- data/lib/TextParser/Pattern.rb +2 -1
- data/lib/TextParser/Rule.rb +2 -1
- data/lib/TextParser/StackElement.rb +2 -1
- data/lib/TextParser/State.rb +3 -2
- data/lib/TextParser/TokenDoc.rb +2 -1
- data/lib/TextScanner.rb +12 -5
- data/lib/TimeSheetReceiver.rb +2 -1
- data/lib/TimeSheetSender.rb +2 -1
- data/lib/TimeSheetSummary.rb +3 -2
- data/lib/TimeSheets.rb +2 -1
- data/lib/Tj3AppBase.rb +6 -5
- data/lib/Tj3Config.rb +5 -4
- data/lib/Tj3SheetAppBase.rb +2 -1
- data/lib/TjException.rb +2 -1
- data/lib/TjTime.rb +2 -1
- data/lib/TjpExample.rb +2 -1
- data/lib/TjpSyntaxRules.rb +264 -65
- data/lib/URLParameter.rb +2 -1
- data/lib/UTF8String.rb +2 -1
- data/lib/UserManual.rb +2 -1
- data/lib/VimSyntax.rb +3 -2
- data/lib/WorkingHours.rb +2 -1
- data/lib/XMLDocument.rb +2 -1
- data/lib/XMLElement.rb +2 -1
- data/lib/daemon/Daemon.rb +3 -1
- data/lib/daemon/ProcessIntercom.rb +3 -1
- data/lib/daemon/ProjectBroker.rb +84 -32
- data/lib/daemon/ProjectServer.rb +5 -3
- data/lib/daemon/ReportServer.rb +8 -5
- data/lib/daemon/ReportServlet.rb +166 -0
- data/lib/daemon/WebServer.rb +6 -150
- data/lib/daemon/WelcomePage.rb +80 -0
- data/lib/deep_copy.rb +2 -1
- data/lib/reports/CSVFile.rb +2 -1
- data/lib/reports/CollisionDetector.rb +2 -1
- data/lib/reports/ColumnTable.rb +2 -1
- data/lib/reports/GanttChart.rb +2 -1
- data/lib/reports/GanttContainer.rb +3 -4
- data/lib/reports/GanttHeader.rb +2 -1
- data/lib/reports/GanttHeaderScaleItem.rb +2 -1
- data/lib/reports/GanttLine.rb +12 -10
- data/lib/reports/GanttLoadStack.rb +2 -1
- data/lib/reports/GanttMilestone.rb +3 -3
- data/lib/reports/GanttRouter.rb +4 -1
- data/lib/reports/GanttTaskBar.rb +9 -7
- data/lib/reports/HTMLGraphics.rb +2 -1
- data/lib/reports/Navigator.rb +2 -1
- data/lib/reports/NikuReport.rb +79 -49
- data/lib/reports/Report.rb +42 -10
- data/lib/reports/ReportBase.rb +2 -1
- data/lib/reports/ReportContext.rb +2 -1
- data/lib/reports/ReportTable.rb +2 -1
- data/lib/reports/ReportTableCell.rb +63 -28
- data/lib/reports/ReportTableColumn.rb +2 -1
- data/lib/reports/ReportTableLegend.rb +5 -5
- data/lib/reports/ReportTableLine.rb +2 -1
- data/lib/reports/ResourceListRE.rb +2 -1
- data/lib/reports/StatusSheetReport.rb +4 -2
- data/lib/reports/TableReport.rb +42 -38
- data/lib/reports/TaskListRE.rb +4 -2
- data/lib/reports/TextReport.rb +2 -1
- data/lib/reports/TimeSheetReport.rb +4 -2
- data/lib/reports/TjpExportRE.rb +4 -2
- data/lib/{taskjuggler3.rb → tj3.rb} +6 -5
- data/lib/tj3client.rb +19 -36
- data/lib/tj3d.rb +6 -2
- data/lib/tj3man.rb +4 -3
- data/lib/tj3ss_receiver.rb +2 -1
- data/lib/tj3ss_sender.rb +2 -1
- data/lib/tj3ts_receiver.rb +2 -1
- data/lib/tj3ts_sender.rb +2 -1
- data/lib/tj3ts_summary.rb +2 -1
- data/manual/Day_To_Day_Juggling +36 -0
- data/manual/How_To_Contribute +9 -4
- data/manual/Installation +10 -3
- data/manual/TaskJuggler_Internals +0 -2
- data/manual/Tutorial +25 -3
- data/prj_cfg.rb +4 -2
- data/spec/IntervalList_spec.rb +138 -0
- data/spec/ProjectBroker_spec.rb +133 -0
- data/tasks/changelog.rake +41 -24
- data/tasks/csts.rake +1 -0
- data/tasks/gem.rake +1 -0
- data/tasks/rcov.rake +1 -1
- data/tasks/spec.rake +7 -0
- data/tasks/test.rake +1 -0
- data/test/MessageChecker.rb +2 -1
- data/test/TestSuite/CSV-Reports/niku.tjp +70 -0
- data/test/TestSuite/CSV-Reports/{celltext-Reference.csv → refs/celltext.csv} +0 -0
- data/test/TestSuite/CSV-Reports/refs/niku.csv +5 -0
- data/test/TestSuite/CSV-Reports/{resourcereport-Reference.csv → refs/resourcereport.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{resourcereport_with_tasks-Reference.csv → refs/resourcereport_with_tasks.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortByTree-Reference.csv → refs/sortByTree.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_duration.down-Reference.csv → refs/sortBy_duration.down.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_effort.up-Reference.csv → refs/sortBy_effort.up.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_plan.start.down-Reference.csv → refs/sortBy_plan.start.down.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{taskreport-Reference.csv → refs/taskreport.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{taskreport_with_resources-Reference.csv → refs/taskreport_with_resources.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{weekly-Reference.csv → refs/weekly.csv} +0 -0
- data/test/TestSuite/HTML-Reports/Alerts.tjp +12 -0
- data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -2
- data/test/TestSuite/Scheduler/Correct/Container-2.tjp +1 -2
- data/test/TestSuite/Scheduler/Correct/InheritedAttributes.tjp +77 -0
- data/test/TestSuite/Scheduler/Correct/WeakDeps.tjp +40 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_12.tjp +2 -2
- data/test/TestSuite/Scheduler/Errors/loop_detected_13.tjp +3 -4
- data/test/TestSuite/Scheduler/Errors/loop_detected_3.tjp +2 -2
- data/test/TestSuite/Scheduler/Errors/loop_detected_6.tjp +8 -7
- data/test/TestSuite/Scheduler/Errors/onend_wrong_direction.tjp +19 -0
- data/test/TestSuite/Scheduler/Errors/onstart_wrong_direction.tjp +18 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_multi.tjp +1 -2
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/boss_2002-03-02.tji +46 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/dev2_2002-03-02.tji +22 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/resources.yml +11 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/acceptable_intervals +1 -0
- data/test/TestSuite/StatusSheets/sender.log +256 -0
- data/test/TestSuite/StatusSheets/statussheets.log +9 -0
- data/test/TestSuite/StatusSheets/tj3d.log +395 -0
- data/test/TestSuite/Syntax/Correct/Limits-1.tjp +2 -0
- data/test/TestSuite/Syntax/Correct/Niku.tjp +6 -1
- data/test/TestSuite/Syntax/Correct/Scenario.tjp +4 -1
- data/test/TestSuite/Syntax/Correct/Supplement.tjp +12 -5
- data/test/TestSuite/Syntax/Correct/TaskPrefix.tji +3 -0
- data/test/TestSuite/Syntax/Correct/TaskPrefix.tjp +24 -0
- data/test/TestSuite/Syntax/Correct/css/tjreport.css +7 -2
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +15 -5
- data/test/all.rb +2 -4
- data/test/test_BatchProcessor.rb +2 -1
- data/test/test_CSV-Reports.rb +34 -23
- data/test/test_CSVFile.rb +2 -1
- data/test/test_CollisionDetector.rb +3 -2
- data/test/test_Journal.rb +2 -1
- data/test/test_Limits.rb +2 -1
- data/test/test_LogicalExpression.rb +2 -1
- data/test/test_MacroTable.rb +2 -1
- data/test/test_Project.rb +3 -2
- data/test/test_ProjectFileScanner.rb +2 -1
- data/test/test_PropertySet.rb +2 -1
- data/test/test_Query.rb +2 -1
- data/test/test_RealFormat.rb +2 -1
- data/test/test_ReportGenerator.rb +2 -1
- data/test/test_RichText.rb +2 -1
- data/test/test_Scheduler.rb +2 -1
- data/test/test_ShiftAssignments.rb +2 -1
- data/test/test_SimpleQueryExpander.rb +2 -1
- data/test/test_Syntax.rb +2 -1
- data/test/test_TextFormatter.rb +3 -2
- data/test/test_TjTime.rb +2 -1
- data/test/test_TjpExample.rb +2 -1
- data/test/test_URLParameter.rb +2 -1
- data/test/test_UTF8String.rb +2 -1
- data/test/test_WorkingHours.rb +2 -1
- data/test/test_deep_copy.rb +2 -1
- metadata +74 -20
- data/doc/StringIO.html +0 -595
- data/test/TestSuite/Scheduler/Errors/loop_detected_7.tjp +0 -46
- data/test/TestSuite/Scheduler/Errors/loop_detected_8.tjp +0 -51
- data/test/TestSuite/Scheduler/Errors/multiple_durations.tjp +0 -11
|
@@ -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>
|
|
@@ -623,13 +629,13 @@ Create a new <a href="TjpExample.html">TjpExample</a> object.
|
|
|
623
629
|
<div class="method-source-code"
|
|
624
630
|
id="new-source">
|
|
625
631
|
<pre>
|
|
626
|
-
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
632
|
+
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line 36</span>
|
|
633
|
+
36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
|
|
634
|
+
37: <span class="ruby-ivar">@snippets</span> = { }
|
|
635
|
+
38: <span class="ruby-comment cmt"># Here we will store the complete example.</span>
|
|
636
|
+
39: <span class="ruby-ivar">@snippets</span>[<span class="ruby-value str">'full text'</span>] = []
|
|
637
|
+
40: <span class="ruby-ivar">@file</span> = <span class="ruby-keyword kw">nil</span>
|
|
638
|
+
41: <span class="ruby-keyword kw">end</span></pre>
|
|
633
639
|
</div>
|
|
634
640
|
|
|
635
641
|
</div>
|
|
@@ -668,12 +674,12 @@ Use this function to process the file called <em>fileName</em>.
|
|
|
668
674
|
<div class="method-source-code"
|
|
669
675
|
id="open-source">
|
|
670
676
|
<pre>
|
|
671
|
-
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
+
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line 44</span>
|
|
678
|
+
44: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">open</span>(<span class="ruby-identifier">fileName</span>)
|
|
679
|
+
45: <span class="ruby-ivar">@file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">fileName</span>, <span class="ruby-value str">'r'</span>)
|
|
680
|
+
46: <span class="ruby-identifier">process</span>
|
|
681
|
+
47: <span class="ruby-ivar">@file</span>.<span class="ruby-identifier">close</span>
|
|
682
|
+
48: <span class="ruby-keyword kw">end</span></pre>
|
|
677
683
|
</div>
|
|
678
684
|
|
|
679
685
|
</div>
|
|
@@ -707,11 +713,11 @@ Use this function to process the <a href="../String.html">String</a>
|
|
|
707
713
|
<div class="method-source-code"
|
|
708
714
|
id="parse-source">
|
|
709
715
|
<pre>
|
|
710
|
-
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
716
|
+
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line 51</span>
|
|
717
|
+
51: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">parse</span>(<span class="ruby-identifier">text</span>)
|
|
718
|
+
52: <span class="ruby-ivar">@file</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>)
|
|
719
|
+
53: <span class="ruby-identifier">process</span>
|
|
720
|
+
54: <span class="ruby-keyword kw">end</span></pre>
|
|
715
721
|
</div>
|
|
716
722
|
|
|
717
723
|
</div>
|
|
@@ -744,15 +750,15 @@ This method returns the snip identified by <em>tag</em>.
|
|
|
744
750
|
<div class="method-source-code"
|
|
745
751
|
id="to-s-source">
|
|
746
752
|
<pre>
|
|
747
|
-
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
753
|
+
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line 57</span>
|
|
754
|
+
57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">tag</span> = <span class="ruby-keyword kw">nil</span>)
|
|
755
|
+
58: <span class="ruby-identifier">tag</span> = <span class="ruby-value str">'full text'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tag</span>
|
|
756
|
+
59: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@snippets</span>[<span class="ruby-identifier">tag</span>]
|
|
757
|
+
60:
|
|
758
|
+
61: <span class="ruby-identifier">s</span> = <span class="ruby-value str">''</span>
|
|
759
|
+
62: <span class="ruby-ivar">@snippets</span>[<span class="ruby-identifier">tag</span>].<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">l</span> }
|
|
760
|
+
63: <span class="ruby-identifier">s</span>
|
|
761
|
+
64: <span class="ruby-keyword kw">end</span></pre>
|
|
756
762
|
</div>
|
|
757
763
|
|
|
758
764
|
</div>
|
|
@@ -789,55 +795,55 @@ This method returns the snip identified by <em>tag</em>.
|
|
|
789
795
|
<div class="method-source-code"
|
|
790
796
|
id="process-source">
|
|
791
797
|
<pre>
|
|
792
|
-
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
798
|
+
<span class="ruby-comment cmt"># File lib/TjpExample.rb, line 68</span>
|
|
799
|
+
68: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">process</span>
|
|
800
|
+
69: <span class="ruby-comment cmt"># This mark identifies the annotation lines.</span>
|
|
801
|
+
70: <span class="ruby-identifier">mark</span> = <span class="ruby-value str">'# *** EXAMPLE: '</span>
|
|
802
|
+
71:
|
|
803
|
+
72: <span class="ruby-comment cmt"># We need this to remember what snippets are currently active.</span>
|
|
804
|
+
73: <span class="ruby-identifier">snippetState</span> = { }
|
|
805
|
+
74: <span class="ruby-comment cmt"># Now process the file or String line by line.</span>
|
|
806
|
+
75: <span class="ruby-ivar">@file</span>.<span class="ruby-identifier">each_line</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line</span><span class="ruby-operator">|</span>
|
|
807
|
+
76: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">line</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">mark</span>.<span class="ruby-identifier">length</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">mark</span>
|
|
808
|
+
77: <span class="ruby-comment cmt"># We've found an annotation line. Get the tag and indicator.</span>
|
|
809
|
+
78: <span class="ruby-identifier">dum</span>, <span class="ruby-identifier">dum</span>, <span class="ruby-identifier">dum</span>, <span class="ruby-identifier">tag</span>, <span class="ruby-identifier">indicator</span> = <span class="ruby-identifier">line</span>.<span class="ruby-identifier">split</span>
|
|
810
|
+
79:
|
|
811
|
+
80: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">indicator</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'+'</span>
|
|
812
|
+
81: <span class="ruby-comment cmt"># Start a new snip</span>
|
|
813
|
+
82: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">snippetState</span>[<span class="ruby-identifier">tag</span>]
|
|
814
|
+
83: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Snippet #{tag} has already been started"</span>
|
|
815
|
+
84: <span class="ruby-keyword kw">end</span>
|
|
816
|
+
85: <span class="ruby-identifier">snippetState</span>[<span class="ruby-identifier">tag</span>] = <span class="ruby-keyword kw">true</span>
|
|
817
|
+
86: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">indicator</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'-'</span>
|
|
818
|
+
87: <span class="ruby-comment cmt"># Stop an existing snip</span>
|
|
819
|
+
88: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">snippetState</span>[<span class="ruby-identifier">tag</span>]
|
|
820
|
+
89: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Snippet #{tag} has not yet been started"</span>
|
|
821
|
+
90: <span class="ruby-keyword kw">end</span>
|
|
822
|
+
91: <span class="ruby-identifier">snippetState</span>[<span class="ruby-identifier">tag</span>] = <span class="ruby-keyword kw">false</span>
|
|
823
|
+
92: <span class="ruby-keyword kw">else</span>
|
|
824
|
+
93: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Bad indicator #{indicator}. Must be '+' or '-': #{line}"</span>
|
|
825
|
+
94: <span class="ruby-keyword kw">end</span>
|
|
826
|
+
95: <span class="ruby-keyword kw">else</span>
|
|
827
|
+
96: <span class="ruby-comment cmt"># Process the regular lines and add them to all currently active</span>
|
|
828
|
+
97: <span class="ruby-comment cmt"># snippets.</span>
|
|
829
|
+
98: <span class="ruby-identifier">snippetState</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">t</span>, <span class="ruby-identifier">state</span><span class="ruby-operator">|</span>
|
|
830
|
+
99: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">state</span>
|
|
831
|
+
100: <span class="ruby-comment cmt"># Create a new snip buffer if it does not yet exist.</span>
|
|
832
|
+
101: <span class="ruby-ivar">@snippets</span>[<span class="ruby-identifier">t</span>] = [] <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@snippets</span>[<span class="ruby-identifier">t</span>]
|
|
833
|
+
102: <span class="ruby-comment cmt"># Add the line.</span>
|
|
834
|
+
103: <span class="ruby-ivar">@snippets</span>[<span class="ruby-identifier">t</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">line</span>
|
|
835
|
+
104: <span class="ruby-keyword kw">end</span>
|
|
836
|
+
105: <span class="ruby-keyword kw">end</span>
|
|
837
|
+
106: <span class="ruby-comment cmt"># Add all lines to this buffer.</span>
|
|
838
|
+
107: <span class="ruby-ivar">@snippets</span>[<span class="ruby-value str">'full text'</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">line</span>
|
|
839
|
+
108: <span class="ruby-keyword kw">end</span>
|
|
840
|
+
109: <span class="ruby-keyword kw">end</span>
|
|
841
|
+
110:
|
|
842
|
+
111: <span class="ruby-comment cmt"># Remove empty lines at end of all snips</span>
|
|
843
|
+
112: <span class="ruby-ivar">@snippets</span>.<span class="ruby-identifier">each_value</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span><span class="ruby-operator">|</span>
|
|
844
|
+
113: <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">delete_at</span>(<span class="ruby-value">1</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">snip</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-value str">"\n"</span>
|
|
845
|
+
114: <span class="ruby-keyword kw">end</span>
|
|
846
|
+
115: <span class="ruby-keyword kw">end</span></pre>
|
|
841
847
|
</div>
|
|
842
848
|
|
|
843
849
|
</div>
|
|
@@ -163,6 +163,8 @@
|
|
|
163
163
|
|
|
164
164
|
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
|
|
165
165
|
|
|
166
|
+
<li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
|
|
167
|
+
|
|
166
168
|
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
|
|
167
169
|
|
|
168
170
|
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
|
|
@@ -241,6 +243,8 @@
|
|
|
241
243
|
|
|
242
244
|
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
|
|
243
245
|
|
|
246
|
+
<li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
|
|
247
|
+
|
|
244
248
|
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
|
|
245
249
|
|
|
246
250
|
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
|
|
@@ -273,6 +277,8 @@
|
|
|
273
277
|
|
|
274
278
|
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
|
|
275
279
|
|
|
280
|
+
<li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
|
|
281
|
+
|
|
276
282
|
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
|
|
277
283
|
|
|
278
284
|
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
|
|
@@ -553,6 +559,8 @@
|
|
|
553
559
|
|
|
554
560
|
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
555
561
|
|
|
562
|
+
<li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
|
|
563
|
+
|
|
556
564
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
557
565
|
|
|
558
566
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -579,8 +587,6 @@
|
|
|
579
587
|
|
|
580
588
|
<li><a href="../String.html">String</a></li>
|
|
581
589
|
|
|
582
|
-
<li><a href="../StringIO.html">StringIO</a></li>
|
|
583
|
-
|
|
584
590
|
</ul>
|
|
585
591
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
586
592
|
</div>
|
|
@@ -634,24 +640,24 @@ Create a new object and set some default values.
|
|
|
634
640
|
<div class="method-source-code"
|
|
635
641
|
id="new-source">
|
|
636
642
|
<pre>
|
|
637
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
643
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 23</span>
|
|
644
|
+
23: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
|
|
645
|
+
24: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">report</span>)
|
|
646
|
+
25:
|
|
647
|
+
26: <span class="ruby-ivar">@supportedTaskAttrs</span> = <span class="ruby-node">%( booking complete depends flags maxend
|
|
648
|
+
27: maxstart minend minstart note priority
|
|
649
|
+
28: responsible )</span>
|
|
650
|
+
29: <span class="ruby-ivar">@supportedResourceAttrs</span> = <span class="ruby-node">%( vacation workinghours )</span>
|
|
651
|
+
30: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'scenarios'</span>, [ <span class="ruby-value">0</span> ])
|
|
652
|
+
31:
|
|
653
|
+
32: <span class="ruby-comment cmt"># Show all tasks, sorted by seqno-up.</span>
|
|
654
|
+
33: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'hideTask'</span>, <span class="ruby-constant">LogicalExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">LogicalOperation</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">0</span>)))
|
|
655
|
+
34: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'sortTasks'</span>, [ [ <span class="ruby-value str">'seqno'</span>, <span class="ruby-keyword kw">true</span>, <span class="ruby-value">1</span> ] ])
|
|
656
|
+
35: <span class="ruby-comment cmt"># Show all resources, sorted by seqno-up.</span>
|
|
657
|
+
36: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'hideResource'</span>,
|
|
658
|
+
37: <span class="ruby-constant">LogicalExpression</span>.<span class="ruby-identifier">new</span>(<span class="ruby-constant">LogicalOperation</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">0</span>)))
|
|
659
|
+
38: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'sortResources'</span>, [ [ <span class="ruby-value str">'seqno'</span>, <span class="ruby-keyword kw">true</span>, <span class="ruby-value">1</span> ] ])
|
|
660
|
+
39: <span class="ruby-keyword kw">end</span></pre>
|
|
655
661
|
</div>
|
|
656
662
|
|
|
657
663
|
</div>
|
|
@@ -688,10 +694,10 @@ Create a new object and set some default values.
|
|
|
688
694
|
<div class="method-source-code"
|
|
689
695
|
id="generate-ntermediate-ormat-source">
|
|
690
696
|
<pre>
|
|
691
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
697
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 41</span>
|
|
698
|
+
41: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
|
|
699
|
+
42: <span class="ruby-keyword kw">super</span>
|
|
700
|
+
43: <span class="ruby-keyword kw">end</span></pre>
|
|
695
701
|
</div>
|
|
696
702
|
|
|
697
703
|
</div>
|
|
@@ -724,38 +730,38 @@ Return the project data in TJP syntax format.
|
|
|
724
730
|
<div class="method-source-code"
|
|
725
731
|
id="to-tjp-source">
|
|
726
732
|
<pre>
|
|
727
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
733
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 46</span>
|
|
734
|
+
46: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
|
|
735
|
+
47: <span class="ruby-comment cmt"># Prepare the resource list.</span>
|
|
736
|
+
48: <span class="ruby-ivar">@resourceList</span> = <span class="ruby-constant">PropertyList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>)
|
|
737
|
+
49: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'sortResources'</span>))
|
|
738
|
+
50: <span class="ruby-ivar">@resourceList</span> = <span class="ruby-identifier">filterResourceList</span>(<span class="ruby-ivar">@resourceList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">a</span>(<span class="ruby-value str">'hideResource'</span>),
|
|
739
|
+
51: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'rollupResource'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'openNodes'</span>))
|
|
740
|
+
52: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
741
|
+
53:
|
|
742
|
+
54: <span class="ruby-comment cmt"># Prepare the task list.</span>
|
|
743
|
+
55: <span class="ruby-ivar">@taskList</span> = <span class="ruby-constant">PropertyList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>)
|
|
744
|
+
56: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'sortTasks'</span>))
|
|
745
|
+
57: <span class="ruby-ivar">@taskList</span> = <span class="ruby-identifier">filterTaskList</span>(<span class="ruby-ivar">@taskList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">a</span>(<span class="ruby-value str">'hideTask'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'rollupTask'</span>),
|
|
746
|
+
58: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'openNodes'</span>))
|
|
747
|
+
59: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">sort!</span>
|
|
748
|
+
60:
|
|
749
|
+
61: <span class="ruby-identifier">getBookings</span>
|
|
750
|
+
62:
|
|
751
|
+
63: <span class="ruby-ivar">@file</span> = <span class="ruby-value str">''</span>
|
|
752
|
+
64:
|
|
753
|
+
65: <span class="ruby-identifier">generateProjectProperty</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'project'</span>)
|
|
754
|
+
66:
|
|
755
|
+
67: <span class="ruby-identifier">generateFlagDeclaration</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'flags'</span>)
|
|
756
|
+
68: <span class="ruby-identifier">generateProjectIDs</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'projectids'</span>)
|
|
757
|
+
69: <span class="ruby-identifier">generateResourceList</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'resources'</span>)
|
|
758
|
+
70: <span class="ruby-identifier">generateTaskList</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'tasks'</span>)
|
|
759
|
+
71:
|
|
760
|
+
72: <span class="ruby-identifier">generateTaskAttributes</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">empty?</span>
|
|
761
|
+
73: <span class="ruby-identifier">generateResourceAttributes</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">empty?</span>
|
|
762
|
+
74:
|
|
763
|
+
75: <span class="ruby-ivar">@file</span>
|
|
764
|
+
76: <span class="ruby-keyword kw">end</span></pre>
|
|
759
765
|
</div>
|
|
760
766
|
|
|
761
767
|
</div>
|
|
@@ -792,15 +798,15 @@ Return the project data in TJP syntax format.
|
|
|
792
798
|
<div class="method-source-code"
|
|
793
799
|
id="generate-ttribute-source">
|
|
794
800
|
<pre>
|
|
795
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
801
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 317</span>
|
|
802
|
+
317: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-keyword kw">nil</span>)
|
|
803
|
+
318: <span class="ruby-identifier">val</span> = <span class="ruby-identifier">scenarioIdx</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">getAttr</span>(<span class="ruby-identifier">attrId</span>) <span class="ruby-operator">:</span>
|
|
804
|
+
319: <span class="ruby-identifier">property</span>[<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
805
|
+
320: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">val</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">empty?</span>)
|
|
806
|
+
321:
|
|
807
|
+
322: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-identifier">property</span>.<span class="ruby-identifier">getAttr</span>(<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>).<span class="ruby-identifier">to_tjp</span>,
|
|
808
|
+
323: <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
809
|
+
324: <span class="ruby-keyword kw">end</span></pre>
|
|
804
810
|
</div>
|
|
805
811
|
|
|
806
812
|
</div>
|
|
@@ -831,16 +837,16 @@ Return the project data in TJP syntax format.
|
|
|
831
837
|
<div class="method-source-code"
|
|
832
838
|
id="generate-ttribute-ext-source">
|
|
833
839
|
<pre>
|
|
834
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
840
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 326</span>
|
|
841
|
+
326: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
842
|
+
327: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span>
|
|
843
|
+
328: <span class="ruby-identifier">tag</span> = <span class="ruby-value str">''</span>
|
|
844
|
+
329: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">scenarioIdx</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
|
|
845
|
+
330: <span class="ruby-identifier">tag</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenario</span>(<span class="ruby-identifier">scenarioIdx</span>).<span class="ruby-identifier">id</span>
|
|
846
|
+
331: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{tag}:"</span>
|
|
847
|
+
332: <span class="ruby-keyword kw">end</span>
|
|
848
|
+
333: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{indentBlock(text, indent + tag.length + 2)}\n"</span>
|
|
849
|
+
334: <span class="ruby-keyword kw">end</span></pre>
|
|
844
850
|
</div>
|
|
845
851
|
|
|
846
852
|
</div>
|
|
@@ -871,14 +877,14 @@ Return the project data in TJP syntax format.
|
|
|
871
877
|
<div class="method-source-code"
|
|
872
878
|
id="generate-ooking-source">
|
|
873
879
|
<pre>
|
|
874
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
880
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 362</span>
|
|
881
|
+
362: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateBooking</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
882
|
+
363: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
|
|
883
|
+
364:
|
|
884
|
+
365: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>].<span class="ruby-identifier">each_value</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">booking</span><span class="ruby-operator">|</span>
|
|
885
|
+
366: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'booking '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">booking</span>.<span class="ruby-identifier">to_tjp</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
886
|
+
367: <span class="ruby-keyword kw">end</span>
|
|
887
|
+
368: <span class="ruby-keyword kw">end</span></pre>
|
|
882
888
|
</div>
|
|
883
889
|
|
|
884
890
|
</div>
|
|
@@ -909,27 +915,27 @@ Return the project data in TJP syntax format.
|
|
|
909
915
|
<div class="method-source-code"
|
|
910
916
|
id="generate-ustom-ttribute-eclarations-source">
|
|
911
917
|
<pre>
|
|
912
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
918
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 91</span>
|
|
919
|
+
91: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">propertySet</span>, <span class="ruby-identifier">attributes</span>)
|
|
920
|
+
92: <span class="ruby-comment cmt"># First we search the attribute definitions for any user defined</span>
|
|
921
|
+
93: <span class="ruby-comment cmt"># attributes and count them.</span>
|
|
922
|
+
94: <span class="ruby-identifier">customAttributes</span> = <span class="ruby-value">0</span>
|
|
923
|
+
95: <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ad</span><span class="ruby-operator">|</span>
|
|
924
|
+
96: <span class="ruby-identifier">customAttributes</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ad</span>.<span class="ruby-identifier">userDefined</span>
|
|
925
|
+
97: <span class="ruby-keyword kw">end</span>
|
|
926
|
+
98: <span class="ruby-comment cmt"># Return if there are no user defined attributes.</span>
|
|
927
|
+
99: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">customAttributes</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
928
|
+
100:
|
|
929
|
+
101: <span class="ruby-comment cmt"># Generate definitions for each user defined attribute that is in the</span>
|
|
930
|
+
102: <span class="ruby-comment cmt"># taskAttributes list.</span>
|
|
931
|
+
103: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' extend '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">tag</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"{\n"</span>
|
|
932
|
+
104: <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ad</span><span class="ruby-operator">|</span>
|
|
933
|
+
105: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">ad</span>.<span class="ruby-identifier">userDefined</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">ad</span>.<span class="ruby-identifier">id</span>)
|
|
934
|
+
106:
|
|
935
|
+
107: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{ad.objClass.tjpId} #{ad.id} \"#{ad.name}\"\n"</span>
|
|
936
|
+
108: <span class="ruby-keyword kw">end</span>
|
|
937
|
+
109: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" }\n"</span>
|
|
938
|
+
110: <span class="ruby-keyword kw">end</span></pre>
|
|
933
939
|
</div>
|
|
934
940
|
|
|
935
941
|
</div>
|
|
@@ -960,24 +966,24 @@ Return the project data in TJP syntax format.
|
|
|
960
966
|
<div class="method-source-code"
|
|
961
967
|
id="generate-lag-eclaration-source">
|
|
962
968
|
<pre>
|
|
963
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
969
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 112</span>
|
|
970
|
+
112: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateFlagDeclaration</span>
|
|
971
|
+
113: <span class="ruby-identifier">flags</span> = []
|
|
972
|
+
114:
|
|
973
|
+
115: <span class="ruby-identifier">properties</span> = <span class="ruby-ivar">@resourceList</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@taskList</span>
|
|
974
|
+
116:
|
|
975
|
+
117: <span class="ruby-identifier">properties</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">property</span><span class="ruby-operator">|</span>
|
|
976
|
+
118: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
977
|
+
119: <span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">flag</span><span class="ruby-operator">|</span>
|
|
978
|
+
120: <span class="ruby-identifier">flags</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">flag</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">flag</span>)
|
|
979
|
+
121: <span class="ruby-keyword kw">end</span>
|
|
980
|
+
122: <span class="ruby-keyword kw">end</span>
|
|
981
|
+
123: <span class="ruby-keyword kw">end</span>
|
|
982
|
+
124: <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">sort</span>
|
|
983
|
+
125: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">empty?</span>
|
|
984
|
+
126: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"flags #{flags.join(', ')}\n\n"</span>
|
|
985
|
+
127: <span class="ruby-keyword kw">end</span>
|
|
986
|
+
128: <span class="ruby-keyword kw">end</span></pre>
|
|
981
987
|
</div>
|
|
982
988
|
|
|
983
989
|
</div>
|
|
@@ -1008,19 +1014,19 @@ Return the project data in TJP syntax format.
|
|
|
1008
1014
|
<div class="method-source-code"
|
|
1009
1015
|
id="generate-roject-s-source">
|
|
1010
1016
|
<pre>
|
|
1011
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1017
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 130</span>
|
|
1018
|
+
130: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectIDs</span>
|
|
1019
|
+
131: <span class="ruby-comment cmt"># Compile a list of all projectIDs from the tasks in the taskList.</span>
|
|
1020
|
+
132: <span class="ruby-identifier">projectIDs</span> = []
|
|
1021
|
+
133: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1022
|
+
134: <span class="ruby-ivar">@taskList</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>
|
|
1023
|
+
135: <span class="ruby-identifier">pid</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'projectid'</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
1024
|
+
136: <span class="ruby-identifier">projectIDs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">pid</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">pid</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">projectIDs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">pid</span>)
|
|
1025
|
+
137: <span class="ruby-keyword kw">end</span>
|
|
1026
|
+
138: <span class="ruby-keyword kw">end</span>
|
|
1027
|
+
139:
|
|
1028
|
+
140: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"projectids #{projectIDs.join(', ')}\n\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">projectIDs</span>.<span class="ruby-identifier">empty?</span>
|
|
1029
|
+
141: <span class="ruby-keyword kw">end</span></pre>
|
|
1024
1030
|
</div>
|
|
1025
1031
|
|
|
1026
1032
|
</div>
|
|
@@ -1051,17 +1057,17 @@ Return the project data in TJP syntax format.
|
|
|
1051
1057
|
<div class="method-source-code"
|
|
1052
1058
|
id="generate-roject-roperty-source">
|
|
1053
1059
|
<pre>
|
|
1054
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1060
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 80</span>
|
|
1061
|
+
80: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectProperty</span>
|
|
1062
|
+
81: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"project #{@project['projectid']} \"#{@project['name']}\" "</span> <span class="ruby-operator">+</span>
|
|
1063
|
+
82: <span class="ruby-node">"\"#{@project['version']}\" #{@project['start']} - "</span> <span class="ruby-operator">+</span>
|
|
1064
|
+
83: <span class="ruby-node">"#{@project['end']} {\n"</span>
|
|
1065
|
+
84: <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-value str">'resource'</span>, <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>,
|
|
1066
|
+
85: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>))
|
|
1067
|
+
86: <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-value str">'task'</span>, <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>,
|
|
1068
|
+
87: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>))
|
|
1069
|
+
88: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n\n"</span>
|
|
1070
|
+
89: <span class="ruby-keyword kw">end</span></pre>
|
|
1065
1071
|
</div>
|
|
1066
1072
|
|
|
1067
1073
|
</div>
|
|
@@ -1092,24 +1098,24 @@ Return the project data in TJP syntax format.
|
|
|
1092
1098
|
<div class="method-source-code"
|
|
1093
1099
|
id="generate-esource-source">
|
|
1094
1100
|
<pre>
|
|
1095
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1101
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 154</span>
|
|
1102
|
+
154: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">indent</span>)
|
|
1103
|
+
155: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
1104
|
+
156:
|
|
1105
|
+
157: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-node">"resource #{resource.id} \"#{resource.name}\""</span>
|
|
1106
|
+
158: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' {'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">empty?</span>
|
|
1107
|
+
159: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1108
|
+
160:
|
|
1109
|
+
161: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
|
|
1110
|
+
162: <span class="ruby-comment cmt"># resource list as well.</span>
|
|
1111
|
+
163: <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subresource</span><span class="ruby-operator">|</span>
|
|
1112
|
+
164: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subresource</span>)
|
|
1113
|
+
165: <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">subresource</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
|
|
1114
|
+
166: <span class="ruby-keyword kw">end</span>
|
|
1115
|
+
167: <span class="ruby-keyword kw">end</span>
|
|
1116
|
+
168:
|
|
1117
|
+
169: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"}\n"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">empty?</span>
|
|
1118
|
+
170: <span class="ruby-keyword kw">end</span></pre>
|
|
1113
1119
|
</div>
|
|
1114
1120
|
|
|
1115
1121
|
</div>
|
|
@@ -1143,30 +1149,30 @@ the attributes.
|
|
|
1143
1149
|
<div class="method-source-code"
|
|
1144
1150
|
id="generate-esource-ttributes-source">
|
|
1145
1151
|
<pre>
|
|
1146
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1152
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 260</span>
|
|
1153
|
+
260: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceAttributes</span>
|
|
1154
|
+
261: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
|
|
1155
|
+
262: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
1156
|
+
263:
|
|
1157
|
+
264: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"supplement resource #{resource.fullId} {\n"</span>
|
|
1158
|
+
265: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attrDef</span><span class="ruby-operator">|</span>
|
|
1159
|
+
266: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
|
|
1160
|
+
267: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-operator">!</span><span class="ruby-ivar">@supportedResourceAttrs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>) <span class="ruby-operator">&&</span>
|
|
1161
|
+
268: <span class="ruby-operator">!</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">userDefined</span>) <span class="ruby-operator">||</span>
|
|
1162
|
+
269: <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>)
|
|
1163
|
+
270:
|
|
1164
|
+
271: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
|
|
1165
|
+
272: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1166
|
+
273: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1167
|
+
274: <span class="ruby-keyword kw">end</span>
|
|
1168
|
+
275: <span class="ruby-keyword kw">else</span>
|
|
1169
|
+
276: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>)
|
|
1170
|
+
277: <span class="ruby-keyword kw">end</span>
|
|
1171
|
+
278: <span class="ruby-keyword kw">end</span>
|
|
1172
|
+
279:
|
|
1173
|
+
280: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n"</span>
|
|
1174
|
+
281: <span class="ruby-keyword kw">end</span>
|
|
1175
|
+
282: <span class="ruby-keyword kw">end</span></pre>
|
|
1170
1176
|
</div>
|
|
1171
1177
|
|
|
1172
1178
|
</div>
|
|
@@ -1197,17 +1203,17 @@ the attributes.
|
|
|
1197
1203
|
<div class="method-source-code"
|
|
1198
1204
|
id="generate-esource-ist-source">
|
|
1199
1205
|
<pre>
|
|
1200
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1206
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 143</span>
|
|
1207
|
+
143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceList</span>
|
|
1208
|
+
144: <span class="ruby-comment cmt"># The resource definitions are generated recursively. So we only need to</span>
|
|
1209
|
+
145: <span class="ruby-comment cmt"># start it for the top-level resources.</span>
|
|
1210
|
+
146: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
|
|
1211
|
+
147: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">nil?</span>
|
|
1212
|
+
148: <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-value">0</span>)
|
|
1213
|
+
149: <span class="ruby-keyword kw">end</span>
|
|
1214
|
+
150: <span class="ruby-keyword kw">end</span>
|
|
1215
|
+
151: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1216
|
+
152: <span class="ruby-keyword kw">end</span></pre>
|
|
1211
1217
|
</div>
|
|
1212
1218
|
|
|
1213
1219
|
</div>
|
|
@@ -1242,58 +1248,58 @@ attributes are declared in subsequent supplement statements.
|
|
|
1242
1248
|
<div class="method-source-code"
|
|
1243
1249
|
id="generate-ask-source">
|
|
1244
1250
|
<pre>
|
|
1245
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1251
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 186</span>
|
|
1252
|
+
186: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">indent</span>)
|
|
1253
|
+
187: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
1254
|
+
188:
|
|
1255
|
+
189: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-node">"task #{task.id} \"#{task.name}\" {\n"</span>
|
|
1256
|
+
190:
|
|
1257
|
+
191: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'depends'</span>)
|
|
1258
|
+
192: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1259
|
+
193: <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-value str">'depends'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
|
|
1260
|
+
194: <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-value str">'precedes'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
|
|
1261
|
+
195: <span class="ruby-keyword kw">end</span>
|
|
1262
|
+
196: <span class="ruby-keyword kw">end</span>
|
|
1263
|
+
197:
|
|
1264
|
+
198: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
|
|
1265
|
+
199: <span class="ruby-comment cmt"># task list as well.</span>
|
|
1266
|
+
200: <span class="ruby-identifier">task</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subtask</span><span class="ruby-operator">|</span>
|
|
1267
|
+
201: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subtask</span>)
|
|
1268
|
+
202: <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">subtask</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
|
|
1269
|
+
203: <span class="ruby-keyword kw">end</span>
|
|
1270
|
+
204: <span class="ruby-keyword kw">end</span>
|
|
1271
|
+
205:
|
|
1272
|
+
206: <span class="ruby-comment cmt"># Determine whether this task has subtasks that are included in the</span>
|
|
1273
|
+
207: <span class="ruby-comment cmt"># report or whether this is a leaf task for the report.</span>
|
|
1274
|
+
208: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">true</span>
|
|
1275
|
+
209: <span class="ruby-identifier">task</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subtask</span><span class="ruby-operator">|</span>
|
|
1276
|
+
210: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subtask</span>)
|
|
1277
|
+
211: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">false</span>
|
|
1278
|
+
212: <span class="ruby-keyword kw">break</span>
|
|
1279
|
+
213: <span class="ruby-keyword kw">end</span>
|
|
1280
|
+
214: <span class="ruby-keyword kw">end</span>
|
|
1281
|
+
215:
|
|
1282
|
+
216: <span class="ruby-comment cmt"># For leaf tasks we put some attributes right here.</span>
|
|
1283
|
+
217: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">isLeafTask</span>
|
|
1284
|
+
218: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1285
|
+
219: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value str">'start'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1286
|
+
220: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'milestone'</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
1287
|
+
221: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'milestone'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1288
|
+
222: <span class="ruby-keyword kw">else</span>
|
|
1289
|
+
223: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value str">'end'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1290
|
+
224: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'scheduling '</span> <span class="ruby-operator">+</span>
|
|
1291
|
+
225: (<span class="ruby-identifier">task</span>[<span class="ruby-value str">'forward'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">?</span>
|
|
1292
|
+
226: <span class="ruby-value str">'asap'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'alap'</span>),
|
|
1293
|
+
227: <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1294
|
+
228: <span class="ruby-keyword kw">end</span>
|
|
1295
|
+
229: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
1296
|
+
230: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1297
|
+
231: <span class="ruby-keyword kw">end</span>
|
|
1298
|
+
232: <span class="ruby-keyword kw">end</span>
|
|
1299
|
+
233: <span class="ruby-keyword kw">end</span>
|
|
1300
|
+
234:
|
|
1301
|
+
235: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value str">"}\n"</span>
|
|
1302
|
+
236: <span class="ruby-keyword kw">end</span></pre>
|
|
1297
1303
|
</div>
|
|
1298
1304
|
|
|
1299
1305
|
</div>
|
|
@@ -1327,37 +1333,37 @@ attributes.
|
|
|
1327
1333
|
<div class="method-source-code"
|
|
1328
1334
|
id="generate-ask-ttributes-source">
|
|
1329
1335
|
<pre>
|
|
1330
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1336
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 286</span>
|
|
1337
|
+
286: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskAttributes</span>
|
|
1338
|
+
287: <span class="ruby-ivar">@taskList</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>
|
|
1339
|
+
288: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
1340
|
+
289:
|
|
1341
|
+
290: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"supplement task #{task.fullId} {\n"</span>
|
|
1342
|
+
291: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attrDef</span><span class="ruby-operator">|</span>
|
|
1343
|
+
292: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
|
|
1344
|
+
293: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-operator">!</span><span class="ruby-ivar">@supportedTaskAttrs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>) <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">userDefined</span>) <span class="ruby-operator">||</span>
|
|
1345
|
+
294: <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>)
|
|
1346
|
+
295:
|
|
1347
|
+
296: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
|
|
1348
|
+
297: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1349
|
+
298: <span class="ruby-comment cmt"># Some attributes need special treatment.</span>
|
|
1350
|
+
299: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">id</span>
|
|
1351
|
+
300: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'depends'</span>
|
|
1352
|
+
301: <span class="ruby-keyword kw">next</span> <span class="ruby-comment cmt"># already taken care of</span>
|
|
1353
|
+
302: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'booking'</span>
|
|
1354
|
+
303: <span class="ruby-identifier">generateBooking</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1355
|
+
304: <span class="ruby-keyword kw">else</span>
|
|
1356
|
+
305: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1357
|
+
306: <span class="ruby-keyword kw">end</span>
|
|
1358
|
+
307: <span class="ruby-keyword kw">end</span>
|
|
1359
|
+
308: <span class="ruby-keyword kw">else</span>
|
|
1360
|
+
309: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>)
|
|
1361
|
+
310: <span class="ruby-keyword kw">end</span>
|
|
1362
|
+
311: <span class="ruby-keyword kw">end</span>
|
|
1363
|
+
312:
|
|
1364
|
+
313: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n"</span>
|
|
1365
|
+
314: <span class="ruby-keyword kw">end</span>
|
|
1366
|
+
315: <span class="ruby-keyword kw">end</span></pre>
|
|
1361
1367
|
</div>
|
|
1362
1368
|
|
|
1363
1369
|
</div>
|
|
@@ -1391,25 +1397,25 @@ task.
|
|
|
1391
1397
|
<div class="method-source-code"
|
|
1392
1398
|
id="generate-ask-ependency-source">
|
|
1393
1399
|
<pre>
|
|
1394
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1400
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 239</span>
|
|
1401
|
+
239: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">tag</span>, <span class="ruby-identifier">indent</span>)
|
|
1402
|
+
240: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'depends'</span>)
|
|
1403
|
+
241:
|
|
1404
|
+
242: <span class="ruby-identifier">taskDeps</span> = <span class="ruby-identifier">task</span>[<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
1405
|
+
243: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">taskDeps</span>.<span class="ruby-identifier">empty?</span>
|
|
1406
|
+
244: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">tag</span> <span class="ruby-operator">+</span> <span class="ruby-value str">' '</span>
|
|
1407
|
+
245: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
|
|
1408
|
+
246: <span class="ruby-identifier">taskDeps</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">dep</span><span class="ruby-operator">|</span>
|
|
1409
|
+
247: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
|
|
1410
|
+
248: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
|
|
1411
|
+
249: <span class="ruby-keyword kw">else</span>
|
|
1412
|
+
250: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">', '</span>
|
|
1413
|
+
251: <span class="ruby-keyword kw">end</span>
|
|
1414
|
+
252: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">dep</span>.<span class="ruby-identifier">task</span>.<span class="ruby-identifier">fullId</span>
|
|
1415
|
+
253: <span class="ruby-keyword kw">end</span>
|
|
1416
|
+
254: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1417
|
+
255: <span class="ruby-keyword kw">end</span>
|
|
1418
|
+
256: <span class="ruby-keyword kw">end</span></pre>
|
|
1413
1419
|
</div>
|
|
1414
1420
|
|
|
1415
1421
|
</div>
|
|
@@ -1440,16 +1446,16 @@ task.
|
|
|
1440
1446
|
<div class="method-source-code"
|
|
1441
1447
|
id="generate-ask-ist-source">
|
|
1442
1448
|
<pre>
|
|
1443
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1449
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 172</span>
|
|
1450
|
+
172: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskList</span>
|
|
1451
|
+
173: <span class="ruby-comment cmt"># The task definitions are generated recursively. So we only need to start</span>
|
|
1452
|
+
174: <span class="ruby-comment cmt"># it for the top-level tasks.</span>
|
|
1453
|
+
175: <span class="ruby-ivar">@taskList</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>
|
|
1454
|
+
176: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">nil?</span>
|
|
1455
|
+
177: <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">0</span>)
|
|
1456
|
+
178: <span class="ruby-keyword kw">end</span>
|
|
1457
|
+
179: <span class="ruby-keyword kw">end</span>
|
|
1458
|
+
180: <span class="ruby-keyword kw">end</span></pre>
|
|
1453
1459
|
</div>
|
|
1454
1460
|
|
|
1455
1461
|
</div>
|
|
@@ -1483,29 +1489,30 @@ report.
|
|
|
1483
1489
|
<div class="method-source-code"
|
|
1484
1490
|
id="get-ookings-source">
|
|
1485
1491
|
<pre>
|
|
1486
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1492
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 338</span>
|
|
1493
|
+
338: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getBookings</span>
|
|
1494
|
+
339: <span class="ruby-ivar">@bookings</span> = {}
|
|
1495
|
+
340: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'booking'</span>)
|
|
1496
|
+
341: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
1497
|
+
342: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>] = {}
|
|
1498
|
+
343: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
|
|
1499
|
+
344: <span class="ruby-comment cmt"># Get the bookings for this resource hashed by task.</span>
|
|
1500
|
+
345: <span class="ruby-identifier">bookings</span> = <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">getBookings</span>(<span class="ruby-identifier">scenarioIdx</span>,
|
|
1501
|
+
346: <span class="ruby-constant">Interval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'start'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'end'</span>)))
|
|
1502
|
+
347: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bookings</span>.<span class="ruby-identifier">nil?</span>
|
|
1503
|
+
348:
|
|
1504
|
+
349: <span class="ruby-comment cmt"># Now convert/add them to a tripple-stage hash by scenarioIdx, task</span>
|
|
1505
|
+
350: <span class="ruby-comment cmt"># and then resource.</span>
|
|
1506
|
+
351: <span class="ruby-identifier">bookings</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-identifier">booking</span><span class="ruby-operator">|</span>
|
|
1507
|
+
352: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
|
|
1508
|
+
353: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>] = {}
|
|
1509
|
+
354: <span class="ruby-keyword kw">end</span>
|
|
1510
|
+
355: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>][<span class="ruby-identifier">resource</span>] = <span class="ruby-identifier">booking</span>
|
|
1511
|
+
356: <span class="ruby-keyword kw">end</span>
|
|
1512
|
+
357: <span class="ruby-keyword kw">end</span>
|
|
1513
|
+
358: <span class="ruby-keyword kw">end</span>
|
|
1514
|
+
359: <span class="ruby-keyword kw">end</span>
|
|
1515
|
+
360: <span class="ruby-keyword kw">end</span></pre>
|
|
1509
1516
|
</div>
|
|
1510
1517
|
|
|
1511
1518
|
</div>
|
|
@@ -1543,21 +1550,21 @@ a line break.
|
|
|
1543
1550
|
<div class="method-source-code"
|
|
1544
1551
|
id="indent-lock-source">
|
|
1545
1552
|
<pre>
|
|
1546
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1553
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 376</span>
|
|
1554
|
+
376: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">indentBlock</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">indent</span>)
|
|
1555
|
+
377: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
|
|
1556
|
+
378: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-value">0</span>
|
|
1557
|
+
379: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">length</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>
|
|
1558
|
+
380: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">firstSpace</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\ \</span><span class="ruby-comment cmt"># There must be a space after ?</span>
|
|
1559
|
+
381: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-identifier">i</span>
|
|
1560
|
+
382: <span class="ruby-keyword kw">end</span>
|
|
1561
|
+
383: <span class="ruby-identifier">out</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>]
|
|
1562
|
+
384: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\n\</span>
|
|
1563
|
+
385: <span class="ruby-identifier">out</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">' '</span> * (<span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">firstSpace</span>)
|
|
1564
|
+
386: <span class="ruby-keyword kw">end</span>
|
|
1565
|
+
387: <span class="ruby-keyword kw">end</span>
|
|
1566
|
+
388: <span class="ruby-identifier">out</span>
|
|
1567
|
+
389: <span class="ruby-keyword kw">end</span></pre>
|
|
1561
1568
|
</div>
|
|
1562
1569
|
|
|
1563
1570
|
</div>
|