[jboss-jira] [JBoss JIRA] Issue Comment Edited: (JBRULES-3098) Service implementations should be pluggable
Burkhard Vogel (JIRA)
jira-events at lists.jboss.org
Fri Jun 24 15:09:23 EDT 2011
[ https://issues.jboss.org/browse/JBRULES-3098?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611033#comment-12611033 ]
Burkhard Vogel edited comment on JBRULES-3098 at 6/24/11 3:07 PM:
------------------------------------------------------------------
implemetation and documentation from org.jboss.bpm.console.server.util package:
This method uses the algorithm below using the JAXWS Provider as an example.
1. If a resource with the name of META-INF/services/javax.xml.ws.spi.Provider exists, then its first line, if present, is used as the UTF-8 encoded name of the implementation class.
2. If the ${java.home}/lib/service-loader.properties file exists and it is readable by the java.util.Properties.load(InputStream) method and it contains an entry whose key is javax.xml.ws.spi.Provider, then the value of that entry is used as the name of the implementation class.
3. If a system property with the name javax.xml.ws.spi.Provider is defined, then its value is used as the name of the implementation class.
4. Finally, a default implementation class name is used.
was (Author: BooVeMan):
implemetation and documentation from org.jboss.bpm.console.server.util package:
/**
* This method uses the algorithm below using the JAXWS Provider as an example.
*
* 1. If a resource with the name of META-INF/services/javax.xml.ws.spi.Provider exists, then
* its first line, if present, is used as the UTF-8 encoded name of the implementation class.
*
* 2. If the ${java.home}/lib/service-loader.properties file exists and it is readable by the
* java.util.Properties.load(InputStream) method and it contains an entry whose key is
* javax.xml.ws.spi.Provider, then the value of that entry is used as the name of the implementation class.
*
* 3. If a system property with the name javax.xml.ws.spi.Provider is defined, then its value is used
* as the name of the implementation class.
*
* 4. Finally, a default implementation class name is used.
*/
> Service implementations should be pluggable
> -------------------------------------------
>
> Key: JBRULES-3098
> URL: https://issues.jboss.org/browse/JBRULES-3098
> Project: Drools
> Issue Type: Enhancement
> Security Level: Public(Everyone can see)
> Components: drools-core
> Affects Versions: 5.2.0.Final
> Reporter: Burkhard Vogel
> Assignee: Mark Proctor
> Attachments: ServiceLoader.java
>
>
> Implementations of services like the SystemEventListenerService for instance are hard coded into the Drools code base. It recommendable to change thto a more customizable friendly approach, using a schema applied by the ServiceLoader from the org.jboss.bpm.console.server.util package (bpm-console project). By this method custom implementation to service providers do not need changes to the general code base.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list