I wonder what our scope for the org.apache.camel.spi package is vs the org.apache.camel (API) package.

I know two valid definitions for API vs SPI:

1) API interfaces are called by the user to invoke functionality of the framework. So API interfaces are implemented by the framework. SPI interfaces are implemented by the user to change functionality of the framework or for callbacks 2) SPI interfaces are for third party modules while API interfaces are for users

So the current case for me is the new JMX annotations. Are they SPI interfaces or API interfaces?

So what is your opinion about the specific and the general case.

As a side question: The org.apache.camel package has grown quite large. I think we should create specialized packages for it. As we are talking about the camel API org.apache.camel.api.* would be a good name in my opinion. So the questions are: Should we create such specialized packages? Should we move API parts there? Should we only use the new packages for new stuff?

Christian


--
--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
Talend Application Integration Division http://www.talend.com

Reply via email to