[
https://issues.apache.org/jira/browse/CAMEL-4475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13113448#comment-13113448
]
Christian Schneider commented on CAMEL-4475:
--------------------------------------------
The SPI changes I made are absolutely necessary. I can add compatibility where
it is needed but I think most spi interfaces are not use by many people. So I
would only create the compatibility overhead where we expect usage.
I talked to Dan and Hadrian to determine where it is necessary. We agreed that
Policy is such a case but the rest should not be a problem.
I also just compared the xsd files before and after this patch. Both are
exactly the same. So that should not create any issues.
> Make API self contained
> -----------------------
>
> Key: CAMEL-4475
> URL: https://issues.apache.org/jira/browse/CAMEL-4475
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Affects Versions: 2.8.0
> Reporter: Christian Schneider
> Assignee: Christian Schneider
> Fix For: 2.9.0
>
> Attachments: camel-4475-1.patch, camel-4475-2.patch,
> camel-4475-after.png, camel-4475-before.png
>
>
> The API, SPI packages of camel are already quite independent after the
> previous refactorings. There are three classes in model that are still needed
> at the moment.
> ProcessorDefinition, RouteDefinition and FromDefiniton
> I propose to add the necessary methods to NamedNode to be able to reference
> most of the functionality of the classes. For RouteDefinition I propose a
> special interface that adds the ErrorHandler. For the rare cases where more
> functionality is needed a instanceof and a cast can be used.
> I will attach a patch shortly that solves the issue and would be glad about
> some reviews.
> The patch can not be fully compatible but the changes are mostly in spi
> interfaces that are probably rather rarely used.
> I will also add screenshots from structure 101 that show how much the
> architecture improves after this patch.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira