Uploaded image for project: 'Stanbol (Retired)'
  1. Stanbol (Retired)
  2. STANBOL-1008 Stanbol Enhancements Workflow feature
  3. STANBOL-1348

Extend current approach to support configuring engines routes

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • None
    • Enhancement Engines
    • None

    Description

      In the first integration made by Florent, a default chain (WeightedChain) is created from the configured Enhancement Engines. A new component for "engine" protocol is added to Camel Context in order to be used in routes (this component simply creates producers using the EnhancementEngine class name which processes the ContentItem).

      The Engines are obtained using OSGI reference injection and ordered by ENHANCEMENT_ENGINE_ORDERING constant.
      After that, a route called "default" using direct component of Camel is created and all the configured Enhancement Engines are added to the route as Producer ("to" method of Java DSL).
      This route is then called by CamelJobManager called in turn by the new created REST endpoint.

      We should allow to configure new routes either installing new bundles containing RouteBuilder objects or putting a route file defined in Spring XML in some directory in order to be loaded (updated or deleted) by OSGI Camel Context.

      For the first case, we could provide a maven archetype to generate all the skeleton to be filled with the needed dependencies.

      For the second case, we should provide a OSGI component using WatchService to monitor a folder (like OSGI already does for bundles) to load, update and delete routes when files are placed or removed from that directory.

      If necessary, a REST endpoint to receive routes in XML format can also be developed in order to deploy or remove routes via API calls

      Attachments

        Activity

          People

            adperezmorales Antonio David Pérez Morales
            adperezmorales Antonio David Pérez Morales
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 16h
                16h