The spi package should not depend on implementation packages
------------------------------------------------------------

                 Key: CAMEL-264
                 URL: https://issues.apache.org/activemq/browse/CAMEL-264
             Project: Apache Camel
          Issue Type: Improvement
          Components: camel-core
            Reporter: Christian Schneider
             Fix For: 1.3.0
         Attachments: patch.txt

Currently spi.LifecycleStrategy depends on impl.RouteContext.
This is bad because the spi is an interface package that should have no 
dependencies on implementation packages.

The solution is to rename RouteContext to RouteContextImpl, extract an 
interface class RouteContext from the implementation and put this interface 
into spi. So spi is self contained.

The other problem is that spi.InstrumentationAgent depends on 
management.CamelNamingStrategy. In this case I would suggest to simply remove 
the method getNamingStrategy from the IntrumentationAgent. Instead I add the 
naming strategy param to the constructor of InstrumentationLifecycleStrategy. 
So the dependency disappears. Of course this way the naming strategy is no 
longer part of the spi but I think it is an internal thing anyway. What do you 
think?

I will attach a patch for the issues.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to