Details
-
New Feature
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Currently, Ducc's pull service is made up of classes from common, transport, user, and container projects. Its transport and protocol handler are fixed in the code. No way to plug in alternatives. The service is configured via -D's and env vars. Such approach prevents collocating multiple services in the same JVM.
The proposal is to move/refactor transport, protocol handler related classes to a new project uima-ducc-pullservice. Also, move/refactor wrapper code which deploys UIMA aggregate pipelines. The new project will be self contained with no dependency on other Ducc projects/jars. It will have dependency on UIMA, HttpClient, and Jetty.
The new code will allow an application to instantiate as many instances of a service as it needs. It will allow to plugin custom ProtocolHandler, ErrorHandler, and ServiceMonitor with default implementation for these provided.