[
https://issues.apache.org/activemq/browse/CAMEL-264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=42784#action_42784
]
Claus Ibsen commented on CAMEL-264:
-----------------------------------
RouteContext should not have been in the impl package from the start but just
in the camel package along side CamelContext and it should have been an
interface.
Maybe a refactor could do to extract an interface for RouteContext and a class
for DefaultRouteContext in the impl package. Then all spi classes is not
dependent on any impl classes.
> 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.4.0
>
> Attachments: Main cluster (12).png, new Main cluster (12).png
>
>
> 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.