The following document contains the results of RAT (Release Audit Tool) .
***************************************************** Summary ------- Notes: 3 Binaries: 122 Archives: 0 Standards: 113 Apache Licensed: 86 Generated Documents: 0 JavaDocs are generated and so license header is optional Generated files do not required license headers 27 Unknown Licenses ******************************* Archives (+ indicates readable, $ unreadable): ***************************************************** Files with AL headers will be marked L Binary files (which do not require AL headers) will be marked B Compressed archives will be marked A Notices, licenses etc will be marked N B bin/org/apache/commons/pipeline/AbstractLoggingTestCase.class B bin/org/apache/commons/pipeline/config/DigesterPipelineFactory.class B bin/org/apache/commons/pipeline/config/DigesterPipelineFactoryTest.class !????? bin/org/apache/commons/pipeline/config/package.html B bin/org/apache/commons/pipeline/config/PipelineRuleSet$PipelineAddStageRule.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$PipelineDriverFactoriesRule.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$PipelineFactory.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$PipelineFeedObjectRule.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$PipelineFeedValueRule.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$SetNestedPropertyObjectRule.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet$StageDriverFactoryFactory.class B bin/org/apache/commons/pipeline/config/PipelineRuleSet.class B bin/org/apache/commons/pipeline/driver/AbstractStageDriver.class B bin/org/apache/commons/pipeline/driver/AbstractStageDriverTest.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriver$1.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriver$2.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriver$WorkerThread.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriver.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriverFactory.class B bin/org/apache/commons/pipeline/driver/DedicatedThreadStageDriverTest.class B bin/org/apache/commons/pipeline/driver/FaultTolerance.class !????? bin/org/apache/commons/pipeline/driver/package.html B bin/org/apache/commons/pipeline/driver/StageDriverTestUtils.class B bin/org/apache/commons/pipeline/driver/SynchronousStageDriver$1.class B bin/org/apache/commons/pipeline/driver/SynchronousStageDriver.class B bin/org/apache/commons/pipeline/driver/SynchronousStageDriverFactory.class B bin/org/apache/commons/pipeline/driver/SynchronousStageDriverTest.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriver$1.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriver$2.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriver$LatchWorkerThread.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriver.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriverFactory.class B bin/org/apache/commons/pipeline/driver/ThreadPoolStageDriverTest.class B bin/org/apache/commons/pipeline/event/KeyAvailableEvent.class B bin/org/apache/commons/pipeline/event/ObjectProcessedEvent.class !????? bin/org/apache/commons/pipeline/event/package.html B bin/org/apache/commons/pipeline/event/PipelineShutdownRequest.class B bin/org/apache/commons/pipeline/Feeder$1.class B bin/org/apache/commons/pipeline/Feeder.class B bin/org/apache/commons/pipeline/listener/ObjectProcessedEventCounter.class !????? bin/org/apache/commons/pipeline/listener/package.html !????? bin/org/apache/commons/pipeline/package.html B bin/org/apache/commons/pipeline/Pipeline$1.class B bin/org/apache/commons/pipeline/Pipeline.class B bin/org/apache/commons/pipeline/PipelineCreationException.class B bin/org/apache/commons/pipeline/PipelineFactory.class B bin/org/apache/commons/pipeline/PipelineLifecycleJob.class B bin/org/apache/commons/pipeline/PipelineTest.class B bin/org/apache/commons/pipeline/ProcessingException.class !????? bin/org/apache/commons/pipeline/server/package.html B bin/org/apache/commons/pipeline/server/PipelineContext.class B bin/org/apache/commons/pipeline/server/PipelineService.class B bin/org/apache/commons/pipeline/stage/AbstractStageTest.class B bin/org/apache/commons/pipeline/stage/AddToCollectionStage.class B bin/org/apache/commons/pipeline/stage/AddToCollectionStageTest.class B bin/org/apache/commons/pipeline/stage/BaseStage.class B bin/org/apache/commons/pipeline/stage/DynamicLookupStaticMethodStage.class B bin/org/apache/commons/pipeline/stage/DynamicLookupStaticMethodStageTest.class B bin/org/apache/commons/pipeline/stage/FileFinderStage.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage$Criterion.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage$FileDateMatchCriterion.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage$FileNameMatchCriterion.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage$FileSpec$FileType.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage$FileSpec.class B bin/org/apache/commons/pipeline/stage/FtpFileDownloadStage.class B bin/org/apache/commons/pipeline/stage/HttpFileDownloadStage.class B bin/org/apache/commons/pipeline/stage/HttpFileDownloadStageTest.class B bin/org/apache/commons/pipeline/stage/InputStreamLineBreakStage.class B bin/org/apache/commons/pipeline/stage/InputStreamLineBreakStageTest.class B bin/org/apache/commons/pipeline/stage/InvokeMethodStage.class B bin/org/apache/commons/pipeline/stage/InvokeMethodStageTest.class B bin/org/apache/commons/pipeline/stage/InvokeStaticMethodStage.class B bin/org/apache/commons/pipeline/stage/InvokeStaticMethodStageTest.class B bin/org/apache/commons/pipeline/stage/KeyWaitBufferStage.class B bin/org/apache/commons/pipeline/stage/KeyWaitBufferStageTest.class B bin/org/apache/commons/pipeline/stage/LogStage.class !????? bin/org/apache/commons/pipeline/stage/package.html B bin/org/apache/commons/pipeline/stage/PipelineShutdownStage.class B bin/org/apache/commons/pipeline/stage/RaiseEventStage.class B bin/org/apache/commons/pipeline/stage/RaiseKeyAvailableEventStage.class B bin/org/apache/commons/pipeline/stage/URLToInputStreamStage.class B bin/org/apache/commons/pipeline/stage/URLToInputStreamStageTest.class B bin/org/apache/commons/pipeline/Stage.class B bin/org/apache/commons/pipeline/StageContext.class B bin/org/apache/commons/pipeline/StageDriver$State.class B bin/org/apache/commons/pipeline/StageDriver.class B bin/org/apache/commons/pipeline/StageDriverFactory.class B bin/org/apache/commons/pipeline/StageEventListener.class B bin/org/apache/commons/pipeline/StageException.class B bin/org/apache/commons/pipeline/testFramework/FaultingTestStage.class !????? bin/org/apache/commons/pipeline/testFramework/package.html B bin/org/apache/commons/pipeline/testFramework/TestFeeder.class B bin/org/apache/commons/pipeline/testFramework/TestStage.class B bin/org/apache/commons/pipeline/testFramework/TestStageContext.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory$ArrayBlockingQueueFactory.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory$DelayQueueFactoryL.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory$LinkedBlockingQueueFactory.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory$PriorityBlockingQueueFactory.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory$SynchronousQueueFactory.class B bin/org/apache/commons/pipeline/util/BlockingQueueFactory.class B bin/org/apache/commons/pipeline/util/KeyFactory$HashKeyFactory.class B bin/org/apache/commons/pipeline/util/KeyFactory.class B bin/org/apache/commons/pipeline/util/QueueFactory$AbstractQueueFactory.class B bin/org/apache/commons/pipeline/util/QueueFactory$ConcurrentLinkedQueueFactory.class B bin/org/apache/commons/pipeline/util/QueueFactory$LinkedListFactory.class B bin/org/apache/commons/pipeline/util/QueueFactory$PriorityQueueFactory.class B bin/org/apache/commons/pipeline/util/QueueFactory.class B bin/org/apache/commons/pipeline/validation/Branches.class B bin/org/apache/commons/pipeline/validation/ConsumedTypes.class !????? bin/org/apache/commons/pipeline/validation/package.html B bin/org/apache/commons/pipeline/validation/PipelineValidator.class B bin/org/apache/commons/pipeline/validation/ProducedTypes.class B bin/org/apache/commons/pipeline/validation/ProducesConsumed.class B bin/org/apache/commons/pipeline/validation/ProductionOnBranch.class B bin/org/apache/commons/pipeline/validation/SimplePipelineValidator.class B bin/org/apache/commons/pipeline/validation/ValidationException.class B bin/org/apache/commons/pipeline/validation/ValidationFailure$Type.class B bin/org/apache/commons/pipeline/validation/ValidationFailure.class B bin/org/apache/commons/pipeline/validation/ValidationUtils.class N LICENSE.txt N NOTICE.txt AL pom.xml AL src/main/java/org/apache/commons/pipeline/config/DigesterPipelineFactory.java !????? src/main/java/org/apache/commons/pipeline/config/package.html AL src/main/java/org/apache/commons/pipeline/config/PipelineRuleSet.java AL src/main/java/org/apache/commons/pipeline/driver/AbstractStageDriver.java AL src/main/java/org/apache/commons/pipeline/driver/DedicatedThreadStageDriver.java AL src/main/java/org/apache/commons/pipeline/driver/DedicatedThreadStageDriverFactory.java AL src/main/java/org/apache/commons/pipeline/driver/FaultTolerance.java !????? src/main/java/org/apache/commons/pipeline/driver/package.html AL src/main/java/org/apache/commons/pipeline/driver/SynchronousStageDriver.java AL src/main/java/org/apache/commons/pipeline/driver/SynchronousStageDriverFactory.java AL src/main/java/org/apache/commons/pipeline/driver/ThreadPoolStageDriver.java AL src/main/java/org/apache/commons/pipeline/driver/ThreadPoolStageDriverFactory.java AL src/main/java/org/apache/commons/pipeline/event/KeyAvailableEvent.java AL src/main/java/org/apache/commons/pipeline/event/ObjectProcessedEvent.java !????? src/main/java/org/apache/commons/pipeline/event/package.html AL src/main/java/org/apache/commons/pipeline/event/PipelineShutdownRequest.java AL src/main/java/org/apache/commons/pipeline/Feeder.java AL src/main/java/org/apache/commons/pipeline/listener/ObjectProcessedEventCounter.java !????? src/main/java/org/apache/commons/pipeline/listener/package.html !????? src/main/java/org/apache/commons/pipeline/package.html AL src/main/java/org/apache/commons/pipeline/Pipeline.java AL src/main/java/org/apache/commons/pipeline/PipelineCreationException.java AL src/main/java/org/apache/commons/pipeline/PipelineFactory.java AL src/main/java/org/apache/commons/pipeline/PipelineLifecycleJob.java AL src/main/java/org/apache/commons/pipeline/ProcessingException.java !????? src/main/java/org/apache/commons/pipeline/server/package.html AL src/main/java/org/apache/commons/pipeline/server/PipelineContext.java AL src/main/java/org/apache/commons/pipeline/server/PipelineService.java AL src/main/java/org/apache/commons/pipeline/stage/AddToCollectionStage.java AL src/main/java/org/apache/commons/pipeline/stage/BaseStage.java AL src/main/java/org/apache/commons/pipeline/stage/DynamicLookupStaticMethodStage.java AL src/main/java/org/apache/commons/pipeline/stage/ExtendedBaseStage.java AL src/main/java/org/apache/commons/pipeline/stage/ExtendedBaseStageMBean.java AL src/main/java/org/apache/commons/pipeline/stage/FileFinderStage.java AL src/main/java/org/apache/commons/pipeline/stage/FtpFileDownloadStage.java AL src/main/java/org/apache/commons/pipeline/stage/HttpFileDownloadStage.java AL src/main/java/org/apache/commons/pipeline/stage/InputStreamLineBreakStage.java AL src/main/java/org/apache/commons/pipeline/stage/InvokeMethodStage.java AL src/main/java/org/apache/commons/pipeline/stage/InvokeStaticMethodStage.java AL src/main/java/org/apache/commons/pipeline/stage/KeyWaitBufferStage.java AL src/main/java/org/apache/commons/pipeline/stage/LogStage.java !????? src/main/java/org/apache/commons/pipeline/stage/package.html AL src/main/java/org/apache/commons/pipeline/stage/PipelineShutdownStage.java AL src/main/java/org/apache/commons/pipeline/stage/RaiseEventStage.java AL src/main/java/org/apache/commons/pipeline/stage/RaiseKeyAvailableEventStage.java AL src/main/java/org/apache/commons/pipeline/stage/URLToInputStreamStage.java AL src/main/java/org/apache/commons/pipeline/Stage.java AL src/main/java/org/apache/commons/pipeline/StageContext.java AL src/main/java/org/apache/commons/pipeline/StageDriver.java AL src/main/java/org/apache/commons/pipeline/StageDriverFactory.java AL src/main/java/org/apache/commons/pipeline/StageEventListener.java AL src/main/java/org/apache/commons/pipeline/StageException.java AL src/main/java/org/apache/commons/pipeline/testFramework/FaultingTestStage.java !????? src/main/java/org/apache/commons/pipeline/testFramework/package.html AL src/main/java/org/apache/commons/pipeline/testFramework/TestFeeder.java AL src/main/java/org/apache/commons/pipeline/testFramework/TestStage.java AL src/main/java/org/apache/commons/pipeline/testFramework/TestStageContext.java AL src/main/java/org/apache/commons/pipeline/util/BlockingQueueFactory.java AL src/main/java/org/apache/commons/pipeline/util/KeyFactory.java AL src/main/java/org/apache/commons/pipeline/util/QueueFactory.java AL src/main/java/org/apache/commons/pipeline/validation/Branches.java AL src/main/java/org/apache/commons/pipeline/validation/ConsumedTypes.java !????? src/main/java/org/apache/commons/pipeline/validation/package.html AL src/main/java/org/apache/commons/pipeline/validation/PipelineValidator.java AL src/main/java/org/apache/commons/pipeline/validation/ProducedTypes.java AL src/main/java/org/apache/commons/pipeline/validation/ProducesConsumed.java AL src/main/java/org/apache/commons/pipeline/validation/ProductionOnBranch.java AL src/main/java/org/apache/commons/pipeline/validation/SimplePipelineValidator.java AL src/main/java/org/apache/commons/pipeline/validation/ValidationException.java AL src/main/java/org/apache/commons/pipeline/validation/ValidationFailure.java AL src/main/java/org/apache/commons/pipeline/validation/ValidationUtils.java !????? src/site/apt/config_digester.apt !????? src/site/apt/index.apt !????? src/site/apt/usage.apt !????? src/site/fml/faq.fml B src/site/resources/images/BasicPipeline.png B src/site/resources/images/BasicPipeline.sxd B src/site/resources/images/BranchingPipeline.png B src/site/resources/images/BranchingPipeline.sxd B src/site/resources/images/ExamplePipeline1.png B src/site/resources/images/ExamplePipeline1.sxd B src/site/resources/images/ExamplePipelineComplexColored.png B src/site/resources/images/ExamplePipelineComplexColored.sxd B src/site/resources/images/ExamplePipelineSimple.png B src/site/resources/images/ExamplePipelineSimple.sxd B src/site/resources/images/pipeline-logo-white.png B src/site/resources/images/pipeline-logo-white.xcf N src/site/resources/images/README.txt !????? src/site/site.xml AL src/site/xdoc/issue-tracking.xml AL src/site/xdoc/pipeline_basics.xml !????? src/test/filters/test.properties AL src/test/java/org/apache/commons/pipeline/AbstractLoggingTestCase.java AL src/test/java/org/apache/commons/pipeline/config/DigesterPipelineFactoryTest.java AL src/test/java/org/apache/commons/pipeline/driver/AbstractStageDriverTest.java AL src/test/java/org/apache/commons/pipeline/driver/DedicatedThreadStageDriverTest.java AL src/test/java/org/apache/commons/pipeline/driver/StageDriverTestUtils.java AL src/test/java/org/apache/commons/pipeline/driver/SynchronousStageDriverTest.java AL src/test/java/org/apache/commons/pipeline/driver/ThreadPoolStageDriverTest.java AL src/test/java/org/apache/commons/pipeline/PipelineTest.java AL src/test/java/org/apache/commons/pipeline/stage/AbstractStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/AddToCollectionStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/DynamicLookupStaticMethodStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/ExtendedBaseStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/HttpFileDownloadStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/InputStreamLineBreakStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/InvokeMethodStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/InvokeStaticMethodStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/KeyWaitBufferStageTest.java AL src/test/java/org/apache/commons/pipeline/stage/URLToInputStreamStageTest.java !????? src/test/resources/http-download.txt !????? src/test/resources/http-file-download.html AL src/test/resources/log4j_conf.xml AL src/test/resources/TestResources.properties AL src/test/resources/test_conf.xml !????? src/test/resources/url-input-to-stream-test.txt ***************************************************** Printing headers for files without AL header... ======================================================================= ==bin/org/apache/commons/pipeline/config/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package provides utilities for creating executing a pipeline using Digester. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/driver/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package contains implementations of the StageDriver and StageDriverFactory interfaces. These implementations define the threading models that are available for use in running a pipeline. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/event/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Simple event implementations that are useful for pipeline monitoring and control. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/listener/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Sample implementations of the StageEventListener interface used for testing. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package provides a set of pipeline utilities designed around work queues that run in parallel to sequentially process data objects. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/server/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Code required to set up a pipeline to run as a server. Incomplete. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/stage/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> A few simple Stage implementations for common use cases. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/testFramework/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Framework classes used to simplify unit test development for pipeline stages. </body> </html> ======================================================================= ==bin/org/apache/commons/pipeline/validation/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Utilities for validating stage connectivity within a pipeline. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/config/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package provides utilities for creating executing a pipeline using Digester. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/driver/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package contains implementations of the StageDriver and StageDriverFactory interfaces. These implementations define the threading models that are available for use in running a pipeline. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/event/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Simple event implementations that are useful for pipeline monitoring and control. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/listener/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Sample implementations of the StageEventListener interface used for testing. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> This package provides a set of pipeline utilities designed around work queues that run in parallel to sequentially process data objects. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/server/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Code required to set up a pipeline to run as a server. Incomplete. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/stage/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> A few simple Stage implementations for common use cases. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/testFramework/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Framework classes used to simplify unit test development for pipeline stages. </body> </html> ======================================================================= ==src/main/java/org/apache/commons/pipeline/validation/package.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> Utilities for validating stage connectivity within a pipeline. </body> </html> ======================================================================= ==src/site/apt/config_digester.apt ======================================================================= ----------------------------- Configuration using Digester ----------------------------- Configuration using Digester A simple and straightforward way of creating a pipeline is to use an XML configuration file. Commons Pipeline provides a set of Digester rules that can be used to set up a pipeline based upon such a file. One important thing to note is that, due to the way that Digester handles the mapping of XML attributes to object properties, it is not possible to define a comprehensive DTD that fully describes the XML syntax for all possible legal configuration files; however, this does not prove to be a significant limitation and the flexibility that it provides outweighs the disadvantages of the limited possibility for validation. Basic XML Structure +---+ <pipeline> <branch> <pipeline>...</pipeline> </branch> <listener/> <driverFactory/> <env> <value/> <object/> </env> <stage></stage> <feed> <value/> <object/> </feed> </pipeline> +---+ Attributes for each element are discussed in their respective subsections. * \<pipeline/\>\</pipeline\> The \<pipeline\> element is the root element of the document. It is used to define primary pipeline that will be created. The root \<pipeline\> tag does not support any attributes by default; instances of the tag nested within \<branch\> tags support the following attributes: [configUri] The URI of the configuration file to digest to create the branch pipeline. Currently, only absolute URIs are supported (either http:// or file://). Only used when the \<pipeline\> element is ======================================================================= ==src/site/apt/index.apt ======================================================================= ---------------- Overview ---------------- The Processing Pipeline This project provides a lightweight set of utilities that make it simple to implement parallelized data processing systems. Data objects flowing through the pipeline are processed by a series of independent user-defined components called {{{apidocs/org/apache/commons/pipeline/Stage.html}Stages}}. A pipeline may have a number of different branches of execution, each of which is a fully qualified Pipeline in its own right. Stages in the Pipeline The {{{apidocs/org/apache/commons/pipeline/Stage.html}Stage}} is the primary unit of execution in a processing pipeline. Each Stage has a well defined lifecycle that passes through setup, processing, and cleanup states. When a pipeline starts running, each Stage runs its setup method and then waits for an object to be passed to its {{{apidocs/org/apache/commons/pipeline/Stage.html#process(java.lang.Object)}process()}} method. This method is implemented by the user to provide some sort of useful operation on the data, after which the object or products of the processing can be passed to subsequent stages and/or branches. A stage can act as a filter for data, or may have more complex responsibilities such as finding and allocating resources for subsequent stages. Multithreaded Processing Several threading models are available to choose from including synchronous processing (each object input to the pipeline passes through the entire pipeline before the next is processed), and a couple of different multithreaded processing models that run each stage in either a single dedicated thread or using a pool of threads to perform processing. The threading model chosen for each stage is independent of both the stage implementation and of the threading models used for other stages, providing a great deal of flexibility when it comes to configuring the processing system. Threading models are defined by implementations of the {{{apidocs/org/apache/commons/pipeline/StageDriver.html}StageDriver}} interface. Event-Based Inter-Stage Communication In addition to sequential processing of objects, a simple event model is provided to enable asynchronous communication between stages in the pipeline and its branches. Releases This project has no released versions. Documentation ======================================================================= ==src/site/apt/usage.apt ======================================================================= ---------------------- Usage ---------------------- Obtaining Commons Pipeline If you are using Maven (version 2.0 and above) the easiest way to incorporate Commons Pipeline into your project is to add the following entries in the appropriate sections of your project's <<<pom.xml>>> file: +---+ <repositories> <repository> <id>apache.snapshots</id> <name>Snapshot Repository</name> <url>http://cvs.apache.org/maven-snapshot-repository</url> </repository> </repositories> <dependencies> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pipeline</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies> +---+ If you are not using Maven for your project, nightly builds are available from {{http://people.apache.org/builds/jakarta-commons/nightly/commons-pipeline/}}. Usage Ordinarily, a processing pipeline will be embedded in an application; however, it is also possible to use a simple XML file to configure a pipeline instance that can be run directly from the command line with the syntax: --- java org.apache.commons.pipeline.config.DigesterPipelineFactory my_pipeline_conf.xml --- See {{{config_digester.html}Configuration Using Digester}} for how to set up a pipeline configuration file. ======================================================================= ==src/site/fml/faq.fml ======================================================================= <?xml version="1.0"?> <faqs id="General FAQ"> <part id="General"> <faq id="how"> <question>How do I get started with the Pipeline?</question> <answer> <p> First, you'll need to write an implementation of the <a href="./apidocs/org/apache/commons/pipeline/Stage.html">Stage</a> interface to do something interesting. Then, create a <a href="./config_digester.html">configuration file</a> for the pipeline you want to run. Finally, you can use the <a href="./apidocs/org/apache/commons/pipeline/config/DigesterPipelineFactory.html">DigesterPipelineFactory</a> to create and run the pipeline! </p> </answer> </faq> </part> </faqs> ======================================================================= ==src/site/site.xml ======================================================================= <?xml version="1.0" encoding="ISO-8859-1"?> <project name="Commons Pipeline"> <bannerRight> <name>Apache Commons Pipeline</name> <src>images/pipeline-logo-white.png</src> <href>http://commons.apache.org/sandbox/pipeline/</href> </bannerRight> <body> <menu name="Commons Pipeline"> <item name="Overview" href="index.html"/> <item name="Usage" href="usage.html"/> <item name="Configuration using Digester" href="config_digester.html"/> <item name="FAQ" href="faq.html"/> </menu> <menu name="Tutorials"> <item name="Pipeline Basics" href="pipeline_basics.html"/> </menu> <menu name="Development"> <item name="Mailing Lists" href="/mail-lists.html"/> <item name="Issue Tracking" href="/issue-tracking.html"/> <item name="Team" href="/team-list.html"/> <item name="Source Repository" href="/source-repository.html"/> <item name="Javadoc (latest)" href="/apidocs/index.html"/> </menu> </body> </project> ======================================================================= ==src/test/filters/test.properties ======================================================================= log.directory=target/surefire-reports ======================================================================= ==src/test/resources/http-download.txt ======================================================================= This is a test file. ======================================================================= ==src/test/resources/http-file-download.html ======================================================================= <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> </body> </html> ======================================================================= ==src/test/resources/url-input-to-stream-test.txt ======================================================================= line 1 line 2 line 3