You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2009/07/22 21:30:48 UTC

svn commit: r796849 - in /ode/trunk/jbi/src/main/java/org/apache/ode/jbi: OdeConfigProperties.java OdeLifeCycle.java

Author: mriou
Date: Wed Jul 22 19:30:47 2009
New Revision: 796849

URL: http://svn.apache.org/viewvc?rev=796849&view=rev
Log:
ODE-636 Support setting multiple message mappers

Modified:
    ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeConfigProperties.java
    ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java

Modified: ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeConfigProperties.java
URL: http://svn.apache.org/viewvc/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeConfigProperties.java?rev=796849&r1=796848&r2=796849&view=diff
==============================================================================
--- ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeConfigProperties.java (original)
+++ ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeConfigProperties.java Wed Jul 22 19:30:47 2009
@@ -62,8 +62,8 @@
      * 
      * @return
      */
-    public String getMessageMapper() {
-        return getProperty(PROP_MSGMAPPER, JbiWsdl11WrapperMapper.class.getName());
+    public String[] getMessageMappers() {
+        return getProperty(PROP_MSGMAPPER, JbiWsdl11WrapperMapper.class.getName()).split("[ ,]");
     }
 
  }

Modified: ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java
URL: http://svn.apache.org/viewvc/ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java?rev=796849&r1=796848&r2=796849&view=diff
==============================================================================
--- ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java (original)
+++ ode/trunk/jbi/src/main/java/org/apache/ode/jbi/OdeLifeCycle.java Wed Jul 22 19:30:47 2009
@@ -149,25 +149,28 @@
     }
 
     private void initMappers() throws JBIException {
+        String[] mappers = _ode._config.getMessageMappers();
         Class mapperClass;
-        try {
-            mapperClass = Class.forName(_ode._config.getMessageMapper());
-        } catch (ClassNotFoundException e) {
-            String errmsg = __msgs.msgOdeInitMapperClassNotFound(_ode._config.getMessageMapper());
-            __log.error(errmsg);
-            throw new JBIException(errmsg, e);
-        } catch (Throwable t) {
-            String errmsg = __msgs.msgOdeInitMapperClassLoadFailed(_ode._config.getMessageMapper());
-            __log.error(errmsg);
-            throw new JBIException(errmsg, t);
-        }
-        try {
-            _ode.registerMapper((Mapper) mapperClass.newInstance());
-        } catch (Throwable t) {
-            String errmsg = __msgs.msgOdeInitMapperInstantiationFailed(_ode._config.getMessageMapper());
-            __log.error(errmsg);
-            throw new JBIException(errmsg, t);
-        }
+        for (String className : mappers) {
+            try {
+                mapperClass = (Class<Mapper>) Class.forName(className);
+            } catch (ClassNotFoundException e) {
+                String errmsg = __msgs.msgOdeInitMapperClassNotFound(className);
+                __log.error(errmsg);
+                throw new JBIException(errmsg, e);
+            } catch (Throwable t) {
+                String errmsg = __msgs.msgOdeInitMapperClassLoadFailed(className);
+                __log.error(errmsg);
+                throw new JBIException(errmsg, t);
+            }
+            try {
+                _ode.registerMapper((Mapper) mapperClass.newInstance());
+            } catch (Throwable t) {
+                String errmsg = __msgs.msgOdeInitMapperInstantiationFailed(className);
+                __log.error(errmsg);
+                throw new JBIException(errmsg, t);
+            }
+         }
     }
 
     private void initDataSource() throws JBIException {