ServiceMix 3 Project Refactoring

The SMX 3 project needs to refactored from the gigantic monolithic project that is the status quo. This page will capture the ideas for this refactoring. The work in actually carrying out the refactoring will take place after the ServiceMix 3 Website Refactoring is fairly complete.

The project refactoring will involve multiple tasks including:

  • Move the Maven plugins to their own subprojects
  • Create the SMX components project
    • Move each JBI component into its own subproject beneath the SMX components project
    • Move the samples into the SMX components project
  • Move the SMX3 common dir into the SMX components project

Goals

  • Shrink the SMX3 build
  • Provide each JBI component its own release cycle
  • Ensure that JBI components and examples are usable with both SMX3 and SMX4

Move the Maven Plugins

  • Each Maven plugin will have its own:
    • Version
    • JIRA space
    • Release cycle

There are three Maven plugins to consider:

  1. jbi-maven-plugin
  2. res-maven-plugin
  3. xfire-maven-plugin

Create the SMX Components Project

  • This project will be on the same level in SVN as the smx3 and smx4 projects
  • Each JBI component will be a subproject in the SMX Components project
  • Each JBI component will have its own:
    • Version
    • JIRA space
    • Release cycle
  • Some components will be marked as deprecated in favor of other components, e.g.:
    • servicemix-bpe --> Apache ODE's JBI release
    • servicemix-jsr181 --> servicemix-cxf*
    • serviemix-lwcontainer --> servicemix-bean

Move the Common Directory

Needs more investigation

  • No labels