taskjuggler 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +1144 -2047
- data/README +1 -1
- data/Rakefile +6 -6
- data/data/css/tjmanual.css +20 -0
- data/data/css/tjreport.css +7 -6
- data/doc/AppConfig.html +136 -130
- data/doc/Arguments.html +46 -40
- data/doc/CHANGELOG.html +1162 -2057
- data/doc/COPYING.html +8 -2
- data/doc/Object.html +205 -199
- data/doc/README.html +9 -3
- data/doc/RuntimeConfig.html +75 -69
- data/doc/String.html +69 -63
- data/doc/TaskJuggler.html +350 -291
- data/doc/TaskJuggler/Account.html +26 -20
- data/doc/TaskJuggler/AccountAttribute.html +24 -18
- data/doc/TaskJuggler/AccountScenario.html +24 -18
- data/doc/TaskJuggler/Allocation.html +74 -68
- data/doc/TaskJuggler/AllocationAttribute.html +54 -48
- data/doc/TaskJuggler/AttributeBase.html +172 -93
- data/doc/TaskJuggler/AttributeDefinition.html +22 -16
- data/doc/TaskJuggler/AttributeOverwrite.html +586 -0
- data/doc/TaskJuggler/BatchProcessor.html +263 -257
- data/doc/TaskJuggler/Booking.html +44 -38
- data/doc/TaskJuggler/BookingListAttribute.html +25 -21
- data/doc/TaskJuggler/BooleanAttribute.html +24 -18
- data/doc/TaskJuggler/CSVFile.html +193 -187
- data/doc/TaskJuggler/CellSettingPattern.html +13 -7
- data/doc/TaskJuggler/CellSettingPatternList.html +25 -19
- data/doc/TaskJuggler/Charge.html +49 -43
- data/doc/TaskJuggler/ChargeListAttribute.html +21 -15
- data/doc/TaskJuggler/ChargeSet.html +94 -88
- data/doc/TaskJuggler/ChargeSetListAttribute.html +29 -25
- data/doc/TaskJuggler/CollisionDetector.html +142 -136
- data/doc/TaskJuggler/ColumnListAttribute.html +21 -17
- data/doc/TaskJuggler/ColumnTable.html +50 -44
- data/doc/TaskJuggler/Daemon.html +71 -50
- data/doc/TaskJuggler/DataCache.html +110 -58
- data/doc/TaskJuggler/DataCacheEntry.html +22 -16
- data/doc/TaskJuggler/DateAttribute.html +24 -18
- data/doc/TaskJuggler/DefinitionListAttribute.html +12 -6
- data/doc/TaskJuggler/DependencyListAttribute.html +29 -25
- data/doc/TaskJuggler/DurationAttribute.html +25 -19
- data/doc/TaskJuggler/FileList.html +25 -19
- data/doc/TaskJuggler/FileRecord.html +17 -11
- data/doc/TaskJuggler/FixnumAttribute.html +16 -10
- data/doc/TaskJuggler/FlagListAttribute.html +25 -21
- data/doc/TaskJuggler/FloatAttribute.html +20 -14
- data/doc/TaskJuggler/FormatListAttribute.html +17 -11
- data/doc/TaskJuggler/GanttChart.html +242 -236
- data/doc/TaskJuggler/GanttContainer.html +71 -67
- data/doc/TaskJuggler/GanttHeader.html +113 -107
- data/doc/TaskJuggler/GanttHeaderScaleItem.html +26 -20
- data/doc/TaskJuggler/GanttLine.html +217 -210
- data/doc/TaskJuggler/GanttLoadStack.html +89 -83
- data/doc/TaskJuggler/GanttMilestone.html +11 -6
- data/doc/TaskJuggler/GanttRouter.html +194 -186
- data/doc/TaskJuggler/GanttTaskBar.html +41 -34
- data/doc/TaskJuggler/HTMLDocument.html +52 -46
- data/doc/TaskJuggler/HTMLGraphics.html +58 -52
- data/doc/TaskJuggler/Interval.html +90 -84
- data/doc/TaskJuggler/IntervalList.html +777 -0
- data/doc/TaskJuggler/IntervalListAttribute.html +29 -25
- data/doc/TaskJuggler/JobInfo.html +36 -30
- data/doc/TaskJuggler/Journal.html +188 -177
- data/doc/TaskJuggler/JournalEntry.html +36 -30
- data/doc/TaskJuggler/JournalEntryList.html +88 -82
- data/doc/TaskJuggler/KeywordArray.html +12 -6
- data/doc/TaskJuggler/KeywordDocumentation.html +512 -503
- data/doc/TaskJuggler/Limits.html +111 -105
- data/doc/TaskJuggler/Limits/Limit.html +71 -65
- data/doc/TaskJuggler/LimitsAttribute.html +21 -15
- data/doc/TaskJuggler/ListAttributeBase.html +16 -10
- data/doc/TaskJuggler/Log.html +111 -105
- data/doc/TaskJuggler/LogFile.html +54 -48
- data/doc/TaskJuggler/LogicalAttribute.html +35 -29
- data/doc/TaskJuggler/LogicalExpression.html +32 -26
- data/doc/TaskJuggler/LogicalExpressionAttribute.html +16 -10
- data/doc/TaskJuggler/LogicalExpressionListAttribute.html +671 -0
- data/doc/TaskJuggler/LogicalFlag.html +24 -18
- data/doc/TaskJuggler/LogicalFunction.html +164 -158
- data/doc/TaskJuggler/LogicalOperation.html +138 -132
- data/doc/TaskJuggler/Macro.html +14 -8
- data/doc/TaskJuggler/MacroTable.html +42 -36
- data/doc/TaskJuggler/ManagerResponsibilities.html +19 -13
- data/doc/TaskJuggler/ManagerStatusRecord.html +23 -17
- data/doc/TaskJuggler/Message.html +56 -50
- data/doc/TaskJuggler/MessageHandler.html +73 -67
- data/doc/TaskJuggler/Navigator.html +92 -86
- data/doc/TaskJuggler/NavigatorElement.html +88 -82
- data/doc/TaskJuggler/NikuProject.html +15 -9
- data/doc/TaskJuggler/NikuReport.html +405 -370
- data/doc/TaskJuggler/NikuResource.html +13 -7
- data/doc/TaskJuggler/NodeListAttribute.html +13 -9
- data/doc/TaskJuggler/PlaceHolderCell.html +22 -16
- data/doc/TaskJuggler/ProcessIntercom.html +116 -110
- data/doc/TaskJuggler/ProcessIntercomIface.html +39 -33
- data/doc/TaskJuggler/Project.html +1064 -895
- data/doc/TaskJuggler/ProjectBroker.html +439 -366
- data/doc/TaskJuggler/ProjectBrokerIface.html +63 -53
- data/doc/TaskJuggler/ProjectFileParser.html +329 -319
- data/doc/TaskJuggler/ProjectFileScanner.html +351 -345
- data/doc/TaskJuggler/ProjectRecord.html +66 -60
- data/doc/TaskJuggler/ProjectServer.html +287 -280
- data/doc/TaskJuggler/ProjectServerIface.html +43 -37
- data/doc/TaskJuggler/PropertyAttribute.html +16 -10
- data/doc/TaskJuggler/PropertyList.html +205 -199
- data/doc/TaskJuggler/PropertySet.html +264 -296
- data/doc/TaskJuggler/PropertyTreeNode.html +455 -505
- data/doc/TaskJuggler/Query.html +309 -524
- data/doc/TaskJuggler/RTFHandlers.html +17 -11
- data/doc/TaskJuggler/RTFNavigator.html +33 -27
- data/doc/TaskJuggler/RTFQuery.html +135 -129
- data/doc/TaskJuggler/RTFReport.html +63 -57
- data/doc/TaskJuggler/RTFReportLink.html +55 -49
- data/doc/TaskJuggler/RTFWithQuerySupport.html +17 -11
- data/doc/TaskJuggler/RealFormat.html +64 -58
- data/doc/TaskJuggler/RealFormatAttribute.html +12 -6
- data/doc/TaskJuggler/ReferenceAttribute.html +35 -29
- data/doc/TaskJuggler/Report.html +294 -249
- data/doc/TaskJuggler/ReportBase.html +229 -223
- data/doc/TaskJuggler/ReportContext.html +52 -46
- data/doc/TaskJuggler/ReportServer.html +143 -137
- data/doc/TaskJuggler/ReportServerIface.html +51 -43
- data/doc/TaskJuggler/ReportServerRecord.html +36 -30
- data/doc/TaskJuggler/ReportServlet.html +167 -140
- data/doc/TaskJuggler/ReportTable.html +137 -131
- data/doc/TaskJuggler/ReportTableCell.html +332 -292
- data/doc/TaskJuggler/ReportTableColumn.html +46 -40
- data/doc/TaskJuggler/ReportTableLegend.html +43 -38
- data/doc/TaskJuggler/ReportTableLine.html +66 -60
- data/doc/TaskJuggler/Resource.html +166 -160
- data/doc/TaskJuggler/ResourceListAttribute.html +54 -32
- data/doc/TaskJuggler/ResourceListRE.html +47 -41
- data/doc/TaskJuggler/ResourceScenario.html +671 -644
- data/doc/TaskJuggler/RichText.html +51 -45
- data/doc/TaskJuggler/RichTextAttribute.html +28 -22
- data/doc/TaskJuggler/RichTextDocument.html +96 -90
- data/doc/TaskJuggler/RichTextElement.html +503 -497
- data/doc/TaskJuggler/RichTextFunctionExample.html +41 -35
- data/doc/TaskJuggler/RichTextFunctionHandler.html +19 -13
- data/doc/TaskJuggler/RichTextImage.html +14 -8
- data/doc/TaskJuggler/RichTextIntermediate.html +86 -80
- data/doc/TaskJuggler/RichTextParser.html +59 -53
- data/doc/TaskJuggler/RichTextScanner.html +184 -178
- data/doc/TaskJuggler/RichTextSnip.html +69 -63
- data/doc/TaskJuggler/RichTextSyntaxRules.html +416 -410
- data/doc/TaskJuggler/Scenario.html +13 -7
- data/doc/TaskJuggler/ScenarioData.html +40 -34
- data/doc/TaskJuggler/ScenarioListAttribute.html +21 -15
- data/doc/TaskJuggler/Scoreboard.html +129 -107
- data/doc/TaskJuggler/SheetHandlerBase.html +245 -239
- data/doc/TaskJuggler/SheetReceiver.html +333 -327
- data/doc/TaskJuggler/SheetSender.html +227 -221
- data/doc/TaskJuggler/Shift.html +26 -20
- data/doc/TaskJuggler/ShiftAssignment.html +45 -39
- data/doc/TaskJuggler/ShiftAssignments.html +178 -172
- data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +21 -15
- data/doc/TaskJuggler/ShiftScenario.html +29 -23
- data/doc/TaskJuggler/SimpleQueryExpander.html +36 -30
- data/doc/TaskJuggler/SortListAttribute.html +17 -13
- data/doc/TaskJuggler/SourceFileInfo.html +19 -13
- data/doc/TaskJuggler/StatusSheetReceiver.html +31 -25
- data/doc/TaskJuggler/StatusSheetReport.html +166 -159
- data/doc/TaskJuggler/StatusSheetSender.html +80 -74
- data/doc/TaskJuggler/StringAttribute.html +20 -14
- data/doc/TaskJuggler/SymbolAttribute.html +16 -10
- data/doc/TaskJuggler/SyntaxReference.html +231 -225
- data/doc/TaskJuggler/TOCEntry.html +46 -40
- data/doc/TaskJuggler/TSResourceRecord.html +15 -9
- data/doc/TaskJuggler/TSTaskRecord.html +16 -10
- data/doc/TaskJuggler/TableColumnDefinition.html +84 -39
- data/doc/TaskJuggler/TableOfContents.html +28 -22
- data/doc/TaskJuggler/TableReport.html +906 -866
- data/doc/TaskJuggler/Task.html +99 -93
- data/doc/TaskJuggler/TaskDependency.html +24 -18
- data/doc/TaskJuggler/TaskListAttribute.html +29 -25
- data/doc/TaskJuggler/TaskListRE.html +46 -39
- data/doc/TaskJuggler/TaskScenario.html +2218 -1965
- data/doc/TaskJuggler/TextFormatter.html +154 -148
- data/doc/TaskJuggler/TextParser.html +362 -348
- data/doc/TaskJuggler/TextParser/Pattern.html +313 -307
- data/doc/TaskJuggler/TextParser/Rule.html +147 -141
- data/doc/TaskJuggler/TextParser/StackElement.html +58 -52
- data/doc/TaskJuggler/TextParser/State.html +88 -82
- data/doc/TaskJuggler/TextParser/StateTransition.html +42 -36
- data/doc/TaskJuggler/TextParser/TextParserResultArray.html +20 -14
- data/doc/TaskJuggler/TextParser/TokenDoc.html +19 -13
- data/doc/TaskJuggler/TextReport.html +80 -74
- data/doc/TaskJuggler/TextScanner.html +284 -272
- data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +14 -8
- data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +21 -15
- data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +15 -9
- data/doc/TaskJuggler/TextScanner/StreamHandle.html +102 -96
- data/doc/TaskJuggler/TimeSheet.html +123 -117
- data/doc/TaskJuggler/TimeSheetReceiver.html +28 -22
- data/doc/TaskJuggler/TimeSheetRecord.html +212 -206
- data/doc/TaskJuggler/TimeSheetReport.html +206 -199
- data/doc/TaskJuggler/TimeSheetSender.html +27 -21
- data/doc/TaskJuggler/TimeSheetSummary.html +140 -134
- data/doc/TaskJuggler/TimeSheets.html +20 -14
- data/doc/TaskJuggler/Tj3AppBase.html +100 -94
- data/doc/TaskJuggler/Tj3Client.html +407 -483
- data/doc/TaskJuggler/Tj3Daemon.html +116 -107
- data/doc/TaskJuggler/Tj3SheetAppBase.html +45 -39
- data/doc/TaskJuggler/Tj3SsReceiver.html +31 -25
- data/doc/TaskJuggler/Tj3SsSender.html +64 -58
- data/doc/TaskJuggler/Tj3TsReceiver.html +31 -25
- data/doc/TaskJuggler/Tj3TsSender.html +51 -45
- data/doc/TaskJuggler/Tj3TsSummary.html +59 -53
- data/doc/TaskJuggler/TjException.html +13 -7
- data/doc/TaskJuggler/TjTime.html +444 -438
- data/doc/TaskJuggler/TjpExample.html +84 -78
- data/doc/TaskJuggler/TjpExportRE.html +356 -349
- data/doc/TaskJuggler/TjpSyntaxRules.html +4279 -4151
- data/doc/TaskJuggler/URLParameter.html +16 -10
- data/doc/TaskJuggler/UserManual.html +185 -179
- data/doc/TaskJuggler/VimSyntax.html +144 -138
- data/doc/TaskJuggler/WebServer.html +46 -39
- data/doc/TaskJuggler/WelcomePage.html +769 -0
- data/doc/TaskJuggler/WorkingHours.html +185 -179
- data/doc/TaskJuggler/WorkingHoursAttribute.html +42 -36
- data/doc/TaskJuggler/XMLBlob.html +21 -15
- data/doc/TaskJuggler/XMLComment.html +17 -11
- data/doc/TaskJuggler/XMLDocument.html +33 -27
- data/doc/TaskJuggler/XMLElement.html +97 -91
- data/doc/TaskJuggler/XMLNamedText.html +13 -7
- data/doc/TaskJuggler/XMLText.html +32 -26
- data/doc/index.html +601 -563
- data/doc/lib/AccountScenario_rb.html +5 -3
- data/doc/lib/Account_rb.html +5 -3
- data/doc/lib/Allocation_rb.html +5 -3
- data/doc/lib/AppConfig_rb.html +5 -3
- data/doc/lib/AttributeBase_rb.html +5 -3
- data/doc/lib/AttributeDefinition_rb.html +5 -3
- data/doc/lib/Attributes_rb.html +5 -3
- data/doc/lib/BatchProcessor_rb.html +5 -3
- data/doc/lib/Booking_rb.html +5 -3
- data/doc/lib/ChargeSet_rb.html +5 -3
- data/doc/lib/Charge_rb.html +5 -3
- data/doc/lib/DataCache_rb.html +5 -3
- data/doc/lib/FileList_rb.html +5 -3
- data/doc/lib/HTMLDocument_rb.html +5 -3
- data/doc/lib/IntervalList_rb.html +69 -0
- data/doc/lib/Interval_rb.html +5 -3
- data/doc/lib/Journal_rb.html +5 -3
- data/doc/lib/KeywordArray_rb.html +5 -3
- data/doc/lib/KeywordDocumentation_rb.html +5 -3
- data/doc/lib/Limits_rb.html +5 -3
- data/doc/lib/LogFile_rb.html +5 -3
- data/doc/lib/Log_rb.html +5 -3
- data/doc/lib/LogicalExpression_rb.html +5 -3
- data/doc/lib/LogicalFunction_rb.html +5 -3
- data/doc/lib/LogicalOperation_rb.html +5 -3
- data/doc/lib/MacroTable_rb.html +5 -3
- data/doc/lib/MessageHandler_rb.html +5 -3
- data/doc/lib/ProjectFileParser_rb.html +5 -3
- data/doc/lib/ProjectFileScanner_rb.html +5 -3
- data/doc/lib/Project_rb.html +5 -3
- data/doc/lib/PropertyList_rb.html +5 -3
- data/doc/lib/PropertySet_rb.html +5 -3
- data/doc/lib/PropertyTreeNode_rb.html +5 -3
- data/doc/lib/Query_rb.html +5 -3
- data/doc/lib/RTFHandlers_rb.html +5 -3
- data/doc/lib/RTFNavigator_rb.html +5 -3
- data/doc/lib/RTFQuery_rb.html +5 -3
- data/doc/lib/RTFReportLink_rb.html +5 -3
- data/doc/lib/RTFReport_rb.html +5 -3
- data/doc/lib/RTFWithQuerySupport_rb.html +5 -3
- data/doc/lib/RealFormat_rb.html +5 -3
- data/doc/lib/ResourceScenario_rb.html +5 -3
- data/doc/lib/Resource_rb.html +5 -3
- data/doc/lib/RichTextDocument_rb.html +5 -3
- data/doc/lib/RichTextElement_rb.html +5 -3
- data/doc/lib/RichTextFunctionExample_rb.html +5 -3
- data/doc/lib/RichTextFunctionHandler_rb.html +5 -3
- data/doc/lib/RichTextParser_rb.html +5 -3
- data/doc/lib/RichTextScanner_rb.html +5 -3
- data/doc/lib/RichTextSnip_rb.html +5 -3
- data/doc/lib/RichTextSyntaxRules_rb.html +5 -3
- data/doc/lib/RichText_rb.html +5 -3
- data/doc/lib/RuntimeConfig_rb.html +5 -3
- data/doc/lib/ScenarioData_rb.html +5 -3
- data/doc/lib/Scenario_rb.html +5 -3
- data/doc/lib/Scoreboard_rb.html +7 -3
- data/doc/lib/SheetHandlerBase_rb.html +5 -3
- data/doc/lib/SheetReceiver_rb.html +5 -3
- data/doc/lib/SheetSender_rb.html +5 -3
- data/doc/lib/ShiftAssignments_rb.html +5 -3
- data/doc/lib/ShiftScenario_rb.html +5 -3
- data/doc/lib/Shift_rb.html +5 -3
- data/doc/lib/SimpleQueryExpander_rb.html +5 -3
- data/doc/lib/SourceFileInfo_rb.html +5 -3
- data/doc/lib/StatusSheetReceiver_rb.html +5 -3
- data/doc/lib/StatusSheetSender_rb.html +5 -3
- data/doc/lib/SyntaxReference_rb.html +5 -3
- data/doc/lib/TOCEntry_rb.html +5 -3
- data/doc/lib/TableColumnDefinition_rb.html +5 -3
- data/doc/lib/TableOfContents_rb.html +5 -3
- data/doc/lib/TaskDependency_rb.html +5 -3
- data/doc/lib/TaskJuggler_rb.html +5 -3
- data/doc/lib/TaskScenario_rb.html +5 -3
- data/doc/lib/Task_rb.html +5 -3
- data/doc/lib/TextFormatter_rb.html +6 -4
- data/doc/lib/TextParser/Pattern_rb.html +5 -3
- data/doc/lib/TextParser/Rule_rb.html +5 -3
- data/doc/lib/TextParser/StackElement_rb.html +5 -3
- data/doc/lib/TextParser/State_rb.html +6 -4
- data/doc/lib/TextParser/TokenDoc_rb.html +5 -3
- data/doc/lib/TextParser_rb.html +5 -3
- data/doc/lib/TextScanner_rb.html +5 -3
- data/doc/lib/TimeSheetReceiver_rb.html +5 -3
- data/doc/lib/TimeSheetSender_rb.html +5 -3
- data/doc/lib/TimeSheetSummary_rb.html +6 -4
- data/doc/lib/TimeSheets_rb.html +5 -3
- data/doc/lib/Tj3AppBase_rb.html +5 -3
- data/doc/lib/Tj3Config_rb.html +5 -3
- data/doc/lib/Tj3SheetAppBase_rb.html +5 -3
- data/doc/lib/TjException_rb.html +5 -3
- data/doc/lib/TjTime_rb.html +5 -3
- data/doc/lib/TjpExample_rb.html +5 -3
- data/doc/lib/TjpSyntaxRules_rb.html +5 -3
- data/doc/lib/URLParameter_rb.html +5 -3
- data/doc/lib/UTF8String_rb.html +5 -3
- data/doc/lib/UserManual_rb.html +5 -3
- data/doc/lib/VimSyntax_rb.html +6 -4
- data/doc/lib/WorkingHours_rb.html +5 -3
- data/doc/lib/XMLDocument_rb.html +5 -3
- data/doc/lib/XMLElement_rb.html +5 -3
- data/doc/lib/daemon/Daemon_rb.html +5 -3
- data/doc/lib/daemon/ProcessIntercom_rb.html +7 -3
- data/doc/lib/daemon/ProjectBroker_rb.html +5 -3
- data/doc/lib/daemon/ProjectServer_rb.html +5 -3
- data/doc/lib/daemon/ReportServer_rb.html +5 -3
- data/doc/lib/daemon/ReportServlet_rb.html +69 -0
- data/doc/lib/daemon/WebServer_rb.html +9 -3
- data/doc/lib/daemon/WelcomePage_rb.html +71 -0
- data/doc/lib/deep_copy_rb.html +5 -3
- data/doc/lib/reports/CSVFile_rb.html +5 -3
- data/doc/lib/reports/CollisionDetector_rb.html +5 -3
- data/doc/lib/reports/ColumnTable_rb.html +5 -3
- data/doc/lib/reports/GanttChart_rb.html +5 -3
- data/doc/lib/reports/GanttContainer_rb.html +5 -3
- data/doc/lib/reports/GanttHeaderScaleItem_rb.html +5 -3
- data/doc/lib/reports/GanttHeader_rb.html +5 -3
- data/doc/lib/reports/GanttLine_rb.html +5 -3
- data/doc/lib/reports/GanttLoadStack_rb.html +5 -3
- data/doc/lib/reports/GanttMilestone_rb.html +5 -3
- data/doc/lib/reports/GanttRouter_rb.html +5 -3
- data/doc/lib/reports/GanttTaskBar_rb.html +5 -3
- data/doc/lib/reports/HTMLGraphics_rb.html +5 -3
- data/doc/lib/reports/Navigator_rb.html +5 -3
- data/doc/lib/reports/NikuReport_rb.html +5 -3
- data/doc/lib/reports/ReportBase_rb.html +5 -3
- data/doc/lib/reports/ReportContext_rb.html +5 -3
- data/doc/lib/reports/ReportTableCell_rb.html +5 -3
- data/doc/lib/reports/ReportTableColumn_rb.html +5 -3
- data/doc/lib/reports/ReportTableLegend_rb.html +5 -3
- data/doc/lib/reports/ReportTableLine_rb.html +5 -3
- data/doc/lib/reports/ReportTable_rb.html +5 -3
- data/doc/lib/reports/Report_rb.html +5 -3
- data/doc/lib/reports/ResourceListRE_rb.html +5 -3
- data/doc/lib/reports/StatusSheetReport_rb.html +5 -3
- data/doc/lib/reports/TableReport_rb.html +5 -3
- data/doc/lib/reports/TaskListRE_rb.html +5 -3
- data/doc/lib/reports/TextReport_rb.html +5 -3
- data/doc/lib/reports/TimeSheetReport_rb.html +5 -3
- data/doc/lib/reports/TjpExportRE_rb.html +5 -3
- data/doc/lib/{taskjuggler3_rb.html → tj3_rb.html} +7 -5
- data/doc/lib/tj3client_rb.html +5 -3
- data/doc/lib/tj3d_rb.html +6 -4
- data/doc/lib/tj3man_rb.html +5 -3
- data/doc/lib/tj3ss_receiver_rb.html +5 -3
- data/doc/lib/tj3ss_sender_rb.html +5 -3
- data/doc/lib/tj3ts_receiver_rb.html +5 -3
- data/doc/lib/tj3ts_sender_rb.html +5 -3
- data/doc/lib/tj3ts_summary_rb.html +5 -3
- data/examples/tutorial.tjp +13 -5
- data/gem_spec.rb +3 -0
- data/lib/Account.rb +2 -1
- data/lib/AccountScenario.rb +2 -1
- data/lib/Allocation.rb +2 -1
- data/lib/AppConfig.rb +2 -1
- data/lib/AttributeBase.rb +19 -5
- data/lib/AttributeDefinition.rb +2 -1
- data/lib/Attributes.rb +49 -38
- data/lib/BatchProcessor.rb +2 -1
- data/lib/Booking.rb +2 -1
- data/lib/Charge.rb +2 -1
- data/lib/ChargeSet.rb +2 -1
- data/lib/DataCache.rb +15 -1
- data/lib/FileList.rb +2 -1
- data/lib/HTMLDocument.rb +2 -1
- data/lib/Interval.rb +2 -1
- data/lib/IntervalList.rb +100 -0
- data/lib/Journal.rb +8 -2
- data/lib/KeywordArray.rb +2 -1
- data/lib/KeywordDocumentation.rb +10 -6
- data/lib/Limits.rb +2 -1
- data/lib/Log.rb +3 -2
- data/lib/LogFile.rb +2 -1
- data/lib/LogicalExpression.rb +2 -1
- data/lib/LogicalFunction.rb +2 -1
- data/lib/LogicalOperation.rb +2 -1
- data/lib/MacroTable.rb +2 -1
- data/lib/MessageHandler.rb +2 -1
- data/lib/Project.rb +92 -25
- data/lib/ProjectFileParser.rb +7 -2
- data/lib/ProjectFileScanner.rb +2 -1
- data/lib/PropertyList.rb +2 -1
- data/lib/PropertySet.rb +2 -6
- data/lib/PropertyTreeNode.rb +22 -44
- data/lib/Query.rb +32 -13
- data/lib/RTFHandlers.rb +2 -1
- data/lib/RTFNavigator.rb +2 -1
- data/lib/RTFQuery.rb +3 -2
- data/lib/RTFReport.rb +2 -1
- data/lib/RTFReportLink.rb +2 -1
- data/lib/RTFWithQuerySupport.rb +2 -1
- data/lib/RealFormat.rb +2 -1
- data/lib/Resource.rb +2 -1
- data/lib/ResourceScenario.rb +35 -14
- data/lib/RichText.rb +2 -1
- data/lib/RichTextDocument.rb +2 -1
- data/lib/RichTextElement.rb +2 -1
- data/lib/RichTextFunctionExample.rb +2 -1
- data/lib/RichTextFunctionHandler.rb +2 -1
- data/lib/RichTextParser.rb +2 -1
- data/lib/RichTextScanner.rb +2 -1
- data/lib/RichTextSnip.rb +2 -1
- data/lib/RichTextSyntaxRules.rb +2 -1
- data/lib/RuntimeConfig.rb +2 -1
- data/lib/Scenario.rb +2 -1
- data/lib/ScenarioData.rb +2 -1
- data/lib/Scoreboard.rb +27 -8
- data/lib/SheetHandlerBase.rb +2 -1
- data/lib/SheetReceiver.rb +2 -1
- data/lib/SheetSender.rb +2 -1
- data/lib/Shift.rb +2 -1
- data/lib/ShiftAssignments.rb +2 -1
- data/lib/ShiftScenario.rb +2 -1
- data/lib/SimpleQueryExpander.rb +2 -1
- data/lib/SourceFileInfo.rb +2 -1
- data/lib/StatusSheetReceiver.rb +2 -1
- data/lib/StatusSheetSender.rb +2 -1
- data/lib/SyntaxReference.rb +2 -1
- data/lib/TOCEntry.rb +2 -1
- data/lib/TableColumnDefinition.rb +9 -2
- data/lib/TableOfContents.rb +2 -1
- data/lib/Task.rb +2 -1
- data/lib/TaskDependency.rb +2 -1
- data/lib/TaskJuggler.rb +8 -6
- data/lib/TaskScenario.rb +337 -153
- data/lib/TextFormatter.rb +3 -2
- data/lib/TextParser.rb +7 -2
- data/lib/TextParser/Pattern.rb +2 -1
- data/lib/TextParser/Rule.rb +2 -1
- data/lib/TextParser/StackElement.rb +2 -1
- data/lib/TextParser/State.rb +3 -2
- data/lib/TextParser/TokenDoc.rb +2 -1
- data/lib/TextScanner.rb +12 -5
- data/lib/TimeSheetReceiver.rb +2 -1
- data/lib/TimeSheetSender.rb +2 -1
- data/lib/TimeSheetSummary.rb +3 -2
- data/lib/TimeSheets.rb +2 -1
- data/lib/Tj3AppBase.rb +6 -5
- data/lib/Tj3Config.rb +5 -4
- data/lib/Tj3SheetAppBase.rb +2 -1
- data/lib/TjException.rb +2 -1
- data/lib/TjTime.rb +2 -1
- data/lib/TjpExample.rb +2 -1
- data/lib/TjpSyntaxRules.rb +264 -65
- data/lib/URLParameter.rb +2 -1
- data/lib/UTF8String.rb +2 -1
- data/lib/UserManual.rb +2 -1
- data/lib/VimSyntax.rb +3 -2
- data/lib/WorkingHours.rb +2 -1
- data/lib/XMLDocument.rb +2 -1
- data/lib/XMLElement.rb +2 -1
- data/lib/daemon/Daemon.rb +3 -1
- data/lib/daemon/ProcessIntercom.rb +3 -1
- data/lib/daemon/ProjectBroker.rb +84 -32
- data/lib/daemon/ProjectServer.rb +5 -3
- data/lib/daemon/ReportServer.rb +8 -5
- data/lib/daemon/ReportServlet.rb +166 -0
- data/lib/daemon/WebServer.rb +6 -150
- data/lib/daemon/WelcomePage.rb +80 -0
- data/lib/deep_copy.rb +2 -1
- data/lib/reports/CSVFile.rb +2 -1
- data/lib/reports/CollisionDetector.rb +2 -1
- data/lib/reports/ColumnTable.rb +2 -1
- data/lib/reports/GanttChart.rb +2 -1
- data/lib/reports/GanttContainer.rb +3 -4
- data/lib/reports/GanttHeader.rb +2 -1
- data/lib/reports/GanttHeaderScaleItem.rb +2 -1
- data/lib/reports/GanttLine.rb +12 -10
- data/lib/reports/GanttLoadStack.rb +2 -1
- data/lib/reports/GanttMilestone.rb +3 -3
- data/lib/reports/GanttRouter.rb +4 -1
- data/lib/reports/GanttTaskBar.rb +9 -7
- data/lib/reports/HTMLGraphics.rb +2 -1
- data/lib/reports/Navigator.rb +2 -1
- data/lib/reports/NikuReport.rb +79 -49
- data/lib/reports/Report.rb +42 -10
- data/lib/reports/ReportBase.rb +2 -1
- data/lib/reports/ReportContext.rb +2 -1
- data/lib/reports/ReportTable.rb +2 -1
- data/lib/reports/ReportTableCell.rb +63 -28
- data/lib/reports/ReportTableColumn.rb +2 -1
- data/lib/reports/ReportTableLegend.rb +5 -5
- data/lib/reports/ReportTableLine.rb +2 -1
- data/lib/reports/ResourceListRE.rb +2 -1
- data/lib/reports/StatusSheetReport.rb +4 -2
- data/lib/reports/TableReport.rb +42 -38
- data/lib/reports/TaskListRE.rb +4 -2
- data/lib/reports/TextReport.rb +2 -1
- data/lib/reports/TimeSheetReport.rb +4 -2
- data/lib/reports/TjpExportRE.rb +4 -2
- data/lib/{taskjuggler3.rb → tj3.rb} +6 -5
- data/lib/tj3client.rb +19 -36
- data/lib/tj3d.rb +6 -2
- data/lib/tj3man.rb +4 -3
- data/lib/tj3ss_receiver.rb +2 -1
- data/lib/tj3ss_sender.rb +2 -1
- data/lib/tj3ts_receiver.rb +2 -1
- data/lib/tj3ts_sender.rb +2 -1
- data/lib/tj3ts_summary.rb +2 -1
- data/manual/Day_To_Day_Juggling +36 -0
- data/manual/How_To_Contribute +9 -4
- data/manual/Installation +10 -3
- data/manual/TaskJuggler_Internals +0 -2
- data/manual/Tutorial +25 -3
- data/prj_cfg.rb +4 -2
- data/spec/IntervalList_spec.rb +138 -0
- data/spec/ProjectBroker_spec.rb +133 -0
- data/tasks/changelog.rake +41 -24
- data/tasks/csts.rake +1 -0
- data/tasks/gem.rake +1 -0
- data/tasks/rcov.rake +1 -1
- data/tasks/spec.rake +7 -0
- data/tasks/test.rake +1 -0
- data/test/MessageChecker.rb +2 -1
- data/test/TestSuite/CSV-Reports/niku.tjp +70 -0
- data/test/TestSuite/CSV-Reports/{celltext-Reference.csv → refs/celltext.csv} +0 -0
- data/test/TestSuite/CSV-Reports/refs/niku.csv +5 -0
- data/test/TestSuite/CSV-Reports/{resourcereport-Reference.csv → refs/resourcereport.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{resourcereport_with_tasks-Reference.csv → refs/resourcereport_with_tasks.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortByTree-Reference.csv → refs/sortByTree.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_duration.down-Reference.csv → refs/sortBy_duration.down.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_effort.up-Reference.csv → refs/sortBy_effort.up.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{sortBy_plan.start.down-Reference.csv → refs/sortBy_plan.start.down.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{taskreport-Reference.csv → refs/taskreport.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{taskreport_with_resources-Reference.csv → refs/taskreport_with_resources.csv} +0 -0
- data/test/TestSuite/CSV-Reports/{weekly-Reference.csv → refs/weekly.csv} +0 -0
- data/test/TestSuite/HTML-Reports/Alerts.tjp +12 -0
- data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -2
- data/test/TestSuite/Scheduler/Correct/Container-2.tjp +1 -2
- data/test/TestSuite/Scheduler/Correct/InheritedAttributes.tjp +77 -0
- data/test/TestSuite/Scheduler/Correct/WeakDeps.tjp +40 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_12.tjp +2 -2
- data/test/TestSuite/Scheduler/Errors/loop_detected_13.tjp +3 -4
- data/test/TestSuite/Scheduler/Errors/loop_detected_3.tjp +2 -2
- data/test/TestSuite/Scheduler/Errors/loop_detected_6.tjp +8 -7
- data/test/TestSuite/Scheduler/Errors/onend_wrong_direction.tjp +19 -0
- data/test/TestSuite/Scheduler/Errors/onstart_wrong_direction.tjp +18 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_multi.tjp +1 -2
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/boss_2002-03-02.tji +46 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/dev2_2002-03-02.tji +22 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/2002-03-02/resources.yml +11 -0
- data/test/TestSuite/StatusSheets/StatusSheetTemplates/acceptable_intervals +1 -0
- data/test/TestSuite/StatusSheets/sender.log +256 -0
- data/test/TestSuite/StatusSheets/statussheets.log +9 -0
- data/test/TestSuite/StatusSheets/tj3d.log +395 -0
- data/test/TestSuite/Syntax/Correct/Limits-1.tjp +2 -0
- data/test/TestSuite/Syntax/Correct/Niku.tjp +6 -1
- data/test/TestSuite/Syntax/Correct/Scenario.tjp +4 -1
- data/test/TestSuite/Syntax/Correct/Supplement.tjp +12 -5
- data/test/TestSuite/Syntax/Correct/TaskPrefix.tji +3 -0
- data/test/TestSuite/Syntax/Correct/TaskPrefix.tjp +24 -0
- data/test/TestSuite/Syntax/Correct/css/tjreport.css +7 -2
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +15 -5
- data/test/all.rb +2 -4
- data/test/test_BatchProcessor.rb +2 -1
- data/test/test_CSV-Reports.rb +34 -23
- data/test/test_CSVFile.rb +2 -1
- data/test/test_CollisionDetector.rb +3 -2
- data/test/test_Journal.rb +2 -1
- data/test/test_Limits.rb +2 -1
- data/test/test_LogicalExpression.rb +2 -1
- data/test/test_MacroTable.rb +2 -1
- data/test/test_Project.rb +3 -2
- data/test/test_ProjectFileScanner.rb +2 -1
- data/test/test_PropertySet.rb +2 -1
- data/test/test_Query.rb +2 -1
- data/test/test_RealFormat.rb +2 -1
- data/test/test_ReportGenerator.rb +2 -1
- data/test/test_RichText.rb +2 -1
- data/test/test_Scheduler.rb +2 -1
- data/test/test_ShiftAssignments.rb +2 -1
- data/test/test_SimpleQueryExpander.rb +2 -1
- data/test/test_Syntax.rb +2 -1
- data/test/test_TextFormatter.rb +3 -2
- data/test/test_TjTime.rb +2 -1
- data/test/test_TjpExample.rb +2 -1
- data/test/test_URLParameter.rb +2 -1
- data/test/test_UTF8String.rb +2 -1
- data/test/test_WorkingHours.rb +2 -1
- data/test/test_deep_copy.rb +2 -1
- metadata +74 -20
- data/doc/StringIO.html +0 -595
- data/test/TestSuite/Scheduler/Errors/loop_detected_7.tjp +0 -46
- data/test/TestSuite/Scheduler/Errors/loop_detected_8.tjp +0 -51
- data/test/TestSuite/Scheduler/Errors/multiple_durations.tjp +0 -11
|
@@ -150,6 +150,8 @@
|
|
|
150
150
|
|
|
151
151
|
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
|
|
152
152
|
|
|
153
|
+
<li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
|
|
154
|
+
|
|
153
155
|
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
|
|
154
156
|
|
|
155
157
|
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
|
|
@@ -228,6 +230,8 @@
|
|
|
228
230
|
|
|
229
231
|
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
|
|
230
232
|
|
|
233
|
+
<li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
|
|
234
|
+
|
|
231
235
|
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
|
|
232
236
|
|
|
233
237
|
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
|
|
@@ -260,6 +264,8 @@
|
|
|
260
264
|
|
|
261
265
|
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
|
|
262
266
|
|
|
267
|
+
<li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
|
|
268
|
+
|
|
263
269
|
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
|
|
264
270
|
|
|
265
271
|
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
|
|
@@ -540,6 +546,8 @@
|
|
|
540
546
|
|
|
541
547
|
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
542
548
|
|
|
549
|
+
<li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
|
|
550
|
+
|
|
543
551
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
544
552
|
|
|
545
553
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -566,8 +574,6 @@
|
|
|
566
574
|
|
|
567
575
|
<li><a href="../String.html">String</a></li>
|
|
568
576
|
|
|
569
|
-
<li><a href="../StringIO.html">StringIO</a></li>
|
|
570
|
-
|
|
571
577
|
</ul>
|
|
572
578
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
573
579
|
</div>
|
|
@@ -615,10 +621,10 @@
|
|
|
615
621
|
<div class="method-source-code"
|
|
616
622
|
id="new-source">
|
|
617
623
|
<pre>
|
|
618
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
624
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 168</span>
|
|
625
|
+
168: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">server</span>)
|
|
626
|
+
169: <span class="ruby-ivar">@server</span> = <span class="ruby-identifier">server</span>
|
|
627
|
+
170: <span class="ruby-keyword kw">end</span></pre>
|
|
622
628
|
</div>
|
|
623
629
|
|
|
624
630
|
</div>
|
|
@@ -655,12 +661,12 @@
|
|
|
655
661
|
<div class="method-source-code"
|
|
656
662
|
id="add-ile-source">
|
|
657
663
|
<pre>
|
|
658
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 178</span>
|
|
665
|
+
178: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addFile</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-identifier">file</span>)
|
|
666
|
+
179: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'addFile'</span>)
|
|
667
|
+
180:
|
|
668
|
+
181: <span class="ruby-identifier">trap</span> { <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">addFile</span>(<span class="ruby-identifier">file</span>) }
|
|
669
|
+
182: <span class="ruby-keyword kw">end</span></pre>
|
|
664
670
|
</div>
|
|
665
671
|
|
|
666
672
|
</div>
|
|
@@ -691,12 +697,12 @@
|
|
|
691
697
|
<div class="method-source-code"
|
|
692
698
|
id="check-tatus-heet-source">
|
|
693
699
|
<pre>
|
|
694
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 205</span>
|
|
701
|
+
205: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkStatusSheet</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-identifier">sheet</span>)
|
|
702
|
+
206: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'checkStatusSheet'</span>)
|
|
703
|
+
207:
|
|
704
|
+
208: <span class="ruby-identifier">trap</span> { <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkStatusSheet</span>(<span class="ruby-identifier">sheet</span>) }
|
|
705
|
+
209: <span class="ruby-keyword kw">end</span></pre>
|
|
700
706
|
</div>
|
|
701
707
|
|
|
702
708
|
</div>
|
|
@@ -727,12 +733,12 @@
|
|
|
727
733
|
<div class="method-source-code"
|
|
728
734
|
id="check-ime-heet-source">
|
|
729
735
|
<pre>
|
|
730
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 199</span>
|
|
737
|
+
199: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkTimeSheet</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-identifier">sheet</span>)
|
|
738
|
+
200: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'checkTimeSheet'</span>)
|
|
739
|
+
201:
|
|
740
|
+
202: <span class="ruby-identifier">trap</span> { <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkTimeSheet</span>(<span class="ruby-identifier">sheet</span>) }
|
|
741
|
+
203: <span class="ruby-keyword kw">end</span></pre>
|
|
736
742
|
</div>
|
|
737
743
|
|
|
738
744
|
</div>
|
|
@@ -749,7 +755,7 @@
|
|
|
749
755
|
<div class="method-heading">
|
|
750
756
|
|
|
751
757
|
<span class="method-name">generateReport</span><span
|
|
752
|
-
class="method-args">(authKey, reportId, regExpMode, dynamicAttributes)</span>
|
|
758
|
+
class="method-args">(authKey, reportId, regExpMode, formats, dynamicAttributes)</span>
|
|
753
759
|
<span class="method-click-advice">click to toggle source</span>
|
|
754
760
|
|
|
755
761
|
</div>
|
|
@@ -763,12 +769,14 @@
|
|
|
763
769
|
<div class="method-source-code"
|
|
764
770
|
id="generate-eport-source">
|
|
765
771
|
<pre>
|
|
766
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 184</span>
|
|
773
|
+
184: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateReport</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">regExpMode</span>, <span class="ruby-identifier">formats</span>, <span class="ruby-identifier">dynamicAttributes</span>)
|
|
774
|
+
185: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'generateReport'</span>)
|
|
775
|
+
186:
|
|
776
|
+
187: <span class="ruby-identifier">trap</span> <span class="ruby-keyword kw">do</span>
|
|
777
|
+
188: <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">generateReport</span>(<span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">regExpMode</span>, <span class="ruby-identifier">formats</span>, <span class="ruby-identifier">dynamicAttributes</span>)
|
|
778
|
+
189: <span class="ruby-keyword kw">end</span>
|
|
779
|
+
190: <span class="ruby-keyword kw">end</span></pre>
|
|
772
780
|
</div>
|
|
773
781
|
|
|
774
782
|
</div>
|
|
@@ -799,12 +807,12 @@
|
|
|
799
807
|
<div class="method-source-code"
|
|
800
808
|
id="list-eports-source">
|
|
801
809
|
<pre>
|
|
802
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
810
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 193</span>
|
|
811
|
+
193: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">listReports</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">regExpMode</span>)
|
|
812
|
+
194: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'generateReport'</span>)
|
|
813
|
+
195:
|
|
814
|
+
196: <span class="ruby-identifier">trap</span> { <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">listReports</span>(<span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">regExpMode</span>) }
|
|
815
|
+
197: <span class="ruby-keyword kw">end</span></pre>
|
|
808
816
|
</div>
|
|
809
817
|
|
|
810
818
|
</div>
|
|
@@ -835,12 +843,12 @@
|
|
|
835
843
|
<div class="method-source-code"
|
|
836
844
|
id="ping-source">
|
|
837
845
|
<pre>
|
|
838
|
-
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
846
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServer.rb, line 172</span>
|
|
847
|
+
172: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ping</span>(<span class="ruby-identifier">authKey</span>)
|
|
848
|
+
173: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">checkKey</span>(<span class="ruby-identifier">authKey</span>, <span class="ruby-value str">'addFile'</span>)
|
|
849
|
+
174:
|
|
850
|
+
175: <span class="ruby-identifier">trap</span> { <span class="ruby-ivar">@server</span>.<span class="ruby-identifier">ping</span> }
|
|
851
|
+
176: <span class="ruby-keyword kw">end</span></pre>
|
|
844
852
|
</div>
|
|
845
853
|
|
|
846
854
|
</div>
|
|
@@ -129,6 +129,8 @@
|
|
|
129
129
|
|
|
130
130
|
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
|
|
131
131
|
|
|
132
|
+
<li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
|
|
133
|
+
|
|
132
134
|
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
|
|
133
135
|
|
|
134
136
|
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
|
|
@@ -207,6 +209,8 @@
|
|
|
207
209
|
|
|
208
210
|
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
|
|
209
211
|
|
|
212
|
+
<li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
|
|
213
|
+
|
|
210
214
|
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
|
|
211
215
|
|
|
212
216
|
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
|
|
@@ -239,6 +243,8 @@
|
|
|
239
243
|
|
|
240
244
|
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
|
|
241
245
|
|
|
246
|
+
<li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
|
|
247
|
+
|
|
242
248
|
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
|
|
243
249
|
|
|
244
250
|
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
|
|
@@ -519,6 +525,8 @@
|
|
|
519
525
|
|
|
520
526
|
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
521
527
|
|
|
528
|
+
<li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
|
|
529
|
+
|
|
522
530
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
523
531
|
|
|
524
532
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -545,8 +553,6 @@
|
|
|
545
553
|
|
|
546
554
|
<li><a href="../String.html">String</a></li>
|
|
547
555
|
|
|
548
|
-
<li><a href="../StringIO.html">StringIO</a></li>
|
|
549
|
-
|
|
550
556
|
</ul>
|
|
551
557
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
552
558
|
</div>
|
|
@@ -654,18 +660,18 @@ href="ProjectServer.html">ProjectServer</a>.
|
|
|
654
660
|
<div class="method-source-code"
|
|
655
661
|
id="new-source">
|
|
656
662
|
<pre>
|
|
657
|
-
<span class="ruby-comment cmt"># File lib/daemon/ProjectServer.rb, line
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
663
|
+
<span class="ruby-comment cmt"># File lib/daemon/ProjectServer.rb, line 387</span>
|
|
664
|
+
387: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">tag</span>)
|
|
665
|
+
388: <span class="ruby-comment cmt"># A random tag to uniquely identify the entry.</span>
|
|
666
|
+
389: <span class="ruby-ivar">@tag</span> = <span class="ruby-identifier">tag</span>
|
|
667
|
+
390: <span class="ruby-comment cmt"># The URI of the ReportServer process.</span>
|
|
668
|
+
391: <span class="ruby-ivar">@uri</span> = <span class="ruby-keyword kw">nil</span>
|
|
669
|
+
392: <span class="ruby-comment cmt"># The authentication key of the ReportServer.</span>
|
|
670
|
+
393: <span class="ruby-ivar">@authKey</span> = <span class="ruby-keyword kw">nil</span>
|
|
671
|
+
394: <span class="ruby-comment cmt"># The DRbObject of the ReportServer.</span>
|
|
672
|
+
395: <span class="ruby-ivar">@reportServer</span> = <span class="ruby-keyword kw">nil</span>
|
|
673
|
+
396: <span class="ruby-ivar">@log</span> = <span class="ruby-constant">LogFile</span>.<span class="ruby-identifier">instance</span>
|
|
674
|
+
397: <span class="ruby-keyword kw">end</span></pre>
|
|
669
675
|
</div>
|
|
670
676
|
|
|
671
677
|
</div>
|
|
@@ -706,22 +712,22 @@ terminated and we can remove it from the list of active ReportServers.
|
|
|
706
712
|
<div class="method-source-code"
|
|
707
713
|
id="ping-source">
|
|
708
714
|
<pre>
|
|
709
|
-
<span class="ruby-comment cmt"># File lib/daemon/ProjectServer.rb, line
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
715
|
+
<span class="ruby-comment cmt"># File lib/daemon/ProjectServer.rb, line 402</span>
|
|
716
|
+
402: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ping</span>
|
|
717
|
+
403: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">true</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@uri</span>
|
|
718
|
+
404:
|
|
719
|
+
405: <span class="ruby-ivar">@log</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"Sending ping to ReportServer #{@uri}"</span>)
|
|
720
|
+
406: <span class="ruby-keyword kw">begin</span>
|
|
721
|
+
407: <span class="ruby-ivar">@reportServer</span> = <span class="ruby-constant">DRbObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-ivar">@uri</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@reportServer</span>
|
|
722
|
+
408: <span class="ruby-ivar">@reportServer</span>.<span class="ruby-identifier">ping</span>(<span class="ruby-ivar">@authKey</span>)
|
|
723
|
+
409: <span class="ruby-keyword kw">rescue</span>
|
|
724
|
+
410: <span class="ruby-comment cmt"># ReportServer processes terminate on request of their clients. Not</span>
|
|
725
|
+
411: <span class="ruby-comment cmt"># responding to a ping is a normal event.</span>
|
|
726
|
+
412: <span class="ruby-ivar">@log</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">"ReportServer (#{@uri}) has terminated"</span>)
|
|
727
|
+
413: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span>
|
|
728
|
+
414: <span class="ruby-keyword kw">end</span>
|
|
729
|
+
415: <span class="ruby-keyword kw">true</span>
|
|
730
|
+
416: <span class="ruby-keyword kw">end</span></pre>
|
|
725
731
|
</div>
|
|
726
732
|
|
|
727
733
|
</div>
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
<div class="section-body">
|
|
39
39
|
<ul>
|
|
40
40
|
|
|
41
|
-
<li><a href="../lib/daemon/
|
|
42
|
-
class="thickbox" title="lib/daemon/
|
|
41
|
+
<li><a href="../lib/daemon/ReportServlet_rb.html?TB_iframe=true&height=550&width=785"
|
|
42
|
+
class="thickbox" title="lib/daemon/ReportServlet.rb">lib/daemon/ReportServlet.rb</a></li>
|
|
43
43
|
|
|
44
44
|
</ul>
|
|
45
45
|
</div>
|
|
@@ -91,6 +91,21 @@
|
|
|
91
91
|
|
|
92
92
|
<!-- Included Modules -->
|
|
93
93
|
|
|
94
|
+
<div id="includes-section" class="section">
|
|
95
|
+
<h3 class="section-header">Included Modules</h3>
|
|
96
|
+
<ul class="link-list">
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
<li><span class="include">DRbUndumped</span></li>
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
<li><span class="include">DRbUndumped</span></li>
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
</ul>
|
|
107
|
+
</div>
|
|
108
|
+
|
|
94
109
|
</div>
|
|
95
110
|
|
|
96
111
|
<div id="project-metadata">
|
|
@@ -141,6 +156,8 @@
|
|
|
141
156
|
|
|
142
157
|
<li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
|
|
143
158
|
|
|
159
|
+
<li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
|
|
160
|
+
|
|
144
161
|
<li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
|
|
145
162
|
|
|
146
163
|
<li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
|
|
@@ -219,6 +236,8 @@
|
|
|
219
236
|
|
|
220
237
|
<li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
|
|
221
238
|
|
|
239
|
+
<li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
|
|
240
|
+
|
|
222
241
|
<li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
|
|
223
242
|
|
|
224
243
|
<li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
|
|
@@ -251,6 +270,8 @@
|
|
|
251
270
|
|
|
252
271
|
<li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
|
|
253
272
|
|
|
273
|
+
<li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
|
|
274
|
+
|
|
254
275
|
<li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
|
|
255
276
|
|
|
256
277
|
<li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
|
|
@@ -531,6 +552,8 @@
|
|
|
531
552
|
|
|
532
553
|
<li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
|
|
533
554
|
|
|
555
|
+
<li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
|
|
556
|
+
|
|
534
557
|
<li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
|
|
535
558
|
|
|
536
559
|
<li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
|
|
@@ -557,8 +580,6 @@
|
|
|
557
580
|
|
|
558
581
|
<li><a href="../String.html">String</a></li>
|
|
559
582
|
|
|
560
|
-
<li><a href="../StringIO.html">StringIO</a></li>
|
|
561
|
-
|
|
562
583
|
</ul>
|
|
563
584
|
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
|
|
564
585
|
</div>
|
|
@@ -606,10 +627,10 @@
|
|
|
606
627
|
<div class="method-source-code"
|
|
607
628
|
id="get-instance-source">
|
|
608
629
|
<pre>
|
|
609
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
630
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 25</span>
|
|
631
|
+
25: <span class="ruby-keyword kw">def</span> <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">get_instance</span>(<span class="ruby-identifier">config</span>, <span class="ruby-identifier">options</span>)
|
|
632
|
+
26: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">config</span>, *<span class="ruby-identifier">options</span>)
|
|
633
|
+
27: <span class="ruby-keyword kw">end</span></pre>
|
|
613
634
|
</div>
|
|
614
635
|
|
|
615
636
|
</div>
|
|
@@ -640,10 +661,11 @@
|
|
|
640
661
|
<div class="method-source-code"
|
|
641
662
|
id="new-source">
|
|
642
663
|
<pre>
|
|
643
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
664
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 20</span>
|
|
665
|
+
20: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">config</span>, *<span class="ruby-identifier">options</span>)
|
|
666
|
+
21: <span class="ruby-keyword kw">super</span>
|
|
667
|
+
22: <span class="ruby-ivar">@broker</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">0</span>]
|
|
668
|
+
23: <span class="ruby-keyword kw">end</span></pre>
|
|
647
669
|
</div>
|
|
648
670
|
|
|
649
671
|
</div>
|
|
@@ -680,23 +702,23 @@
|
|
|
680
702
|
<div class="method-source-code"
|
|
681
703
|
id="do--source">
|
|
682
704
|
<pre>
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
705
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 29</span>
|
|
706
|
+
29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">do_GET</span>(<span class="ruby-identifier">req</span>, <span class="ruby-identifier">res</span>)
|
|
707
|
+
30: <span class="ruby-ivar">@req</span> = <span class="ruby-identifier">req</span>
|
|
708
|
+
31: <span class="ruby-ivar">@res</span> = <span class="ruby-identifier">res</span>
|
|
709
|
+
32: <span class="ruby-keyword kw">begin</span>
|
|
710
|
+
33: <span class="ruby-identifier">projectId</span> = <span class="ruby-identifier">req</span>.<span class="ruby-identifier">query</span>[<span class="ruby-value str">'project'</span>]
|
|
711
|
+
34: <span class="ruby-identifier">reportId</span> = <span class="ruby-identifier">req</span>.<span class="ruby-identifier">query</span>[<span class="ruby-value str">'report'</span>]
|
|
712
|
+
35: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">projectId</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">reportId</span>.<span class="ruby-identifier">nil?</span>
|
|
713
|
+
36: <span class="ruby-identifier">generateWelcomePage</span>(<span class="ruby-identifier">projectId</span>)
|
|
714
|
+
37: <span class="ruby-keyword kw">else</span>
|
|
715
|
+
38: <span class="ruby-identifier">attributes</span> = <span class="ruby-identifier">req</span>.<span class="ruby-identifier">query</span>[<span class="ruby-value str">'attributes'</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
|
|
716
|
+
39: <span class="ruby-identifier">attributes</span> = <span class="ruby-constant">URLParameter</span>.<span class="ruby-identifier">decode</span>(<span class="ruby-identifier">attributes</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">empty?</span>
|
|
717
|
+
40: <span class="ruby-identifier">generateReport</span>(<span class="ruby-identifier">projectId</span>, <span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">attributes</span>)
|
|
718
|
+
41: <span class="ruby-keyword kw">end</span>
|
|
719
|
+
42: <span class="ruby-keyword kw">rescue</span>
|
|
720
|
+
43: <span class="ruby-keyword kw">end</span>
|
|
721
|
+
44: <span class="ruby-keyword kw">end</span></pre>
|
|
700
722
|
</div>
|
|
701
723
|
|
|
702
724
|
</div>
|
|
@@ -733,13 +755,13 @@
|
|
|
733
755
|
<div class="method-source-code"
|
|
734
756
|
id="error-source">
|
|
735
757
|
<pre>
|
|
736
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
758
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 157</span>
|
|
759
|
+
157: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">message</span>)
|
|
760
|
+
158: <span class="ruby-ivar">@res</span>.<span class="ruby-identifier">status</span> = <span class="ruby-value">412</span>
|
|
761
|
+
159: <span class="ruby-ivar">@res</span>.<span class="ruby-identifier">body</span> = <span class="ruby-node">"ERROR: #{message}"</span>
|
|
762
|
+
160: <span class="ruby-ivar">@res</span>[<span class="ruby-value str">'content-type'</span>] = <span class="ruby-value str">'text/plain'</span>
|
|
763
|
+
161: <span class="ruby-identifier">raise</span> <span class="ruby-node">"Error: #{message}"</span>
|
|
764
|
+
162: <span class="ruby-keyword kw">end</span></pre>
|
|
743
765
|
</div>
|
|
744
766
|
|
|
745
767
|
</div>
|
|
@@ -770,62 +792,67 @@
|
|
|
770
792
|
<div class="method-source-code"
|
|
771
793
|
id="generate-eport-source">
|
|
772
794
|
<pre>
|
|
773
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
795
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 48</span>
|
|
796
|
+
48: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateReport</span>(<span class="ruby-identifier">projectId</span>, <span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">attributes</span>)
|
|
797
|
+
49: <span class="ruby-comment cmt"># Request the Project credentials from the ProbjectBroker.</span>
|
|
798
|
+
50: <span class="ruby-ivar">@ps_uri</span>, <span class="ruby-ivar">@ps_authKey</span> = <span class="ruby-ivar">@broker</span>.<span class="ruby-identifier">getProject</span>(<span class="ruby-identifier">projectId</span>)
|
|
799
|
+
51: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@ps_uri</span>.<span class="ruby-identifier">nil?</span>
|
|
800
|
+
52: <span class="ruby-identifier">error</span>(<span class="ruby-node">"No project with ID #{projectId} loaded"</span>)
|
|
801
|
+
53: <span class="ruby-keyword kw">end</span>
|
|
802
|
+
54: <span class="ruby-comment cmt"># Get the responsible ReportServer that can generate the report.</span>
|
|
803
|
+
55: <span class="ruby-keyword kw">begin</span>
|
|
804
|
+
56: <span class="ruby-ivar">@projectServer</span> = <span class="ruby-constant">DRbObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-ivar">@ps_uri</span>)
|
|
805
|
+
57: <span class="ruby-ivar">@rs_uri</span>, <span class="ruby-ivar">@rs_authKey</span> = <span class="ruby-ivar">@projectServer</span>.<span class="ruby-identifier">getReportServer</span>(<span class="ruby-ivar">@ps_authKey</span>)
|
|
806
|
+
58: <span class="ruby-ivar">@reportServer</span> = <span class="ruby-constant">DRbObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-ivar">@rs_uri</span>)
|
|
807
|
+
59: <span class="ruby-keyword kw">rescue</span>
|
|
808
|
+
60: <span class="ruby-identifier">error</span>(<span class="ruby-value str">"Cannot get report server"</span>)
|
|
809
|
+
61: <span class="ruby-keyword kw">end</span>
|
|
810
|
+
62: <span class="ruby-comment cmt"># Create two StringIO buffers that will receive the $stdout and $stderr</span>
|
|
811
|
+
63: <span class="ruby-comment cmt"># text from the report server. This buffer will contain the generated</span>
|
|
812
|
+
64: <span class="ruby-comment cmt"># report as HTML encoded text. They will be send via DRb, so we have to</span>
|
|
813
|
+
65: <span class="ruby-comment cmt"># extend them with DRbUndumped.</span>
|
|
814
|
+
66: <span class="ruby-identifier">stdOut</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">''</span>)
|
|
815
|
+
67: <span class="ruby-identifier">stdOut</span>.<span class="ruby-identifier">include</span> <span class="ruby-constant">DRbUndumped</span>
|
|
816
|
+
68: <span class="ruby-identifier">stdErr</span> = <span class="ruby-constant">StringIO</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">''</span>)
|
|
817
|
+
69: <span class="ruby-identifier">stdErr</span>.<span class="ruby-identifier">include</span> <span class="ruby-constant">DRbUndumped</span>
|
|
818
|
+
70:
|
|
819
|
+
71: <span class="ruby-keyword kw">begin</span>
|
|
820
|
+
72: <span class="ruby-ivar">@reportServer</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-ivar">@rs_authKey</span>, <span class="ruby-identifier">stdOut</span>, <span class="ruby-identifier">stdErr</span>, <span class="ruby-identifier">$stdin</span>, <span class="ruby-keyword kw">true</span>)
|
|
821
|
+
73: <span class="ruby-keyword kw">rescue</span>
|
|
822
|
+
74: <span class="ruby-identifier">error</span>(<span class="ruby-node">"Can't connect IO: #{$!}"</span>)
|
|
823
|
+
75: <span class="ruby-keyword kw">end</span>
|
|
824
|
+
76:
|
|
825
|
+
77: <span class="ruby-comment cmt"># Ask the ReportServer to generate the reports with the provided ID.</span>
|
|
826
|
+
78: <span class="ruby-keyword kw">begin</span>
|
|
827
|
+
79: <span class="ruby-ivar">@reportServer</span>.<span class="ruby-identifier">generateReport</span>(<span class="ruby-ivar">@rs_authKey</span>, <span class="ruby-identifier">reportId</span>, <span class="ruby-keyword kw">false</span>, <span class="ruby-keyword kw">nil</span>,
|
|
828
|
+
80: <span class="ruby-identifier">attributes</span>)
|
|
829
|
+
81: <span class="ruby-keyword kw">rescue</span>
|
|
830
|
+
82: <span class="ruby-identifier">stdOut</span>.<span class="ruby-identifier">rewind</span>
|
|
831
|
+
83: <span class="ruby-identifier">stdErr</span>.<span class="ruby-identifier">rewind</span>
|
|
832
|
+
84: <span class="ruby-identifier">error</span>(<span class="ruby-node">"Report server crashed: #{$!}\n#{stdErr.read}\n#{stdOut.read}"</span>)
|
|
833
|
+
85: <span class="ruby-keyword kw">end</span>
|
|
834
|
+
86: <span class="ruby-comment cmt"># Disconnect the ReportServer</span>
|
|
835
|
+
87: <span class="ruby-keyword kw">begin</span>
|
|
836
|
+
88: <span class="ruby-ivar">@reportServer</span>.<span class="ruby-identifier">disconnect</span>(<span class="ruby-ivar">@rs_authKey</span>)
|
|
837
|
+
89: <span class="ruby-keyword kw">rescue</span>
|
|
838
|
+
90: <span class="ruby-identifier">error</span>(<span class="ruby-node">"Can't disconnect IO: #{$!}"</span>)
|
|
839
|
+
91: <span class="ruby-keyword kw">end</span>
|
|
840
|
+
92: <span class="ruby-comment cmt"># And send a termination request.</span>
|
|
841
|
+
93: <span class="ruby-keyword kw">begin</span>
|
|
842
|
+
94: <span class="ruby-ivar">@reportServer</span>.<span class="ruby-identifier">terminate</span>(<span class="ruby-ivar">@rs_authKey</span>)
|
|
843
|
+
95: <span class="ruby-keyword kw">rescue</span>
|
|
844
|
+
96: <span class="ruby-identifier">error</span>(<span class="ruby-node">"Report server termination failed: #{$!}"</span>)
|
|
845
|
+
97: <span class="ruby-keyword kw">end</span>
|
|
846
|
+
98: <span class="ruby-ivar">@reportServer</span> = <span class="ruby-keyword kw">nil</span>
|
|
847
|
+
99:
|
|
848
|
+
100: <span class="ruby-ivar">@res</span>[<span class="ruby-value str">'content-type'</span>] = <span class="ruby-value str">'text/html'</span>
|
|
849
|
+
101: <span class="ruby-identifier">stdErr</span>.<span class="ruby-identifier">rewind</span>
|
|
850
|
+
102: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">stdErr</span>.<span class="ruby-identifier">read</span>
|
|
851
|
+
103: <span class="ruby-comment cmt"># To read the $stdout of the ReportServer we need to rewind the buffer</span>
|
|
852
|
+
104: <span class="ruby-comment cmt"># and then read the full text.</span>
|
|
853
|
+
105: <span class="ruby-identifier">stdOut</span>.<span class="ruby-identifier">rewind</span>
|
|
854
|
+
106: <span class="ruby-ivar">@res</span>.<span class="ruby-identifier">body</span> = <span class="ruby-identifier">stdOut</span>.<span class="ruby-identifier">read</span>
|
|
855
|
+
107: <span class="ruby-keyword kw">end</span></pre>
|
|
829
856
|
</div>
|
|
830
857
|
|
|
831
858
|
</div>
|
|
@@ -856,38 +883,38 @@
|
|
|
856
883
|
<div class="method-source-code"
|
|
857
884
|
id="generate-elcome-age-source">
|
|
858
885
|
<pre>
|
|
859
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
886
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 109</span>
|
|
887
|
+
109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateWelcomePage</span>(<span class="ruby-identifier">projectId</span>)
|
|
888
|
+
110: <span class="ruby-identifier">projects</span> = <span class="ruby-ivar">@broker</span>.<span class="ruby-identifier">getProjectList</span>
|
|
889
|
+
111:
|
|
890
|
+
112: <span class="ruby-identifier">text</span> = <span class="ruby-value str">"== Welcome to the TaskJuggler Project Server ==\n----\n"</span>
|
|
891
|
+
113: <span class="ruby-identifier">projects</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">id</span><span class="ruby-operator">|</span>
|
|
892
|
+
114: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">id</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">projectId</span>
|
|
893
|
+
115: <span class="ruby-comment cmt"># Show the list of reports for this project.</span>
|
|
894
|
+
116: <span class="ruby-identifier">text</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"* [/taskjuggler #{getProjectName(id)}]\n"</span>
|
|
895
|
+
117: <span class="ruby-identifier">reports</span> = <span class="ruby-identifier">getReportList</span>(<span class="ruby-identifier">id</span>)
|
|
896
|
+
118: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">reports</span>.<span class="ruby-identifier">empty?</span>
|
|
897
|
+
119: <span class="ruby-identifier">text</span> <span class="ruby-operator"><<</span> <span class="ruby-value str">"** This project has no reports defined.\n"</span>
|
|
898
|
+
120: <span class="ruby-keyword kw">else</span>
|
|
899
|
+
121: <span class="ruby-identifier">reports</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reportId</span>, <span class="ruby-identifier">reportName</span><span class="ruby-operator">|</span>
|
|
900
|
+
122: <span class="ruby-identifier">text</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"** [/taskjuggler?project=#{id};report=#{reportId} "</span> <span class="ruby-operator">+</span>
|
|
901
|
+
123: <span class="ruby-node">"#{reportName}]\n"</span>
|
|
902
|
+
124: <span class="ruby-keyword kw">end</span>
|
|
903
|
+
125: <span class="ruby-keyword kw">end</span>
|
|
904
|
+
126: <span class="ruby-keyword kw">else</span>
|
|
905
|
+
127: <span class="ruby-comment cmt"># Just show a link to open the report list.</span>
|
|
906
|
+
128: <span class="ruby-identifier">text</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"* [/taskjuggler?project=#{id} #{getProjectName(id)}]\n"</span>
|
|
907
|
+
129: <span class="ruby-keyword kw">end</span>
|
|
908
|
+
130: <span class="ruby-keyword kw">end</span>
|
|
909
|
+
131: <span class="ruby-identifier">rt</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">text</span>)
|
|
910
|
+
132: <span class="ruby-identifier">rti</span> = <span class="ruby-identifier">rt</span>.<span class="ruby-identifier">generateIntermediateFormat</span>
|
|
911
|
+
133: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
912
|
+
134: <span class="ruby-identifier">page</span> = <span class="ruby-constant">HTMLDocument</span>.<span class="ruby-identifier">new</span>
|
|
913
|
+
135: <span class="ruby-identifier">page</span>.<span class="ruby-identifier">generateHead</span>(<span class="ruby-value str">"The TaskJuggler Project Server"</span>)
|
|
914
|
+
136: <span class="ruby-identifier">page</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">to_html</span>
|
|
915
|
+
137: <span class="ruby-ivar">@res</span>[<span class="ruby-value str">'content-type'</span>] = <span class="ruby-value str">'text/html'</span>
|
|
916
|
+
138: <span class="ruby-ivar">@res</span>.<span class="ruby-identifier">body</span> = <span class="ruby-identifier">page</span>.<span class="ruby-identifier">to_s</span>
|
|
917
|
+
139: <span class="ruby-keyword kw">end</span></pre>
|
|
891
918
|
</div>
|
|
892
919
|
|
|
893
920
|
</div>
|
|
@@ -918,14 +945,14 @@
|
|
|
918
945
|
<div class="method-source-code"
|
|
919
946
|
id="get-roject-ame-source">
|
|
920
947
|
<pre>
|
|
921
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
948
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 141</span>
|
|
949
|
+
141: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getProjectName</span>(<span class="ruby-identifier">id</span>)
|
|
950
|
+
142: <span class="ruby-identifier">uri</span>, <span class="ruby-identifier">authKey</span> = <span class="ruby-ivar">@broker</span>.<span class="ruby-identifier">getProject</span>(<span class="ruby-identifier">id</span>)
|
|
951
|
+
143: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">uri</span>
|
|
952
|
+
144: <span class="ruby-identifier">projectServer</span> = <span class="ruby-constant">DRbObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">uri</span>)
|
|
953
|
+
145: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">projectServer</span>
|
|
954
|
+
146: <span class="ruby-identifier">projectServer</span>.<span class="ruby-identifier">getProjectName</span>(<span class="ruby-identifier">authKey</span>)
|
|
955
|
+
147: <span class="ruby-keyword kw">end</span></pre>
|
|
929
956
|
</div>
|
|
930
957
|
|
|
931
958
|
</div>
|
|
@@ -956,14 +983,14 @@
|
|
|
956
983
|
<div class="method-source-code"
|
|
957
984
|
id="get-eport-ist-source">
|
|
958
985
|
<pre>
|
|
959
|
-
<span class="ruby-comment cmt"># File lib/daemon/
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
986
|
+
<span class="ruby-comment cmt"># File lib/daemon/ReportServlet.rb, line 149</span>
|
|
987
|
+
149: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getReportList</span>(<span class="ruby-identifier">id</span>)
|
|
988
|
+
150: <span class="ruby-identifier">uri</span>, <span class="ruby-identifier">authKey</span> = <span class="ruby-ivar">@broker</span>.<span class="ruby-identifier">getProject</span>(<span class="ruby-identifier">id</span>)
|
|
989
|
+
151: <span class="ruby-keyword kw">return</span> [] <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">uri</span>
|
|
990
|
+
152: <span class="ruby-identifier">projectServer</span> = <span class="ruby-constant">DRbObject</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">uri</span>)
|
|
991
|
+
153: <span class="ruby-keyword kw">return</span> [] <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">projectServer</span>
|
|
992
|
+
154: <span class="ruby-identifier">projectServer</span>.<span class="ruby-identifier">getReportList</span>(<span class="ruby-identifier">authKey</span>)
|
|
993
|
+
155: <span class="ruby-keyword kw">end</span></pre>
|
|
967
994
|
</div>
|
|
968
995
|
|
|
969
996
|
</div>
|