taskjuggler 0.0.5 → 0.0.6
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 +2086 -0
- data/benchmarks/666tasks.tjp +3183 -0
- data/benchmarks/booking.tjp +14 -10
- data/doc/AppConfig.html +95 -73
- data/doc/Arguments.html +22 -2
- data/doc/CHANGELOG.html +2587 -0
- data/doc/COPYING.html +21 -1
- data/doc/Object.html +161 -122
- data/doc/README.html +21 -1
- data/doc/RuntimeConfig.html +26 -6
- data/doc/String.html +38 -18
- data/doc/StringIO.html +579 -0
- data/doc/TaskJuggler.html +251 -143
- data/doc/TaskJuggler/Account.html +26 -6
- data/doc/TaskJuggler/AccountAttribute.html +28 -8
- data/doc/TaskJuggler/AccountScenario.html +24 -4
- data/doc/TaskJuggler/Allocation.html +30 -10
- data/doc/TaskJuggler/AllocationAttribute.html +28 -8
- data/doc/TaskJuggler/AttributeBase.html +46 -26
- data/doc/TaskJuggler/AttributeDefinition.html +22 -2
- data/doc/TaskJuggler/BatchProcessor.html +40 -20
- data/doc/TaskJuggler/Booking.html +26 -6
- data/doc/TaskJuggler/BookingListAttribute.html +28 -8
- data/doc/TaskJuggler/BooleanAttribute.html +28 -8
- data/doc/TaskJuggler/CSVFile.html +308 -146
- data/doc/TaskJuggler/CellSettingPattern.html +22 -2
- data/doc/TaskJuggler/CellSettingPatternList.html +26 -6
- data/doc/TaskJuggler/Charge.html +26 -6
- data/doc/TaskJuggler/ChargeListAttribute.html +26 -6
- data/doc/TaskJuggler/ChargeSet.html +33 -13
- data/doc/TaskJuggler/ChargeSetListAttribute.html +28 -8
- data/doc/TaskJuggler/ColumnListAttribute.html +26 -6
- data/doc/TaskJuggler/ColumnTable.html +24 -4
- data/doc/TaskJuggler/Daemon.html +26 -6
- data/doc/TaskJuggler/DateAttribute.html +26 -6
- data/doc/TaskJuggler/DefinitionListAttribute.html +22 -2
- data/doc/TaskJuggler/DependencyListAttribute.html +28 -8
- data/doc/TaskJuggler/DurationAttribute.html +28 -8
- data/doc/TaskJuggler/FixnumAttribute.html +24 -4
- data/doc/TaskJuggler/FlagListAttribute.html +28 -8
- data/doc/TaskJuggler/FloatAttribute.html +26 -6
- data/doc/TaskJuggler/FormatListAttribute.html +24 -4
- data/doc/TaskJuggler/GanttChart.html +147 -126
- data/doc/TaskJuggler/GanttContainer.html +34 -14
- data/doc/TaskJuggler/GanttHeader.html +28 -8
- data/doc/TaskJuggler/GanttHeaderScaleItem.html +24 -4
- data/doc/TaskJuggler/GanttLine.html +38 -18
- data/doc/TaskJuggler/GanttLoadStack.html +26 -6
- data/doc/TaskJuggler/GanttMilestone.html +34 -14
- data/doc/TaskJuggler/GanttRouter.html +50 -30
- data/doc/TaskJuggler/GanttTaskBar.html +34 -14
- data/doc/TaskJuggler/HTMLDocument.html +26 -6
- data/doc/TaskJuggler/HTMLGraphics.html +30 -10
- data/doc/TaskJuggler/Interval.html +40 -22
- data/doc/TaskJuggler/IntervalListAttribute.html +28 -8
- data/doc/TaskJuggler/JobInfo.html +24 -4
- data/doc/TaskJuggler/Journal.html +226 -147
- data/doc/TaskJuggler/JournalEntry.html +22 -2
- data/doc/TaskJuggler/JournalEntryList.html +129 -112
- data/doc/TaskJuggler/KeywordArray.html +26 -6
- data/doc/TaskJuggler/KeywordDocumentation.html +46 -26
- data/doc/TaskJuggler/Limits.html +152 -123
- data/doc/TaskJuggler/Limits/Limit.html +149 -70
- data/doc/TaskJuggler/LimitsAttribute.html +36 -51
- data/doc/TaskJuggler/ListAttributeBase.html +24 -4
- data/doc/TaskJuggler/Log.html +50 -32
- data/doc/TaskJuggler/LogFile.html +37 -17
- data/doc/TaskJuggler/LogicalAttribute.html +53 -33
- data/doc/TaskJuggler/LogicalExpression.html +26 -6
- data/doc/TaskJuggler/LogicalExpressionAttribute.html +32 -12
- data/doc/TaskJuggler/LogicalFlag.html +42 -22
- data/doc/TaskJuggler/LogicalFunction.html +204 -140
- data/doc/TaskJuggler/LogicalOperation.html +135 -111
- data/doc/TaskJuggler/Macro.html +22 -2
- data/doc/TaskJuggler/MacroParser.html +32 -12
- data/doc/TaskJuggler/MacroTable.html +32 -12
- data/doc/TaskJuggler/ManagerResponsibilities.html +24 -4
- data/doc/TaskJuggler/ManagerStatusRecord.html +24 -4
- data/doc/TaskJuggler/Message.html +24 -4
- data/doc/TaskJuggler/MessageHandler.html +24 -4
- data/doc/TaskJuggler/Navigator.html +104 -71
- data/doc/TaskJuggler/NavigatorElement.html +32 -12
- data/doc/TaskJuggler/NikuProject.html +22 -2
- data/doc/TaskJuggler/NikuReport.html +310 -228
- data/doc/TaskJuggler/NikuResource.html +22 -2
- data/doc/TaskJuggler/NodeListAttribute.html +615 -0
- data/doc/TaskJuggler/OnShiftCache.html +32 -12
- data/doc/TaskJuggler/ProcessIntercom.html +205 -78
- data/doc/TaskJuggler/ProcessIntercomIface.html +26 -6
- data/doc/TaskJuggler/Project.html +708 -660
- data/doc/TaskJuggler/ProjectBroker.html +506 -304
- data/doc/TaskJuggler/ProjectBrokerIface.html +61 -41
- data/doc/TaskJuggler/ProjectFileParser.html +429 -373
- data/doc/TaskJuggler/ProjectFileScanner.html +1790 -0
- data/doc/TaskJuggler/ProjectRecord.html +80 -60
- data/doc/TaskJuggler/ProjectServer.html +312 -237
- data/doc/TaskJuggler/ProjectServerIface.html +101 -43
- data/doc/TaskJuggler/PropertyAttribute.html +32 -12
- data/doc/TaskJuggler/PropertyList.html +166 -145
- data/doc/TaskJuggler/PropertySet.html +254 -224
- data/doc/TaskJuggler/PropertyTreeNode.html +670 -536
- data/doc/TaskJuggler/Query.html +169 -148
- data/doc/TaskJuggler/RTFHandlers.html +622 -0
- data/doc/TaskJuggler/RTFNavigator.html +28 -8
- data/doc/TaskJuggler/RTFQuery.html +40 -20
- data/doc/TaskJuggler/RTFReport.html +62 -25
- data/doc/TaskJuggler/RTFReportLink.html +765 -0
- data/doc/TaskJuggler/RealFormat.html +26 -6
- data/doc/TaskJuggler/RealFormatAttribute.html +26 -6
- data/doc/TaskJuggler/ReferenceAttribute.html +59 -39
- data/doc/TaskJuggler/Report.html +402 -251
- data/doc/TaskJuggler/ReportBase.html +162 -137
- data/doc/TaskJuggler/ReportContext.html +112 -29
- data/doc/TaskJuggler/ReportServer.html +89 -64
- data/doc/TaskJuggler/ReportServerIface.html +75 -55
- data/doc/TaskJuggler/ReportServerRecord.html +54 -31
- data/doc/TaskJuggler/ReportServlet.html +980 -0
- data/doc/TaskJuggler/ReportTable.html +41 -21
- data/doc/TaskJuggler/ReportTableCell.html +214 -170
- data/doc/TaskJuggler/ReportTableColumn.html +30 -10
- data/doc/TaskJuggler/ReportTableLegend.html +36 -16
- data/doc/TaskJuggler/ReportTableLine.html +32 -12
- data/doc/TaskJuggler/Resource.html +99 -87
- data/doc/TaskJuggler/ResourceListAttribute.html +59 -39
- data/doc/TaskJuggler/ResourceListRE.html +47 -26
- data/doc/TaskJuggler/ResourceScenario.html +403 -437
- data/doc/TaskJuggler/RichText.html +26 -6
- data/doc/TaskJuggler/RichTextAttribute.html +50 -30
- data/doc/TaskJuggler/RichTextDocument.html +37 -17
- data/doc/TaskJuggler/RichTextElement.html +475 -413
- data/doc/TaskJuggler/RichTextException.html +22 -2
- data/doc/TaskJuggler/RichTextFunctionExample.html +28 -8
- data/doc/TaskJuggler/RichTextFunctionHandler.html +24 -4
- data/doc/TaskJuggler/RichTextImage.html +22 -2
- data/doc/TaskJuggler/RichTextIntermediate.html +38 -18
- data/doc/TaskJuggler/RichTextParser.html +56 -34
- data/doc/TaskJuggler/RichTextScanner.html +82 -61
- data/doc/TaskJuggler/RichTextSnip.html +34 -14
- data/doc/TaskJuggler/RichTextSyntaxRules.html +507 -353
- data/doc/TaskJuggler/Scenario.html +22 -2
- data/doc/TaskJuggler/ScenarioData.html +30 -46
- data/doc/TaskJuggler/ScenarioListAttribute.html +38 -18
- data/doc/TaskJuggler/Scoreboard.html +42 -22
- data/doc/TaskJuggler/SheetHandlerBase.html +40 -20
- data/doc/TaskJuggler/SheetReceiver.html +333 -295
- data/doc/TaskJuggler/SheetSender.html +253 -230
- data/doc/TaskJuggler/Shift.html +26 -6
- data/doc/TaskJuggler/ShiftAssignment.html +89 -73
- data/doc/TaskJuggler/ShiftAssignments.html +226 -234
- data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +39 -54
- data/doc/TaskJuggler/ShiftScenario.html +28 -8
- data/doc/TaskJuggler/SortListAttribute.html +34 -14
- data/doc/TaskJuggler/SourceFileInfo.html +24 -4
- data/doc/TaskJuggler/StatusSheetReceiver.html +24 -3
- data/doc/TaskJuggler/StatusSheetReport.html +168 -153
- data/doc/TaskJuggler/StatusSheetSender.html +24 -3
- data/doc/TaskJuggler/StringAttribute.html +38 -18
- data/doc/TaskJuggler/SymbolAttribute.html +32 -12
- data/doc/TaskJuggler/SyntaxReference.html +40 -20
- data/doc/TaskJuggler/TOCEntry.html +26 -6
- data/doc/TaskJuggler/TSResourceRecord.html +22 -2
- data/doc/TaskJuggler/TSTaskRecord.html +22 -2
- data/doc/TaskJuggler/TableColumnDefinition.html +59 -22
- data/doc/TaskJuggler/TableOfContents.html +26 -6
- data/doc/TaskJuggler/TableReport.html +937 -904
- data/doc/TaskJuggler/Task.html +55 -36
- data/doc/TaskJuggler/TaskDependency.html +24 -4
- data/doc/TaskJuggler/TaskListAttribute.html +50 -30
- data/doc/TaskJuggler/TaskListRE.html +27 -7
- data/doc/TaskJuggler/TaskScenario.html +1273 -1153
- data/doc/TaskJuggler/TextFormatter.html +28 -8
- data/doc/TaskJuggler/TextParser.html +585 -338
- data/doc/TaskJuggler/TextParser/Pattern.html +54 -34
- data/doc/TaskJuggler/TextParser/Rule.html +95 -73
- data/doc/TaskJuggler/TextParser/StackElement.html +39 -17
- data/doc/TaskJuggler/TextParser/TextParserResultArray.html +24 -4
- data/doc/TaskJuggler/TextParser/TokenDoc.html +22 -2
- data/doc/TaskJuggler/TextReport.html +28 -8
- data/doc/TaskJuggler/TextScanner.html +400 -1404
- data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +28 -240
- data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +37 -184
- data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +682 -0
- data/doc/TaskJuggler/TextScanner/StreamHandle.html +342 -67
- data/doc/TaskJuggler/TimeSheet.html +48 -28
- data/doc/TaskJuggler/TimeSheetReceiver.html +24 -3
- data/doc/TaskJuggler/TimeSheetRecord.html +47 -27
- data/doc/TaskJuggler/TimeSheetReport.html +154 -133
- data/doc/TaskJuggler/TimeSheetSender.html +24 -3
- data/doc/TaskJuggler/TimeSheetSummary.html +137 -91
- data/doc/TaskJuggler/TimeSheets.html +26 -6
- data/doc/TaskJuggler/Tj3AppBase.html +85 -58
- data/doc/TaskJuggler/Tj3Client.html +292 -238
- data/doc/TaskJuggler/Tj3Daemon.html +159 -74
- data/doc/TaskJuggler/Tj3SheetAppBase.html +26 -6
- data/doc/TaskJuggler/Tj3SsReceiver.html +26 -6
- data/doc/TaskJuggler/Tj3SsSender.html +53 -26
- data/doc/TaskJuggler/Tj3TsReceiver.html +28 -7
- data/doc/TaskJuggler/Tj3TsSender.html +26 -6
- data/doc/TaskJuggler/Tj3TsSummary.html +26 -6
- data/doc/TaskJuggler/TjException.html +22 -2
- data/doc/TaskJuggler/TjTime.html +216 -160
- data/doc/TaskJuggler/TjpExample.html +34 -14
- data/doc/TaskJuggler/TjpExportRE.html +403 -407
- data/doc/TaskJuggler/TjpSyntaxRules.html +4805 -4408
- data/doc/TaskJuggler/URLParameter.html +649 -0
- data/doc/TaskJuggler/UserManual.html +42 -22
- data/doc/TaskJuggler/WebServer.html +702 -0
- data/doc/TaskJuggler/WorkingHours.html +38 -18
- data/doc/TaskJuggler/WorkingHoursAttribute.html +61 -41
- data/doc/TaskJuggler/XMLBlob.html +24 -4
- data/doc/TaskJuggler/XMLComment.html +24 -4
- data/doc/TaskJuggler/XMLDocument.html +30 -10
- data/doc/TaskJuggler/XMLElement.html +34 -14
- data/doc/TaskJuggler/XMLNamedText.html +22 -2
- data/doc/TaskJuggler/XMLText.html +24 -4
- data/doc/index.html +1841 -1666
- data/doc/lib/AccountScenario_rb.html +1 -1
- data/doc/lib/Account_rb.html +1 -1
- data/doc/lib/Allocation_rb.html +1 -1
- data/doc/lib/AppConfig_rb.html +2 -2
- data/doc/lib/AttributeBase_rb.html +1 -1
- data/doc/lib/AttributeDefinition_rb.html +1 -1
- data/doc/lib/Attributes_rb.html +2 -2
- data/doc/lib/BatchProcessor_rb.html +1 -1
- data/doc/lib/Booking_rb.html +1 -1
- data/doc/lib/ChargeSet_rb.html +1 -1
- data/doc/lib/Charge_rb.html +1 -1
- data/doc/lib/HTMLDocument_rb.html +1 -1
- data/doc/lib/Interval_rb.html +1 -1
- data/doc/lib/Journal_rb.html +2 -2
- data/doc/lib/KeywordArray_rb.html +1 -1
- data/doc/lib/KeywordDocumentation_rb.html +1 -1
- data/doc/lib/Limits_rb.html +2 -2
- data/doc/lib/LogFile_rb.html +2 -2
- data/doc/lib/Log_rb.html +1 -1
- data/doc/lib/LogicalExpression_rb.html +1 -1
- data/doc/lib/LogicalFunction_rb.html +2 -2
- data/doc/lib/LogicalOperation_rb.html +2 -2
- data/doc/lib/MacroParser_rb.html +1 -1
- data/doc/lib/MacroTable_rb.html +1 -1
- data/doc/lib/MessageHandler_rb.html +1 -1
- data/doc/lib/Message_rb.html +1 -1
- data/doc/lib/ProjectFileParser_rb.html +4 -8
- data/doc/lib/ProjectFileScanner_rb.html +67 -0
- data/doc/lib/Project_rb.html +2 -2
- data/doc/lib/PropertyList_rb.html +2 -2
- data/doc/lib/PropertySet_rb.html +2 -2
- data/doc/lib/PropertyTreeNode_rb.html +2 -2
- data/doc/lib/Query_rb.html +2 -2
- data/doc/lib/RTFHandlers_rb.html +73 -0
- data/doc/lib/RTFNavigator_rb.html +1 -1
- data/doc/lib/RTFQuery_rb.html +1 -1
- data/doc/lib/RTFReportLink_rb.html +71 -0
- data/doc/lib/RTFReport_rb.html +2 -2
- data/doc/lib/RealFormat_rb.html +1 -1
- data/doc/lib/ResourceScenario_rb.html +2 -2
- data/doc/lib/Resource_rb.html +2 -2
- data/doc/lib/RichTextDocument_rb.html +1 -1
- data/doc/lib/RichTextElement_rb.html +2 -2
- data/doc/lib/RichTextFunctionExample_rb.html +1 -1
- data/doc/lib/RichTextFunctionHandler_rb.html +1 -1
- data/doc/lib/RichTextParser_rb.html +2 -2
- data/doc/lib/RichTextScanner_rb.html +2 -2
- data/doc/lib/RichTextSnip_rb.html +1 -1
- data/doc/lib/RichTextSyntaxRules_rb.html +2 -2
- data/doc/lib/RichText_rb.html +1 -1
- data/doc/lib/RuntimeConfig_rb.html +1 -1
- data/doc/lib/ScenarioData_rb.html +2 -2
- data/doc/lib/Scenario_rb.html +1 -1
- data/doc/lib/Scoreboard_rb.html +1 -1
- data/doc/lib/SheetHandlerBase_rb.html +1 -1
- data/doc/lib/SheetReceiver_rb.html +2 -2
- data/doc/lib/SheetSender_rb.html +4 -2
- data/doc/lib/ShiftAssignments_rb.html +4 -2
- data/doc/lib/ShiftScenario_rb.html +1 -1
- data/doc/lib/Shift_rb.html +1 -1
- data/doc/lib/SourceFileInfo_rb.html +1 -1
- data/doc/lib/StatusSheetReceiver_rb.html +2 -2
- data/doc/lib/StatusSheetSender_rb.html +2 -2
- data/doc/lib/SyntaxReference_rb.html +1 -1
- data/doc/lib/TOCEntry_rb.html +1 -1
- data/doc/lib/TableColumnDefinition_rb.html +2 -2
- data/doc/lib/TableOfContents_rb.html +1 -1
- data/doc/lib/TaskDependency_rb.html +1 -1
- data/doc/lib/TaskJuggler_rb.html +2 -2
- data/doc/lib/TaskScenario_rb.html +2 -2
- data/doc/lib/Task_rb.html +2 -2
- data/doc/lib/TextFormatter_rb.html +1 -1
- data/doc/lib/TextParser/Pattern_rb.html +1 -1
- data/doc/lib/TextParser/Rule_rb.html +2 -2
- data/doc/lib/TextParser/StackElement_rb.html +2 -2
- data/doc/lib/TextParser/TokenDoc_rb.html +1 -1
- data/doc/lib/TextParser_rb.html +2 -2
- data/doc/lib/TextScanner_rb.html +6 -2
- data/doc/lib/TimeSheetReceiver_rb.html +2 -2
- data/doc/lib/TimeSheetSender_rb.html +2 -2
- data/doc/lib/TimeSheetSummary_rb.html +2 -2
- data/doc/lib/TimeSheets_rb.html +2 -2
- data/doc/lib/Tj3AppBase_rb.html +2 -2
- data/doc/lib/Tj3Config_rb.html +2 -2
- data/doc/lib/Tj3SheetAppBase_rb.html +2 -2
- data/doc/lib/TjException_rb.html +1 -1
- data/doc/lib/TjTime_rb.html +2 -2
- data/doc/lib/TjpExample_rb.html +1 -1
- data/doc/lib/TjpSyntaxRules_rb.html +2 -2
- data/doc/lib/URLParameter_rb.html +67 -0
- data/doc/lib/UTF8String_rb.html +1 -1
- data/doc/lib/UserManual_rb.html +1 -1
- data/doc/lib/WorkingHours_rb.html +1 -1
- data/doc/lib/XMLDocument_rb.html +2 -2
- data/doc/lib/XMLElement_rb.html +1 -1
- data/doc/lib/daemon/Daemon_rb.html +1 -1
- data/doc/lib/daemon/ProcessIntercom_rb.html +2 -2
- data/doc/lib/daemon/ProjectBroker_rb.html +4 -2
- data/doc/lib/daemon/ProjectServer_rb.html +2 -2
- data/doc/lib/daemon/ReportServer_rb.html +2 -2
- data/doc/lib/daemon/WebServer_rb.html +75 -0
- data/doc/lib/deep_copy_rb.html +2 -2
- data/doc/lib/reports/CSVFile_rb.html +2 -2
- data/doc/lib/reports/ColumnTable_rb.html +1 -1
- data/doc/lib/reports/GanttChart_rb.html +2 -2
- data/doc/lib/reports/GanttContainer_rb.html +1 -1
- data/doc/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
- data/doc/lib/reports/GanttHeader_rb.html +1 -1
- data/doc/lib/reports/GanttLine_rb.html +1 -1
- data/doc/lib/reports/GanttLoadStack_rb.html +1 -1
- data/doc/lib/reports/GanttMilestone_rb.html +1 -1
- data/doc/lib/reports/GanttRouter_rb.html +1 -1
- data/doc/lib/reports/GanttTaskBar_rb.html +1 -1
- data/doc/lib/reports/HTMLGraphics_rb.html +1 -1
- data/doc/lib/reports/Navigator_rb.html +2 -2
- data/doc/lib/reports/NikuReport_rb.html +2 -2
- data/doc/lib/reports/ReportBase_rb.html +2 -2
- data/doc/lib/reports/ReportContext_rb.html +2 -2
- data/doc/lib/reports/ReportTableCell_rb.html +2 -2
- data/doc/lib/reports/ReportTableColumn_rb.html +1 -1
- data/doc/lib/reports/ReportTableLegend_rb.html +1 -1
- data/doc/lib/reports/ReportTableLine_rb.html +1 -1
- data/doc/lib/reports/ReportTable_rb.html +2 -2
- data/doc/lib/reports/Report_rb.html +2 -2
- data/doc/lib/reports/ResourceListRE_rb.html +2 -2
- data/doc/lib/reports/StatusSheetReport_rb.html +2 -2
- data/doc/lib/reports/TableReport_rb.html +2 -2
- data/doc/lib/reports/TaskListRE_rb.html +2 -2
- data/doc/lib/reports/TextReport_rb.html +1 -1
- data/doc/lib/reports/TimeSheetReport_rb.html +2 -2
- data/doc/lib/reports/TjpExportRE_rb.html +2 -2
- data/doc/lib/ruby-signal-bug_rb.html +1 -1
- data/doc/lib/taskjuggler3_rb.html +2 -2
- data/doc/lib/tj3client_rb.html +2 -2
- data/doc/lib/tj3d_rb.html +2 -2
- data/doc/lib/tj3man_rb.html +1 -1
- data/doc/lib/tj3ss_receiver_rb.html +1 -1
- data/doc/lib/tj3ss_sender_rb.html +2 -2
- data/doc/lib/tj3ts_receiver_rb.html +2 -2
- data/doc/lib/tj3ts_sender_rb.html +1 -1
- data/doc/lib/tj3ts_summary_rb.html +1 -1
- data/doc/rdoc.css +9 -4
- data/examples/tutorial.tjp +17 -15
- data/gem_spec.rb +3 -0
- data/lib/AppConfig.rb +3 -1
- data/lib/Attributes.rb +10 -8
- data/lib/Journal.rb +55 -20
- data/lib/Limits.rb +72 -46
- data/lib/LogFile.rb +3 -3
- data/lib/LogicalFunction.rb +19 -6
- data/lib/LogicalOperation.rb +5 -1
- data/lib/Project.rb +37 -9
- data/lib/ProjectFileParser.rb +25 -22
- data/lib/ProjectFileScanner.rb +365 -0
- data/lib/PropertyList.rb +2 -1
- data/lib/PropertySet.rb +14 -4
- data/lib/PropertyTreeNode.rb +42 -29
- data/lib/Query.rb +3 -1
- data/lib/RTFHandlers.rb +35 -0
- data/lib/RTFReport.rb +23 -6
- data/lib/RTFReportLink.rb +72 -0
- data/lib/Resource.rb +8 -16
- data/lib/ResourceScenario.rb +1 -22
- data/lib/RichTextElement.rb +42 -0
- data/lib/RichTextParser.rb +6 -4
- data/lib/RichTextScanner.rb +5 -5
- data/lib/RichTextSyntaxRules.rb +48 -10
- data/lib/ScenarioData.rb +5 -3
- data/lib/SheetReceiver.rb +24 -6
- data/lib/SheetSender.rb +17 -13
- data/lib/ShiftAssignments.rb +56 -52
- data/lib/StatusSheetReceiver.rb +1 -0
- data/lib/StatusSheetSender.rb +1 -0
- data/lib/TableColumnDefinition.rb +4 -2
- data/lib/Task.rb +8 -9
- data/lib/TaskJuggler.rb +21 -11
- data/lib/TaskScenario.rb +61 -26
- data/lib/TextParser.rb +268 -106
- data/lib/TextParser/Rule.rb +4 -2
- data/lib/TextParser/StackElement.rb +6 -4
- data/lib/TextScanner.rb +283 -700
- data/lib/TimeSheetReceiver.rb +1 -0
- data/lib/TimeSheetSender.rb +1 -0
- data/lib/TimeSheetSummary.rb +51 -26
- data/lib/TimeSheets.rb +1 -1
- data/lib/Tj3AppBase.rb +8 -1
- data/lib/Tj3Config.rb +1 -1
- data/lib/TjTime.rb +5 -0
- data/lib/TjpSyntaxRules.rb +360 -144
- data/lib/URLParameter.rb +30 -0
- data/lib/XMLDocument.rb +2 -2
- data/lib/daemon/ProcessIntercom.rb +50 -9
- data/lib/daemon/ProjectBroker.rb +63 -10
- data/lib/daemon/ProjectServer.rb +47 -16
- data/lib/daemon/ReportServer.rb +9 -4
- data/lib/daemon/WebServer.rb +204 -0
- data/lib/deep_copy.rb +4 -1
- data/lib/reports/CSVFile.rb +150 -66
- data/lib/reports/GanttChart.rb +2 -1
- data/lib/reports/Navigator.rb +18 -5
- data/lib/reports/NikuReport.rb +32 -2
- data/lib/reports/Report.rb +65 -37
- data/lib/reports/ReportBase.rb +14 -9
- data/lib/reports/ReportContext.rb +19 -4
- data/lib/reports/ReportTable.rb +2 -2
- data/lib/reports/ReportTableCell.rb +54 -30
- data/lib/reports/ResourceListRE.rb +4 -3
- data/lib/reports/StatusSheetReport.rb +8 -13
- data/lib/reports/TableReport.rb +47 -32
- data/lib/reports/TaskListRE.rb +3 -3
- data/lib/reports/TimeSheetReport.rb +14 -5
- data/lib/reports/TjpExportRE.rb +14 -19
- data/lib/taskjuggler3.rb +15 -0
- data/lib/tj3client.rb +9 -7
- data/lib/tj3d.rb +38 -10
- data/lib/tj3ss_sender.rb +7 -0
- data/lib/tj3ts_receiver.rb +1 -0
- data/manual/Day_To_Day_Juggling +1 -1
- data/manual/Rich_Text_Attributes +8 -0
- data/manual/TaskJuggler_2x_Migration +7 -0
- data/manual/The_TaskJuggler_Syntax +20 -6
- data/prj_cfg.rb +3 -2
- data/tasks/changelog.rake +36 -0
- data/tasks/csts.rake +2 -3
- data/tasks/gem.rake +10 -0
- data/tasks/missing.rake +0 -17
- data/test/TestSuite/ReportGenerator/Correct/Journal.html +63 -0
- data/test/TestSuite/ReportGenerator/Correct/Journal.tjp +14 -0
- data/test/TestSuite/{HTML-Reports/LogicalFunctions.tjp → ReportGenerator/Correct/LogicalFunctions1.tjp} +2 -2
- data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.csv +3 -0
- data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.tjp +19 -0
- data/test/TestSuite/ReportGenerator/Correct/css/tjmanual.css +66 -0
- data/test/TestSuite/ReportGenerator/Correct/css/tjreport.css +407 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/details.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/resource.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/resourcegroup.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/task.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/taskgroup.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/trend-down.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/trend-flat.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/icons/trend-up.png +0 -0
- data/test/TestSuite/ReportGenerator/Correct/opennodes.csv +2 -0
- data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +26 -0
- data/test/TestSuite/ReportGenerator/Correct/refs/Journal-1.csv +6 -0
- data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions1-1.csv +7 -0
- data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions2-1.csv +2 -0
- data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +2 -0
- data/test/TestSuite/ReportGenerator/Correct/scripts/wz_tooltip.js +1301 -0
- data/test/TestSuite/ReportGenerator/Errors/rtp_report_recursion.tjp +20 -0
- data/test/TestSuite/Scheduler/Correct/Container.html +349 -0
- data/test/TestSuite/Scheduler/Correct/Limits.tjp +11 -4
- data/test/TestSuite/Scheduler/Correct/Shift2.html +464 -150
- data/test/TestSuite/Scheduler/Correct/TimeSheet2.html +108 -0
- data/test/TestSuite/Scheduler/Correct/TimeSheet2.tjp +7 -0
- data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +14 -0
- data/test/TestSuite/Scheduler/Correct/css/tjreport.css +233 -21
- data/test/TestSuite/Scheduler/Correct/scripts/wz_tooltip.js +20 -20
- data/test/TestSuite/StatusSheetTemplates/project.tji +35 -0
- data/test/TestSuite/StatusSheetTemplates/project.tjp +56 -0
- data/test/TestSuite/StatusSheets/run +3 -2
- data/test/TestSuite/Syntax/Correct/Include.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/Macro-1.tjp +1 -1
- data/test/TestSuite/Syntax/Correct/Macro-2.tjp +6 -0
- data/test/TestSuite/Syntax/Correct/Macro-3.tjp +14 -0
- data/test/TestSuite/Syntax/Correct/ResourcePrefix.html +32 -0
- data/test/TestSuite/Syntax/Correct/css/tjmanual.css +66 -0
- data/test/TestSuite/Syntax/Correct/css/tjreport.css +407 -0
- data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/trend-down.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/trend-flat.png +0 -0
- data/test/TestSuite/Syntax/Correct/icons/trend-up.png +0 -0
- data/test/TestSuite/Syntax/Correct/include/dir1/file2.tji +3 -0
- data/test/TestSuite/Syntax/Correct/include/dir1/file5.tji +2 -0
- data/test/TestSuite/Syntax/Correct/include/dir3/all.tji +3 -0
- data/test/TestSuite/Syntax/Correct/include/dir3/file1.tji +2 -0
- data/test/TestSuite/Syntax/Correct/include/dir3/file2.tji +1 -0
- data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +13 -13
- data/test/TestSuite/Syntax/Errors/empty.tjp +1 -1
- data/test/TestSuite/Syntax/Errors/include_recursion.tjp +1 -0
- data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +2 -1
- data/test/TestSuite/Syntax/Errors/{eof_in_istring1.tjp → no_token_match1.tjp} +2 -2
- data/test/TestSuite/Syntax/Errors/{eof_in_istring2.tjp → no_token_match2.tjp} +2 -2
- data/test/TestSuite/Syntax/Errors/{eof_in_istring3.tjp → no_token_match3.tjp} +1 -1
- data/test/TestSuite/Syntax/Errors/{eof_in_istring4.tjp → no_token_match4.tjp} +1 -1
- data/test/TestSuite/Syntax/Errors/{eof_in_istring5.tjp → no_token_match5.tjp} +1 -1
- data/test/TestSuite/Syntax/Errors/not_scheduled.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +1 -1
- data/test/TestSuite/TimeSheets/run +5 -5
- data/test/test_CSVFile.rb +75 -0
- data/test/test_Limits.rb +63 -5
- data/test/test_ProjectFileScanner.rb +163 -0
- data/test/test_ReportGenerator.rb +81 -0
- data/test/test_RichText.rb +21 -3
- data/test/test_Scheduler.rb +1 -1
- data/test/test_ShiftAssignments.rb +4 -4
- data/test/test_Syntax.rb +1 -1
- data/test/test_URLParameter.rb +30 -0
- metadata +126 -32
- data/test/TestSuite/Scheduler/Errors/not_scheduled.tjp +0 -8
- data/test/TestSuite/Syntax/Errors/bad_comment.tjp +0 -7
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/boss_2002-03-01.tji +0 -36
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev1_2002-03-01.tji +0 -48
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev2_2002-03-01.tji +0 -67
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/dev3_2002-03-01.tji +0 -67
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/doc_2002-03-01.tji +0 -48
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/resources.yml +0 -31
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/2002-03-01/test_2002-03-01.tji +0 -36
- data/test/TestSuite/TimeSheets/TimeSheetTemplates/acceptable_intervals +0 -1
- data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/all.tji +0 -1
- data/test/TestSuite/TimeSheets/TimeSheets/2002-03-01/dev2_2002-03-01.tji +0 -54
- data/test/TestSuite/TimeSheets/TimeSheets/all.tji +0 -2
- data/test/TestSuite/TimeSheets/receiver.log +0 -102
- data/test/TestSuite/TimeSheets/sender.log +0 -794
- data/test/TestSuite/TimeSheets/summary.log +0 -884
- data/test/TestSuite/TimeSheets/timesheets.log +0 -45
- data/test/TestSuite/TimeSheets/tj3d.log +0 -292
- data/test/test_TextScanner.rb +0 -95
|
@@ -69,15 +69,15 @@
|
|
|
69
69
|
<h3 class="section-header">Methods</h3>
|
|
70
70
|
<ul class="link-list">
|
|
71
71
|
|
|
72
|
-
<li><a href="#
|
|
72
|
+
<li><a href="#method-c-new">::new</a></li>
|
|
73
73
|
|
|
74
|
-
<li><a href="#
|
|
74
|
+
<li><a href="#method-i-open">#open</a></li>
|
|
75
75
|
|
|
76
|
-
<li><a href="#
|
|
76
|
+
<li><a href="#method-i-parse">#parse</a></li>
|
|
77
77
|
|
|
78
|
-
<li><a href="#
|
|
78
|
+
<li><a href="#method-i-process">#process</a></li>
|
|
79
79
|
|
|
80
|
-
<li><a href="#
|
|
80
|
+
<li><a href="#method-i-to_s">#to_s</a></li>
|
|
81
81
|
|
|
82
82
|
</ul>
|
|
83
83
|
</div>
|
|
@@ -94,6 +94,8 @@
|
|
|
94
94
|
<h3 class="section-header">Files</h3>
|
|
95
95
|
<ul>
|
|
96
96
|
|
|
97
|
+
<li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
|
|
98
|
+
|
|
97
99
|
<li class="file"><a href="../COPYING.html">COPYING</a></li>
|
|
98
100
|
|
|
99
101
|
<li class="file"><a href="../README.html">README</a></li>
|
|
@@ -263,6 +265,8 @@
|
|
|
263
265
|
|
|
264
266
|
<li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
|
|
265
267
|
|
|
268
|
+
<li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
|
|
269
|
+
|
|
266
270
|
<li><a href="../TaskJuggler/OnShiftCache.html">TaskJuggler::OnShiftCache</a></li>
|
|
267
271
|
|
|
268
272
|
<li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
|
|
@@ -277,6 +281,8 @@
|
|
|
277
281
|
|
|
278
282
|
<li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
|
|
279
283
|
|
|
284
|
+
<li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
|
|
285
|
+
|
|
280
286
|
<li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
|
|
281
287
|
|
|
282
288
|
<li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
|
|
@@ -293,12 +299,16 @@
|
|
|
293
299
|
|
|
294
300
|
<li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
|
|
295
301
|
|
|
302
|
+
<li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
|
|
303
|
+
|
|
296
304
|
<li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
|
|
297
305
|
|
|
298
306
|
<li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
|
|
299
307
|
|
|
300
308
|
<li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
|
|
301
309
|
|
|
310
|
+
<li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
|
|
311
|
+
|
|
302
312
|
<li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
|
|
303
313
|
|
|
304
314
|
<li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
|
|
@@ -317,6 +327,8 @@
|
|
|
317
327
|
|
|
318
328
|
<li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
|
|
319
329
|
|
|
330
|
+
<li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
|
|
331
|
+
|
|
320
332
|
<li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
|
|
321
333
|
|
|
322
334
|
<li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
|
|
@@ -445,6 +457,8 @@
|
|
|
445
457
|
|
|
446
458
|
<li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
|
|
447
459
|
|
|
460
|
+
<li><a href="../TaskJuggler/TextScanner/MacroStackEntry.html">TaskJuggler::TextScanner::MacroStackEntry</a></li>
|
|
461
|
+
|
|
448
462
|
<li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
|
|
449
463
|
|
|
450
464
|
<li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
|
|
@@ -489,8 +503,12 @@
|
|
|
489
503
|
|
|
490
504
|
<li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
|
|
491
505
|
|
|
506
|
+
<li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
|
|
507
|
+
|
|
492
508
|
<li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
|
|
493
509
|
|
|
510
|
+
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
511
|
+
|
|
494
512
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
495
513
|
|
|
496
514
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -517,6 +535,8 @@
|
|
|
517
535
|
|
|
518
536
|
<li><a href="../String.html">String</a></li>
|
|
519
537
|
|
|
538
|
+
<li><a href="../StringIO.html">StringIO</a></li>
|
|
539
|
+
|
|
520
540
|
</ul>
|
|
521
541
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
522
542
|
</div>
|
|
@@ -545,10 +565,10 @@ The following line ends a snip called ‘foo’: # *** EXAMPLE: foo
|
|
|
545
565
|
-
|
|
546
566
|
</p>
|
|
547
567
|
<p>
|
|
548
|
-
The function <a href="TjpExample.html#
|
|
549
|
-
used to get the content of the snip. It takes the tag name as
|
|
550
|
-
parameter. If no tag is specified, the full example without the
|
|
551
|
-
lines is returned.
|
|
568
|
+
The function <a href="TjpExample.html#method-i-to_s">TjpExample#to_s()</a>
|
|
569
|
+
can be used to get the content of the snip. It takes the tag name as
|
|
570
|
+
optional parameter. If no tag is specified, the full example without the
|
|
571
|
+
annotation lines is returned.
|
|
552
572
|
</p>
|
|
553
573
|
|
|
554
574
|
</div>
|
|
@@ -566,7 +586,7 @@ lines is returned.
|
|
|
566
586
|
|
|
567
587
|
|
|
568
588
|
<div id="new-method" class="method-detail ">
|
|
569
|
-
<a name="
|
|
589
|
+
<a name="method-c-new"></a>
|
|
570
590
|
|
|
571
591
|
<div class="method-heading">
|
|
572
592
|
|
|
@@ -611,7 +631,7 @@ Create a new <a href="TjpExample.html">TjpExample</a> object.
|
|
|
611
631
|
|
|
612
632
|
|
|
613
633
|
<div id="open-method" class="method-detail ">
|
|
614
|
-
<a name="
|
|
634
|
+
<a name="method-i-open"></a>
|
|
615
635
|
|
|
616
636
|
<div class="method-heading">
|
|
617
637
|
|
|
@@ -649,7 +669,7 @@ Use this function to process the file called <em>fileName</em>.
|
|
|
649
669
|
|
|
650
670
|
|
|
651
671
|
<div id="parse-method" class="method-detail ">
|
|
652
|
-
<a name="
|
|
672
|
+
<a name="method-i-parse"></a>
|
|
653
673
|
|
|
654
674
|
<div class="method-heading">
|
|
655
675
|
|
|
@@ -687,7 +707,7 @@ Use this function to process the <a href="../String.html">String</a>
|
|
|
687
707
|
|
|
688
708
|
|
|
689
709
|
<div id="to-s-method" class="method-detail ">
|
|
690
|
-
<a name="
|
|
710
|
+
<a name="method-i-to_s"></a>
|
|
691
711
|
|
|
692
712
|
<div class="method-heading">
|
|
693
713
|
|
|
@@ -734,7 +754,7 @@ This method returns the snip identified by <em>tag</em>.
|
|
|
734
754
|
|
|
735
755
|
|
|
736
756
|
<div id="process-method" class="method-detail ">
|
|
737
|
-
<a name="
|
|
757
|
+
<a name="method-i-process"></a>
|
|
738
758
|
|
|
739
759
|
<div class="method-heading">
|
|
740
760
|
|
|
@@ -69,43 +69,43 @@
|
|
|
69
69
|
<h3 class="section-header">Methods</h3>
|
|
70
70
|
<ul class="link-list">
|
|
71
71
|
|
|
72
|
-
<li><a href="#
|
|
72
|
+
<li><a href="#method-c-new">::new</a></li>
|
|
73
73
|
|
|
74
|
-
<li><a href="#
|
|
74
|
+
<li><a href="#method-i-generateAttribute">#generateAttribute</a></li>
|
|
75
75
|
|
|
76
|
-
<li><a href="#
|
|
76
|
+
<li><a href="#method-i-generateAttributeText">#generateAttributeText</a></li>
|
|
77
77
|
|
|
78
|
-
<li><a href="#
|
|
78
|
+
<li><a href="#method-i-generateBooking">#generateBooking</a></li>
|
|
79
79
|
|
|
80
|
-
<li><a href="#
|
|
80
|
+
<li><a href="#method-i-generateCustomAttributeDeclarations">#generateCustomAttributeDeclarations</a></li>
|
|
81
81
|
|
|
82
|
-
<li><a href="#
|
|
82
|
+
<li><a href="#method-i-generateFlagDeclaration">#generateFlagDeclaration</a></li>
|
|
83
83
|
|
|
84
|
-
<li><a href="#
|
|
84
|
+
<li><a href="#method-i-generateIntermediateFormat">#generateIntermediateFormat</a></li>
|
|
85
85
|
|
|
86
|
-
<li><a href="#
|
|
86
|
+
<li><a href="#method-i-generateProjectIDs">#generateProjectIDs</a></li>
|
|
87
87
|
|
|
88
|
-
<li><a href="#
|
|
88
|
+
<li><a href="#method-i-generateProjectProperty">#generateProjectProperty</a></li>
|
|
89
89
|
|
|
90
|
-
<li><a href="#
|
|
90
|
+
<li><a href="#method-i-generateResource">#generateResource</a></li>
|
|
91
91
|
|
|
92
|
-
<li><a href="#
|
|
92
|
+
<li><a href="#method-i-generateResourceAttributes">#generateResourceAttributes</a></li>
|
|
93
93
|
|
|
94
|
-
<li><a href="#
|
|
94
|
+
<li><a href="#method-i-generateResourceList">#generateResourceList</a></li>
|
|
95
95
|
|
|
96
|
-
<li><a href="#
|
|
96
|
+
<li><a href="#method-i-generateTask">#generateTask</a></li>
|
|
97
97
|
|
|
98
|
-
<li><a href="#
|
|
98
|
+
<li><a href="#method-i-generateTaskAttributes">#generateTaskAttributes</a></li>
|
|
99
99
|
|
|
100
|
-
<li><a href="#
|
|
100
|
+
<li><a href="#method-i-generateTaskDependency">#generateTaskDependency</a></li>
|
|
101
101
|
|
|
102
|
-
<li><a href="#
|
|
102
|
+
<li><a href="#method-i-generateTaskList">#generateTaskList</a></li>
|
|
103
103
|
|
|
104
|
-
<li><a href="#
|
|
104
|
+
<li><a href="#method-i-getBookings">#getBookings</a></li>
|
|
105
105
|
|
|
106
|
-
<li><a href="#
|
|
106
|
+
<li><a href="#method-i-indentBlock">#indentBlock</a></li>
|
|
107
107
|
|
|
108
|
-
<li><a href="#
|
|
108
|
+
<li><a href="#method-i-to_tjp">#to_tjp</a></li>
|
|
109
109
|
|
|
110
110
|
</ul>
|
|
111
111
|
</div>
|
|
@@ -122,6 +122,8 @@
|
|
|
122
122
|
<h3 class="section-header">Files</h3>
|
|
123
123
|
<ul>
|
|
124
124
|
|
|
125
|
+
<li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
|
|
126
|
+
|
|
125
127
|
<li class="file"><a href="../COPYING.html">COPYING</a></li>
|
|
126
128
|
|
|
127
129
|
<li class="file"><a href="../README.html">README</a></li>
|
|
@@ -291,6 +293,8 @@
|
|
|
291
293
|
|
|
292
294
|
<li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
|
|
293
295
|
|
|
296
|
+
<li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
|
|
297
|
+
|
|
294
298
|
<li><a href="../TaskJuggler/OnShiftCache.html">TaskJuggler::OnShiftCache</a></li>
|
|
295
299
|
|
|
296
300
|
<li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
|
|
@@ -305,6 +309,8 @@
|
|
|
305
309
|
|
|
306
310
|
<li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
|
|
307
311
|
|
|
312
|
+
<li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
|
|
313
|
+
|
|
308
314
|
<li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
|
|
309
315
|
|
|
310
316
|
<li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
|
|
@@ -321,12 +327,16 @@
|
|
|
321
327
|
|
|
322
328
|
<li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
|
|
323
329
|
|
|
330
|
+
<li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
|
|
331
|
+
|
|
324
332
|
<li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
|
|
325
333
|
|
|
326
334
|
<li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
|
|
327
335
|
|
|
328
336
|
<li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
|
|
329
337
|
|
|
338
|
+
<li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
|
|
339
|
+
|
|
330
340
|
<li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
|
|
331
341
|
|
|
332
342
|
<li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
|
|
@@ -345,6 +355,8 @@
|
|
|
345
355
|
|
|
346
356
|
<li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
|
|
347
357
|
|
|
358
|
+
<li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
|
|
359
|
+
|
|
348
360
|
<li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
|
|
349
361
|
|
|
350
362
|
<li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
|
|
@@ -473,6 +485,8 @@
|
|
|
473
485
|
|
|
474
486
|
<li><a href="../TaskJuggler/TextScanner/FileStreamHandle.html">TaskJuggler::TextScanner::FileStreamHandle</a></li>
|
|
475
487
|
|
|
488
|
+
<li><a href="../TaskJuggler/TextScanner/MacroStackEntry.html">TaskJuggler::TextScanner::MacroStackEntry</a></li>
|
|
489
|
+
|
|
476
490
|
<li><a href="../TaskJuggler/TextScanner/StreamHandle.html">TaskJuggler::TextScanner::StreamHandle</a></li>
|
|
477
491
|
|
|
478
492
|
<li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
|
|
@@ -517,8 +531,12 @@
|
|
|
517
531
|
|
|
518
532
|
<li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
|
|
519
533
|
|
|
534
|
+
<li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
|
|
535
|
+
|
|
520
536
|
<li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
|
|
521
537
|
|
|
538
|
+
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
539
|
+
|
|
522
540
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
523
541
|
|
|
524
542
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -545,6 +563,8 @@
|
|
|
545
563
|
|
|
546
564
|
<li><a href="../String.html">String</a></li>
|
|
547
565
|
|
|
566
|
+
<li><a href="../StringIO.html">StringIO</a></li>
|
|
567
|
+
|
|
548
568
|
</ul>
|
|
549
569
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
550
570
|
</div>
|
|
@@ -569,27 +589,6 @@ an export of the project data in the TJP syntax format.
|
|
|
569
589
|
|
|
570
590
|
<!-- Attributes -->
|
|
571
591
|
|
|
572
|
-
<div id="attribute-method-details" class="method-section section">
|
|
573
|
-
<h3 class="section-header">Attributes</h3>
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
<div id="main-ile-attribute-method" class="method-detail">
|
|
577
|
-
<a name="mainFile"></a>
|
|
578
|
-
|
|
579
|
-
<div class="method-heading attribute-method-heading">
|
|
580
|
-
<span class="method-name">mainFile</span><span
|
|
581
|
-
class="attribute-access-type">[R]</span>
|
|
582
|
-
</div>
|
|
583
|
-
|
|
584
|
-
<div class="method-description">
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
</div>
|
|
589
|
-
</div>
|
|
590
|
-
|
|
591
|
-
</div>
|
|
592
|
-
|
|
593
592
|
|
|
594
593
|
<!-- Methods -->
|
|
595
594
|
|
|
@@ -598,7 +597,7 @@ an export of the project data in the TJP syntax format.
|
|
|
598
597
|
|
|
599
598
|
|
|
600
599
|
<div id="new-method" class="method-detail ">
|
|
601
|
-
<a name="
|
|
600
|
+
<a name="method-c-new"></a>
|
|
602
601
|
|
|
603
602
|
<div class="method-heading">
|
|
604
603
|
|
|
@@ -619,27 +618,24 @@ Create a new object and set some default values.
|
|
|
619
618
|
<div class="method-source-code"
|
|
620
619
|
id="new-source">
|
|
621
620
|
<pre>
|
|
622
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
41: <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>)))
|
|
641
|
-
42: <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> ] ])
|
|
642
|
-
43: <span class="ruby-keyword kw">end</span></pre>
|
|
621
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 22</span>
|
|
622
|
+
22: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
|
|
623
|
+
23: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">report</span>)
|
|
624
|
+
24:
|
|
625
|
+
25: <span class="ruby-ivar">@supportedTaskAttrs</span> = <span class="ruby-node">%( booking complete depends flags maxend
|
|
626
|
+
26: maxstart minend minstart note priority
|
|
627
|
+
27: responsible )</span>
|
|
628
|
+
28: <span class="ruby-ivar">@supportedResourceAttrs</span> = <span class="ruby-node">%( vacation workinghours )</span>
|
|
629
|
+
29: <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> ])
|
|
630
|
+
30:
|
|
631
|
+
31: <span class="ruby-comment cmt"># Show all tasks, sorted by seqno-up.</span>
|
|
632
|
+
32: <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>)))
|
|
633
|
+
33: <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> ] ])
|
|
634
|
+
34: <span class="ruby-comment cmt"># Show all resources, sorted by seqno-up.</span>
|
|
635
|
+
35: <span class="ruby-ivar">@report</span>.<span class="ruby-identifier">set</span>(<span class="ruby-value str">'hideResource'</span>,
|
|
636
|
+
36: <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>)))
|
|
637
|
+
37: <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> ] ])
|
|
638
|
+
38: <span class="ruby-keyword kw">end</span></pre>
|
|
643
639
|
</div>
|
|
644
640
|
|
|
645
641
|
</div>
|
|
@@ -657,7 +653,7 @@ Create a new object and set some default values.
|
|
|
657
653
|
|
|
658
654
|
|
|
659
655
|
<div id="generate-ntermediate-ormat-method" class="method-detail ">
|
|
660
|
-
<a name="
|
|
656
|
+
<a name="method-i-generateIntermediateFormat"></a>
|
|
661
657
|
|
|
662
658
|
<div class="method-heading">
|
|
663
659
|
|
|
@@ -676,10 +672,10 @@ Create a new object and set some default values.
|
|
|
676
672
|
<div class="method-source-code"
|
|
677
673
|
id="generate-ntermediate-ormat-source">
|
|
678
674
|
<pre>
|
|
679
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
675
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 40</span>
|
|
676
|
+
40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
|
|
677
|
+
41: <span class="ruby-keyword kw">super</span>
|
|
678
|
+
42: <span class="ruby-keyword kw">end</span></pre>
|
|
683
679
|
</div>
|
|
684
680
|
|
|
685
681
|
</div>
|
|
@@ -691,7 +687,7 @@ Create a new object and set some default values.
|
|
|
691
687
|
|
|
692
688
|
|
|
693
689
|
<div id="to-tjp-method" class="method-detail ">
|
|
694
|
-
<a name="
|
|
690
|
+
<a name="method-i-to_tjp"></a>
|
|
695
691
|
|
|
696
692
|
<div class="method-heading">
|
|
697
693
|
|
|
@@ -712,37 +708,38 @@ Return the project data in TJP syntax format.
|
|
|
712
708
|
<div class="method-source-code"
|
|
713
709
|
id="to-tjp-source">
|
|
714
710
|
<pre>
|
|
715
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
711
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 45</span>
|
|
712
|
+
45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
|
|
713
|
+
46: <span class="ruby-comment cmt"># Prepare the resource list.</span>
|
|
714
|
+
47: <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>)
|
|
715
|
+
48: <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>))
|
|
716
|
+
49: <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>),
|
|
717
|
+
50: <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>))
|
|
718
|
+
51: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
719
|
+
52:
|
|
720
|
+
53: <span class="ruby-comment cmt"># Prepare the task list.</span>
|
|
721
|
+
54: <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>)
|
|
722
|
+
55: <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>))
|
|
723
|
+
56: <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>),
|
|
724
|
+
57: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'openNodes'</span>))
|
|
725
|
+
58: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">sort!</span>
|
|
726
|
+
59:
|
|
727
|
+
60: <span class="ruby-identifier">getBookings</span>
|
|
728
|
+
61:
|
|
729
|
+
62: <span class="ruby-ivar">@file</span> = <span class="ruby-value str">''</span>
|
|
729
730
|
63:
|
|
730
|
-
64: <span class="ruby-identifier">
|
|
731
|
+
64: <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>)
|
|
731
732
|
65:
|
|
732
|
-
66: <span class="ruby-
|
|
733
|
-
67:
|
|
734
|
-
68: <span class="ruby-identifier">
|
|
735
|
-
69:
|
|
736
|
-
70:
|
|
737
|
-
71: <span class="ruby-identifier">
|
|
738
|
-
72: <span class="ruby-identifier">
|
|
739
|
-
73:
|
|
740
|
-
74:
|
|
741
|
-
75:
|
|
742
|
-
76: <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>
|
|
743
|
-
77:
|
|
744
|
-
78: <span class="ruby-ivar">@file</span>
|
|
745
|
-
79: <span class="ruby-keyword kw">end</span></pre>
|
|
733
|
+
66: <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>)
|
|
734
|
+
67: <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>)
|
|
735
|
+
68: <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>)
|
|
736
|
+
69: <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>)
|
|
737
|
+
70:
|
|
738
|
+
71: <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>
|
|
739
|
+
72: <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>
|
|
740
|
+
73:
|
|
741
|
+
74: <span class="ruby-ivar">@file</span>
|
|
742
|
+
75: <span class="ruby-keyword kw">end</span></pre>
|
|
746
743
|
</div>
|
|
747
744
|
|
|
748
745
|
</div>
|
|
@@ -760,7 +757,7 @@ Return the project data in TJP syntax format.
|
|
|
760
757
|
|
|
761
758
|
|
|
762
759
|
<div id="generate-ttribute-method" class="method-detail ">
|
|
763
|
-
<a name="
|
|
760
|
+
<a name="method-i-generateAttribute"></a>
|
|
764
761
|
|
|
765
762
|
<div class="method-heading">
|
|
766
763
|
|
|
@@ -779,15 +776,15 @@ Return the project data in TJP syntax format.
|
|
|
779
776
|
<div class="method-source-code"
|
|
780
777
|
id="generate-ttribute-source">
|
|
781
778
|
<pre>
|
|
782
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
779
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 318</span>
|
|
780
|
+
318: <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>)
|
|
781
|
+
319: <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>
|
|
782
|
+
320: <span class="ruby-identifier">property</span>[<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
783
|
+
321: <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>)
|
|
784
|
+
322:
|
|
785
|
+
323: <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>,
|
|
786
|
+
324: <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
787
|
+
325: <span class="ruby-keyword kw">end</span></pre>
|
|
791
788
|
</div>
|
|
792
789
|
|
|
793
790
|
</div>
|
|
@@ -799,7 +796,7 @@ Return the project data in TJP syntax format.
|
|
|
799
796
|
|
|
800
797
|
|
|
801
798
|
<div id="generate-ttribute-ext-method" class="method-detail ">
|
|
802
|
-
<a name="
|
|
799
|
+
<a name="method-i-generateAttributeText"></a>
|
|
803
800
|
|
|
804
801
|
<div class="method-heading">
|
|
805
802
|
|
|
@@ -818,16 +815,16 @@ Return the project data in TJP syntax format.
|
|
|
818
815
|
<div class="method-source-code"
|
|
819
816
|
id="generate-ttribute-ext-source">
|
|
820
817
|
<pre>
|
|
821
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
818
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 327</span>
|
|
819
|
+
327: <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>)
|
|
820
|
+
328: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span>
|
|
821
|
+
329: <span class="ruby-identifier">tag</span> = <span class="ruby-value str">''</span>
|
|
822
|
+
330: <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>
|
|
823
|
+
331: <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>
|
|
824
|
+
332: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{tag}:"</span>
|
|
825
|
+
333: <span class="ruby-keyword kw">end</span>
|
|
826
|
+
334: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{indentBlock(text, indent + tag.length + 2)}\n"</span>
|
|
827
|
+
335: <span class="ruby-keyword kw">end</span></pre>
|
|
831
828
|
</div>
|
|
832
829
|
|
|
833
830
|
</div>
|
|
@@ -839,7 +836,7 @@ Return the project data in TJP syntax format.
|
|
|
839
836
|
|
|
840
837
|
|
|
841
838
|
<div id="generate-ooking-method" class="method-detail ">
|
|
842
|
-
<a name="
|
|
839
|
+
<a name="method-i-generateBooking"></a>
|
|
843
840
|
|
|
844
841
|
<div class="method-heading">
|
|
845
842
|
|
|
@@ -858,14 +855,14 @@ Return the project data in TJP syntax format.
|
|
|
858
855
|
<div class="method-source-code"
|
|
859
856
|
id="generate-ooking-source">
|
|
860
857
|
<pre>
|
|
861
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
858
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 362</span>
|
|
859
|
+
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>)
|
|
860
|
+
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>)
|
|
861
|
+
364:
|
|
862
|
+
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>
|
|
863
|
+
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>)
|
|
864
|
+
367: <span class="ruby-keyword kw">end</span>
|
|
865
|
+
368: <span class="ruby-keyword kw">end</span></pre>
|
|
869
866
|
</div>
|
|
870
867
|
|
|
871
868
|
</div>
|
|
@@ -877,7 +874,7 @@ Return the project data in TJP syntax format.
|
|
|
877
874
|
|
|
878
875
|
|
|
879
876
|
<div id="generate-ustom-ttribute-eclarations-method" class="method-detail ">
|
|
880
|
-
<a name="
|
|
877
|
+
<a name="method-i-generateCustomAttributeDeclarations"></a>
|
|
881
878
|
|
|
882
879
|
<div class="method-heading">
|
|
883
880
|
|
|
@@ -896,27 +893,27 @@ Return the project data in TJP syntax format.
|
|
|
896
893
|
<div class="method-source-code"
|
|
897
894
|
id="generate-ustom-ttribute-eclarations-source">
|
|
898
895
|
<pre>
|
|
899
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
896
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 90</span>
|
|
897
|
+
90: <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>)
|
|
898
|
+
91: <span class="ruby-comment cmt"># First we search the attribute definitions for any user defined</span>
|
|
899
|
+
92: <span class="ruby-comment cmt"># attributes and count them.</span>
|
|
900
|
+
93: <span class="ruby-identifier">customAttributes</span> = <span class="ruby-value">0</span>
|
|
901
|
+
94: <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>
|
|
902
|
+
95: <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>
|
|
903
|
+
96: <span class="ruby-keyword kw">end</span>
|
|
904
|
+
97: <span class="ruby-comment cmt"># Return if there are no user defined attributes.</span>
|
|
905
|
+
98: <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>
|
|
906
|
+
99:
|
|
907
|
+
100: <span class="ruby-comment cmt"># Generate definitions for each user defined attribute that is in the</span>
|
|
908
|
+
101: <span class="ruby-comment cmt"># taskAttributes list.</span>
|
|
909
|
+
102: <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>
|
|
910
|
+
103: <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>
|
|
911
|
+
104: <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>)
|
|
912
|
+
105:
|
|
913
|
+
106: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">" #{ad.objClass.tjpId} #{ad.id} \"#{ad.name}\"\n"</span>
|
|
914
|
+
107: <span class="ruby-keyword kw">end</span>
|
|
915
|
+
108: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">" }\n"</span>
|
|
916
|
+
109: <span class="ruby-keyword kw">end</span></pre>
|
|
920
917
|
</div>
|
|
921
918
|
|
|
922
919
|
</div>
|
|
@@ -928,7 +925,7 @@ Return the project data in TJP syntax format.
|
|
|
928
925
|
|
|
929
926
|
|
|
930
927
|
<div id="generate-lag-eclaration-method" class="method-detail ">
|
|
931
|
-
<a name="
|
|
928
|
+
<a name="method-i-generateFlagDeclaration"></a>
|
|
932
929
|
|
|
933
930
|
<div class="method-heading">
|
|
934
931
|
|
|
@@ -947,24 +944,24 @@ Return the project data in TJP syntax format.
|
|
|
947
944
|
<div class="method-source-code"
|
|
948
945
|
id="generate-lag-eclaration-source">
|
|
949
946
|
<pre>
|
|
950
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
947
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 111</span>
|
|
948
|
+
111: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateFlagDeclaration</span>
|
|
949
|
+
112: <span class="ruby-identifier">flags</span> = []
|
|
950
|
+
113:
|
|
951
|
+
114: <span class="ruby-identifier">properties</span> = <span class="ruby-ivar">@resourceList</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@taskList</span>
|
|
952
|
+
115:
|
|
953
|
+
116: <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>
|
|
954
|
+
117: <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>
|
|
955
|
+
118: <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>
|
|
956
|
+
119: <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>)
|
|
957
|
+
120: <span class="ruby-keyword kw">end</span>
|
|
958
|
+
121: <span class="ruby-keyword kw">end</span>
|
|
959
|
+
122: <span class="ruby-keyword kw">end</span>
|
|
960
|
+
123: <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">sort</span>
|
|
961
|
+
124: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">empty?</span>
|
|
962
|
+
125: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"flags #{flags.join(', ')}\n\n"</span>
|
|
962
963
|
126: <span class="ruby-keyword kw">end</span>
|
|
963
|
-
127:
|
|
964
|
-
128: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">empty?</span>
|
|
965
|
-
129: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"flags #{flags.join(', ')}\n\n"</span>
|
|
966
|
-
130: <span class="ruby-keyword kw">end</span>
|
|
967
|
-
131: <span class="ruby-keyword kw">end</span></pre>
|
|
964
|
+
127: <span class="ruby-keyword kw">end</span></pre>
|
|
968
965
|
</div>
|
|
969
966
|
|
|
970
967
|
</div>
|
|
@@ -976,7 +973,7 @@ Return the project data in TJP syntax format.
|
|
|
976
973
|
|
|
977
974
|
|
|
978
975
|
<div id="generate-roject-s-method" class="method-detail ">
|
|
979
|
-
<a name="
|
|
976
|
+
<a name="method-i-generateProjectIDs"></a>
|
|
980
977
|
|
|
981
978
|
<div class="method-heading">
|
|
982
979
|
|
|
@@ -995,19 +992,19 @@ Return the project data in TJP syntax format.
|
|
|
995
992
|
<div class="method-source-code"
|
|
996
993
|
id="generate-roject-s-source">
|
|
997
994
|
<pre>
|
|
998
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
995
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 129</span>
|
|
996
|
+
129: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectIDs</span>
|
|
997
|
+
130: <span class="ruby-comment cmt"># Compile a list of all projectIDs from the tasks in the taskList.</span>
|
|
998
|
+
131: <span class="ruby-identifier">projectIDs</span> = []
|
|
999
|
+
132: <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>
|
|
1000
|
+
133: <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>
|
|
1001
|
+
134: <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>]
|
|
1002
|
+
135: <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>)
|
|
1003
|
+
136: <span class="ruby-keyword kw">end</span>
|
|
1004
|
+
137: <span class="ruby-keyword kw">end</span>
|
|
1005
|
+
138:
|
|
1006
|
+
139: <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>
|
|
1007
|
+
140: <span class="ruby-keyword kw">end</span></pre>
|
|
1011
1008
|
</div>
|
|
1012
1009
|
|
|
1013
1010
|
</div>
|
|
@@ -1019,7 +1016,7 @@ Return the project data in TJP syntax format.
|
|
|
1019
1016
|
|
|
1020
1017
|
|
|
1021
1018
|
<div id="generate-roject-roperty-method" class="method-detail ">
|
|
1022
|
-
<a name="
|
|
1019
|
+
<a name="method-i-generateProjectProperty"></a>
|
|
1023
1020
|
|
|
1024
1021
|
<div class="method-heading">
|
|
1025
1022
|
|
|
@@ -1038,17 +1035,17 @@ Return the project data in TJP syntax format.
|
|
|
1038
1035
|
<div class="method-source-code"
|
|
1039
1036
|
id="generate-roject-roperty-source">
|
|
1040
1037
|
<pre>
|
|
1041
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1038
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 79</span>
|
|
1039
|
+
79: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectProperty</span>
|
|
1040
|
+
80: <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>
|
|
1041
|
+
81: <span class="ruby-node">"\"#{@project['version']}\" #{@project['start']} - "</span> <span class="ruby-operator">+</span>
|
|
1042
|
+
82: <span class="ruby-node">"#{@project['end']} {\n"</span>
|
|
1043
|
+
83: <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>,
|
|
1044
|
+
84: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>))
|
|
1045
|
+
85: <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>,
|
|
1046
|
+
86: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>))
|
|
1047
|
+
87: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n\n"</span>
|
|
1048
|
+
88: <span class="ruby-keyword kw">end</span></pre>
|
|
1052
1049
|
</div>
|
|
1053
1050
|
|
|
1054
1051
|
</div>
|
|
@@ -1060,7 +1057,7 @@ Return the project data in TJP syntax format.
|
|
|
1060
1057
|
|
|
1061
1058
|
|
|
1062
1059
|
<div id="generate-esource-method" class="method-detail ">
|
|
1063
|
-
<a name="
|
|
1060
|
+
<a name="method-i-generateResource"></a>
|
|
1064
1061
|
|
|
1065
1062
|
<div class="method-heading">
|
|
1066
1063
|
|
|
@@ -1079,24 +1076,24 @@ Return the project data in TJP syntax format.
|
|
|
1079
1076
|
<div class="method-source-code"
|
|
1080
1077
|
id="generate-esource-source">
|
|
1081
1078
|
<pre>
|
|
1082
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1083
|
-
|
|
1084
|
-
|
|
1079
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 153</span>
|
|
1080
|
+
153: <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>)
|
|
1081
|
+
154: <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>
|
|
1082
|
+
155:
|
|
1083
|
+
156: <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>
|
|
1084
|
+
157: <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>
|
|
1085
|
+
158: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1085
1086
|
159:
|
|
1086
|
-
160: <span class="ruby-
|
|
1087
|
-
161: <span class="ruby-
|
|
1088
|
-
162: <span class="ruby-
|
|
1089
|
-
163:
|
|
1090
|
-
164:
|
|
1091
|
-
165:
|
|
1092
|
-
166: <span class="ruby-
|
|
1093
|
-
167:
|
|
1094
|
-
168:
|
|
1095
|
-
169:
|
|
1096
|
-
170: <span class="ruby-keyword kw">end</span>
|
|
1097
|
-
171:
|
|
1098
|
-
172: <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>
|
|
1099
|
-
173: <span class="ruby-keyword kw">end</span></pre>
|
|
1087
|
+
160: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
|
|
1088
|
+
161: <span class="ruby-comment cmt"># resource list as well.</span>
|
|
1089
|
+
162: <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>
|
|
1090
|
+
163: <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>)
|
|
1091
|
+
164: <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>)
|
|
1092
|
+
165: <span class="ruby-keyword kw">end</span>
|
|
1093
|
+
166: <span class="ruby-keyword kw">end</span>
|
|
1094
|
+
167:
|
|
1095
|
+
168: <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>
|
|
1096
|
+
169: <span class="ruby-keyword kw">end</span></pre>
|
|
1100
1097
|
</div>
|
|
1101
1098
|
|
|
1102
1099
|
</div>
|
|
@@ -1108,7 +1105,7 @@ Return the project data in TJP syntax format.
|
|
|
1108
1105
|
|
|
1109
1106
|
|
|
1110
1107
|
<div id="generate-esource-ttributes-method" class="method-detail ">
|
|
1111
|
-
<a name="
|
|
1108
|
+
<a name="method-i-generateResourceAttributes"></a>
|
|
1112
1109
|
|
|
1113
1110
|
<div class="method-heading">
|
|
1114
1111
|
|
|
@@ -1130,31 +1127,31 @@ the attributes.
|
|
|
1130
1127
|
<div class="method-source-code"
|
|
1131
1128
|
id="generate-esource-ttributes-source">
|
|
1132
1129
|
<pre>
|
|
1133
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1130
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 259</span>
|
|
1131
|
+
259: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceAttributes</span>
|
|
1132
|
+
260: <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>
|
|
1133
|
+
261: <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>
|
|
1134
|
+
262:
|
|
1135
|
+
263: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"supplement resource #{resource.fullId} {\n"</span>
|
|
1136
|
+
264: <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>
|
|
1137
|
+
265: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
|
|
1138
|
+
266: <span class="ruby-identifier">attr</span> = <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">getAttr</span>(<span class="ruby-identifier">id</span>)
|
|
1139
|
+
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>
|
|
1140
|
+
268: <span class="ruby-operator">!</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">userDefined</span>) <span class="ruby-operator">||</span>
|
|
1141
|
+
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>)
|
|
1142
|
+
270:
|
|
1143
|
+
271: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
|
|
1144
|
+
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>
|
|
1145
|
+
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>)
|
|
1146
|
+
274: <span class="ruby-keyword kw">end</span>
|
|
1147
|
+
275: <span class="ruby-keyword kw">else</span>
|
|
1148
|
+
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>)
|
|
1149
|
+
277: <span class="ruby-keyword kw">end</span>
|
|
1150
|
+
278: <span class="ruby-keyword kw">end</span>
|
|
1151
|
+
279:
|
|
1152
|
+
280: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n"</span>
|
|
1153
|
+
281: <span class="ruby-keyword kw">end</span>
|
|
1154
|
+
282: <span class="ruby-keyword kw">end</span></pre>
|
|
1158
1155
|
</div>
|
|
1159
1156
|
|
|
1160
1157
|
</div>
|
|
@@ -1166,7 +1163,7 @@ the attributes.
|
|
|
1166
1163
|
|
|
1167
1164
|
|
|
1168
1165
|
<div id="generate-esource-ist-method" class="method-detail ">
|
|
1169
|
-
<a name="
|
|
1166
|
+
<a name="method-i-generateResourceList"></a>
|
|
1170
1167
|
|
|
1171
1168
|
<div class="method-heading">
|
|
1172
1169
|
|
|
@@ -1185,17 +1182,17 @@ the attributes.
|
|
|
1185
1182
|
<div class="method-source-code"
|
|
1186
1183
|
id="generate-esource-ist-source">
|
|
1187
1184
|
<pre>
|
|
1188
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1185
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 142</span>
|
|
1186
|
+
142: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceList</span>
|
|
1187
|
+
143: <span class="ruby-comment cmt"># The resource definitions are generated recursively. So we only need to</span>
|
|
1188
|
+
144: <span class="ruby-comment cmt"># start it for the top-level resources.</span>
|
|
1189
|
+
145: <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>
|
|
1190
|
+
146: <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>
|
|
1191
|
+
147: <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-value">0</span>)
|
|
1192
|
+
148: <span class="ruby-keyword kw">end</span>
|
|
1193
|
+
149: <span class="ruby-keyword kw">end</span>
|
|
1194
|
+
150: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1195
|
+
151: <span class="ruby-keyword kw">end</span></pre>
|
|
1199
1196
|
</div>
|
|
1200
1197
|
|
|
1201
1198
|
</div>
|
|
@@ -1207,7 +1204,7 @@ the attributes.
|
|
|
1207
1204
|
|
|
1208
1205
|
|
|
1209
1206
|
<div id="generate-ask-method" class="method-detail ">
|
|
1210
|
-
<a name="
|
|
1207
|
+
<a name="method-i-generateTask"></a>
|
|
1211
1208
|
|
|
1212
1209
|
<div class="method-heading">
|
|
1213
1210
|
|
|
@@ -1230,59 +1227,58 @@ attributes are declared in subsequent supplement statements.
|
|
|
1230
1227
|
<div class="method-source-code"
|
|
1231
1228
|
id="generate-ask-source">
|
|
1232
1229
|
<pre>
|
|
1233
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
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
|
-
240: <span class="ruby-keyword kw">end</span></pre>
|
|
1230
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 185</span>
|
|
1231
|
+
185: <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>)
|
|
1232
|
+
186: <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>
|
|
1233
|
+
187:
|
|
1234
|
+
188: <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>
|
|
1235
|
+
189:
|
|
1236
|
+
190: <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>)
|
|
1237
|
+
191: <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>
|
|
1238
|
+
192: <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>)
|
|
1239
|
+
193: <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>)
|
|
1240
|
+
194: <span class="ruby-keyword kw">end</span>
|
|
1241
|
+
195: <span class="ruby-keyword kw">end</span>
|
|
1242
|
+
196:
|
|
1243
|
+
197: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
|
|
1244
|
+
198: <span class="ruby-comment cmt"># task list as well.</span>
|
|
1245
|
+
199: <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>
|
|
1246
|
+
200: <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>)
|
|
1247
|
+
201: <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>)
|
|
1248
|
+
202: <span class="ruby-keyword kw">end</span>
|
|
1249
|
+
203: <span class="ruby-keyword kw">end</span>
|
|
1250
|
+
204:
|
|
1251
|
+
205: <span class="ruby-comment cmt"># Determine whether this task has subtasks that are included in the</span>
|
|
1252
|
+
206: <span class="ruby-comment cmt"># report or whether this is a leaf task for the report.</span>
|
|
1253
|
+
207: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">true</span>
|
|
1254
|
+
208: <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>
|
|
1255
|
+
209: <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>)
|
|
1256
|
+
210: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">false</span>
|
|
1257
|
+
211: <span class="ruby-keyword kw">break</span>
|
|
1258
|
+
212: <span class="ruby-keyword kw">end</span>
|
|
1259
|
+
213: <span class="ruby-keyword kw">end</span>
|
|
1260
|
+
214:
|
|
1261
|
+
215: <span class="ruby-comment cmt"># For leaf tasks we put some attributes right here.</span>
|
|
1262
|
+
216: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">isLeafTask</span>
|
|
1263
|
+
217: <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>
|
|
1264
|
+
218: <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>)
|
|
1265
|
+
219: <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>]
|
|
1266
|
+
220: <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>)
|
|
1267
|
+
221: <span class="ruby-keyword kw">else</span>
|
|
1268
|
+
222: <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>)
|
|
1269
|
+
223: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'scheduling '</span> <span class="ruby-operator">+</span>
|
|
1270
|
+
224: (<span class="ruby-identifier">task</span>[<span class="ruby-value str">'forward'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">?</span>
|
|
1271
|
+
225: <span class="ruby-value str">'asap'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'alap'</span>),
|
|
1272
|
+
226: <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1273
|
+
227: <span class="ruby-keyword kw">end</span>
|
|
1274
|
+
228: <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>]
|
|
1275
|
+
229: <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>)
|
|
1276
|
+
230: <span class="ruby-keyword kw">end</span>
|
|
1277
|
+
231: <span class="ruby-keyword kw">end</span>
|
|
1278
|
+
232: <span class="ruby-keyword kw">end</span>
|
|
1279
|
+
233:
|
|
1280
|
+
234: <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>
|
|
1281
|
+
235: <span class="ruby-keyword kw">end</span></pre>
|
|
1286
1282
|
</div>
|
|
1287
1283
|
|
|
1288
1284
|
</div>
|
|
@@ -1294,7 +1290,7 @@ attributes are declared in subsequent supplement statements.
|
|
|
1294
1290
|
|
|
1295
1291
|
|
|
1296
1292
|
<div id="generate-ask-ttributes-method" class="method-detail ">
|
|
1297
|
-
<a name="
|
|
1293
|
+
<a name="method-i-generateTaskAttributes"></a>
|
|
1298
1294
|
|
|
1299
1295
|
<div class="method-heading">
|
|
1300
1296
|
|
|
@@ -1316,38 +1312,38 @@ attributes.
|
|
|
1316
1312
|
<div class="method-source-code"
|
|
1317
1313
|
id="generate-ask-ttributes-source">
|
|
1318
1314
|
<pre>
|
|
1319
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1315
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 286</span>
|
|
1316
|
+
286: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskAttributes</span>
|
|
1317
|
+
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>
|
|
1318
|
+
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>
|
|
1319
|
+
289:
|
|
1320
|
+
290: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"supplement task #{task.fullId} {\n"</span>
|
|
1321
|
+
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>
|
|
1322
|
+
292: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
|
|
1323
|
+
293: <span class="ruby-identifier">attr</span> = <span class="ruby-identifier">task</span>.<span class="ruby-identifier">getAttr</span>(<span class="ruby-identifier">id</span>)
|
|
1324
|
+
294: <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>
|
|
1325
|
+
295: <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>)
|
|
1326
|
+
296:
|
|
1327
|
+
297: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
|
|
1328
|
+
298: <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>
|
|
1329
|
+
299: <span class="ruby-comment cmt"># Some attributes need special treatment.</span>
|
|
1330
|
+
300: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">id</span>
|
|
1331
|
+
301: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'depends'</span>
|
|
1332
|
+
302: <span class="ruby-keyword kw">next</span> <span class="ruby-comment cmt"># already taken care of</span>
|
|
1333
|
+
303: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'booking'</span>
|
|
1334
|
+
304: <span class="ruby-identifier">generateBooking</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
1335
|
+
305: <span class="ruby-keyword kw">else</span>
|
|
1336
|
+
306: <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>)
|
|
1337
|
+
307: <span class="ruby-keyword kw">end</span>
|
|
1338
|
+
308: <span class="ruby-keyword kw">end</span>
|
|
1339
|
+
309: <span class="ruby-keyword kw">else</span>
|
|
1340
|
+
310: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>)
|
|
1341
|
+
311: <span class="ruby-keyword kw">end</span>
|
|
1342
|
+
312: <span class="ruby-keyword kw">end</span>
|
|
1343
|
+
313:
|
|
1344
|
+
314: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"}\n"</span>
|
|
1345
|
+
315: <span class="ruby-keyword kw">end</span>
|
|
1346
|
+
316: <span class="ruby-keyword kw">end</span></pre>
|
|
1351
1347
|
</div>
|
|
1352
1348
|
|
|
1353
1349
|
</div>
|
|
@@ -1359,7 +1355,7 @@ attributes.
|
|
|
1359
1355
|
|
|
1360
1356
|
|
|
1361
1357
|
<div id="generate-ask-ependency-method" class="method-detail ">
|
|
1362
|
-
<a name="
|
|
1358
|
+
<a name="method-i-generateTaskDependency"></a>
|
|
1363
1359
|
|
|
1364
1360
|
<div class="method-heading">
|
|
1365
1361
|
|
|
@@ -1381,25 +1377,25 @@ task.
|
|
|
1381
1377
|
<div class="method-source-code"
|
|
1382
1378
|
id="generate-ask-ependency-source">
|
|
1383
1379
|
<pre>
|
|
1384
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1380
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 238</span>
|
|
1381
|
+
238: <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>)
|
|
1382
|
+
239: <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>)
|
|
1383
|
+
240:
|
|
1384
|
+
241: <span class="ruby-identifier">taskDeps</span> = <span class="ruby-identifier">task</span>[<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">scenarioIdx</span>]
|
|
1385
|
+
242: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">taskDeps</span>.<span class="ruby-identifier">empty?</span>
|
|
1386
|
+
243: <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>
|
|
1387
|
+
244: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
|
|
1388
|
+
245: <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>
|
|
1389
|
+
246: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
|
|
1390
|
+
247: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
|
|
1391
|
+
248: <span class="ruby-keyword kw">else</span>
|
|
1392
|
+
249: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">', '</span>
|
|
1393
|
+
250: <span class="ruby-keyword kw">end</span>
|
|
1394
|
+
251: <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>
|
|
1395
|
+
252: <span class="ruby-keyword kw">end</span>
|
|
1396
|
+
253: <span class="ruby-ivar">@file</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"\n"</span>
|
|
1397
|
+
254: <span class="ruby-keyword kw">end</span>
|
|
1398
|
+
255: <span class="ruby-keyword kw">end</span></pre>
|
|
1403
1399
|
</div>
|
|
1404
1400
|
|
|
1405
1401
|
</div>
|
|
@@ -1411,7 +1407,7 @@ task.
|
|
|
1411
1407
|
|
|
1412
1408
|
|
|
1413
1409
|
<div id="generate-ask-ist-method" class="method-detail ">
|
|
1414
|
-
<a name="
|
|
1410
|
+
<a name="method-i-generateTaskList"></a>
|
|
1415
1411
|
|
|
1416
1412
|
<div class="method-heading">
|
|
1417
1413
|
|
|
@@ -1430,16 +1426,16 @@ task.
|
|
|
1430
1426
|
<div class="method-source-code"
|
|
1431
1427
|
id="generate-ask-ist-source">
|
|
1432
1428
|
<pre>
|
|
1433
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1429
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 171</span>
|
|
1430
|
+
171: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskList</span>
|
|
1431
|
+
172: <span class="ruby-comment cmt"># The task definitions are generated recursively. So we only need to start</span>
|
|
1432
|
+
173: <span class="ruby-comment cmt"># it for the top-level tasks.</span>
|
|
1433
|
+
174: <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>
|
|
1434
|
+
175: <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>
|
|
1435
|
+
176: <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">0</span>)
|
|
1436
|
+
177: <span class="ruby-keyword kw">end</span>
|
|
1437
|
+
178: <span class="ruby-keyword kw">end</span>
|
|
1438
|
+
179: <span class="ruby-keyword kw">end</span></pre>
|
|
1443
1439
|
</div>
|
|
1444
1440
|
|
|
1445
1441
|
</div>
|
|
@@ -1451,7 +1447,7 @@ task.
|
|
|
1451
1447
|
|
|
1452
1448
|
|
|
1453
1449
|
<div id="get-ookings-method" class="method-detail ">
|
|
1454
|
-
<a name="
|
|
1450
|
+
<a name="method-i-getBookings"></a>
|
|
1455
1451
|
|
|
1456
1452
|
<div class="method-heading">
|
|
1457
1453
|
|
|
@@ -1473,29 +1469,29 @@ report.
|
|
|
1473
1469
|
<div class="method-source-code"
|
|
1474
1470
|
id="get-ookings-source">
|
|
1475
1471
|
<pre>
|
|
1476
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1472
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 339</span>
|
|
1473
|
+
339: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getBookings</span>
|
|
1474
|
+
340: <span class="ruby-ivar">@bookings</span> = {}
|
|
1475
|
+
341: <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>)
|
|
1476
|
+
342: <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>
|
|
1477
|
+
343: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>] = {}
|
|
1478
|
+
344: <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>
|
|
1479
|
+
345: <span class="ruby-comment cmt"># Get the bookings for this resource hashed by task.</span>
|
|
1480
|
+
346: <span class="ruby-identifier">bookings</span> = <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">getBookings</span>(<span class="ruby-identifier">scenarioIdx</span>)
|
|
1481
|
+
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>
|
|
1482
|
+
348:
|
|
1483
|
+
349: <span class="ruby-comment cmt"># Now convert/add them to a tripple-stage hash by scenarioIdx, task</span>
|
|
1484
|
+
350: <span class="ruby-comment cmt"># and then resource.</span>
|
|
1485
|
+
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>
|
|
1486
|
+
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>)
|
|
1487
|
+
353: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>] = {}
|
|
1488
|
+
354: <span class="ruby-keyword kw">end</span>
|
|
1489
|
+
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>
|
|
1490
|
+
356: <span class="ruby-keyword kw">end</span>
|
|
1491
|
+
357: <span class="ruby-keyword kw">end</span>
|
|
1492
|
+
358: <span class="ruby-keyword kw">end</span>
|
|
1493
|
+
359: <span class="ruby-keyword kw">end</span>
|
|
1494
|
+
360: <span class="ruby-keyword kw">end</span></pre>
|
|
1499
1495
|
</div>
|
|
1500
1496
|
|
|
1501
1497
|
</div>
|
|
@@ -1507,7 +1503,7 @@ report.
|
|
|
1507
1503
|
|
|
1508
1504
|
|
|
1509
1505
|
<div id="indent-lock-method" class="method-detail ">
|
|
1510
|
-
<a name="
|
|
1506
|
+
<a name="method-i-indentBlock"></a>
|
|
1511
1507
|
|
|
1512
1508
|
<div class="method-heading">
|
|
1513
1509
|
|
|
@@ -1533,21 +1529,21 @@ a line break.
|
|
|
1533
1529
|
<div class="method-source-code"
|
|
1534
1530
|
id="indent-lock-source">
|
|
1535
1531
|
<pre>
|
|
1536
|
-
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1532
|
+
<span class="ruby-comment cmt"># File lib/reports/TjpExportRE.rb, line 376</span>
|
|
1533
|
+
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>)
|
|
1534
|
+
377: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
|
|
1535
|
+
378: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-value">0</span>
|
|
1536
|
+
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>
|
|
1537
|
+
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>
|
|
1538
|
+
381: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-identifier">i</span>
|
|
1539
|
+
382: <span class="ruby-keyword kw">end</span>
|
|
1540
|
+
383: <span class="ruby-identifier">out</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>]
|
|
1541
|
+
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>
|
|
1542
|
+
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>)
|
|
1543
|
+
386: <span class="ruby-keyword kw">end</span>
|
|
1544
|
+
387: <span class="ruby-keyword kw">end</span>
|
|
1545
|
+
388: <span class="ruby-identifier">out</span>
|
|
1546
|
+
389: <span class="ruby-keyword kw">end</span></pre>
|
|
1551
1547
|
</div>
|
|
1552
1548
|
|
|
1553
1549
|
</div>
|