Author: veithen
Date: Mon Mar 29 16:05:30 2010
New Revision: 928819

URL: http://svn.apache.org/viewvc?rev=928819&view=rev
Log:
AXIS2-4662: Some refactorings to the PoC code to support the standalone 
scenario, i.e. to create a ListenerManager using Spring.

Added:
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java
      - copied, changed from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java
      - copied, changed from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java
   (with props)
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java
   (with props)
Removed:
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java
Modified:
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java
    
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationBeanFactoryPostProcessor.java
 Mon Mar 29 16:05:30 2010
@@ -23,8 +23,8 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.TransportInDescription;
-import org.apache.axis2.engine.AxisConfiguration;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.PropertyValue;
 import org.springframework.beans.factory.config.BeanDefinition;
@@ -32,46 +32,47 @@ import org.springframework.beans.factory
 import 
org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
 import org.springframework.beans.factory.config.RuntimeBeanReference;
 import org.springframework.beans.factory.support.ManagedList;
+import org.springframework.util.StringUtils;
 
 public class AxisConfigurationBeanFactoryPostProcessor implements 
BeanFactoryPostProcessor {
     public void postProcessBeanFactory(ConfigurableListableBeanFactory 
beanFactory) throws BeansException {
-        Map<String,BeanDefinition> axisConfigurations = new 
HashMap<String,BeanDefinition>();
-        for (String name : 
beanFactory.getBeanNamesForType(AxisConfiguration.class)) {
-            axisConfigurations.put(name, beanFactory.getBeanDefinition(name));
+        Map<String,BeanDefinition> configurationContextMap = new 
HashMap<String,BeanDefinition>();
+        for (String name : 
beanFactory.getBeanNamesForType(ConfigurationContext.class)) {
+            configurationContextMap.put(name, 
beanFactory.getBeanDefinition(name));
         }
-        processItems(beanFactory, axisConfigurations, 
TransportInDescription.class, "transportInDescriptions");
+        processItems(beanFactory, configurationContextMap, 
TransportInDescription.class, "transportInDescriptions");
     }
 
     private void processItems(ConfigurableListableBeanFactory beanFactory,
-            Map<String,BeanDefinition> axisConfigurationMap,
+            Map<String,BeanDefinition> configurationContextMap,
             Class<?> type,
             String propertyName) {
         for (String name : beanFactory.getBeanNamesForType(type)) {
             BeanDefinition item = beanFactory.getBeanDefinition(name);
-            String axisConfigurationName = 
(String)item.getPropertyValues().getPropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME).getValue();
-            Collection<BeanDefinition> axisConfigurations;
-            if (axisConfigurationName.length() == 0) {
-                axisConfigurations = axisConfigurationMap.values();
+            String configurationContextName = 
(String)item.getPropertyValues().getPropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME).getValue();
+            Collection<BeanDefinition> configurationContexts;
+            if (!StringUtils.hasText(configurationContextName)) {
+                configurationContexts = configurationContextMap.values();
             } else {
-                BeanDefinition axisConfiguration = 
axisConfigurationMap.get(axisConfigurationName);
-                if (axisConfiguration == null) {
+                BeanDefinition configurationContext = 
configurationContextMap.get(configurationContextName);
+                if (configurationContext == null) {
                     throw new RuntimeException(); // TODO
                 } else {
-                    axisConfigurations = 
Collections.singleton(axisConfiguration);
+                    configurationContexts = 
Collections.singleton(configurationContext);
                 }
             }
-            for (BeanDefinition axisConfiguration : axisConfigurations) {
-                PropertyValue propertyValue = 
axisConfiguration.getPropertyValues().getPropertyValue(propertyName);
+            for (BeanDefinition configurationContext : configurationContexts) {
+                PropertyValue propertyValue = 
configurationContext.getPropertyValues().getPropertyValue(propertyName);
                 ManagedList list;
                 if (propertyValue == null) {
                     list = new ManagedList();
-                    
axisConfiguration.getPropertyValues().addPropertyValue(propertyName, list);
+                    
configurationContext.getPropertyValues().addPropertyValue(propertyName, list);
                 } else {
                     list = (ManagedList)propertyValue.getValue();
                 }
                 list.add(new RuntimeBeanReference(name));
             }
-            
item.getPropertyValues().removePropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME);
+            
item.getPropertyValues().removePropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME);
         }
     }
 }

Copied: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java
 (from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java)
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java&r1=928727&r2=928819&rev=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationFactory.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextFactoryBean.java
 Mon Mar 29 16:05:30 2010
@@ -18,11 +18,13 @@
  */
 package org.apache.axis2.spring;
 
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
 import org.apache.axis2.description.TransportInDescription;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.springframework.beans.factory.FactoryBean;
 
-public class AxisConfigurationFactory implements FactoryBean {
+public class ConfigurationContextFactoryBean implements FactoryBean {
     private TransportInDescription[] transportInDescriptions;
     
     public void setTransportInDescriptions(TransportInDescription[] 
transportInDescriptions) {
@@ -30,7 +32,7 @@ public class AxisConfigurationFactory im
     }
 
     public Class getObjectType() {
-        return AxisConfiguration.class;
+        return ConfigurationContext.class;
     }
 
     public boolean isSingleton() {
@@ -38,12 +40,13 @@ public class AxisConfigurationFactory im
     }
 
     public Object getObject() throws Exception {
-        AxisConfiguration config = new AxisConfiguration();
+        ConfigurationContext configurationContext = 
ConfigurationContextFactory.createEmptyConfigurationContext();
+        AxisConfiguration config = configurationContext.getAxisConfiguration();
         if (transportInDescriptions != null) {
             for (TransportInDescription description : transportInDescriptions) 
{
                 config.addTransportIn(description);
             }
         }
-        return config;
+        return configurationContext;
     }
 }

Copied: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java
 (from r928727, 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java)
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java?p2=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java&p1=axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java&r1=928727&r2=928819&rev=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/AxisConfigurationParser.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ConfigurationContextParser.java
 Mon Mar 29 16:05:30 2010
@@ -18,20 +18,23 @@
  */
 package org.apache.axis2.spring;
 
+import org.springframework.beans.factory.BeanDefinitionStoreException;
 import org.springframework.beans.factory.config.BeanDefinition;
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.support.BeanDefinitionRegistry;
 import org.springframework.beans.factory.support.RootBeanDefinition;
 import 
org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
 import org.springframework.beans.factory.xml.ParserContext;
+import org.springframework.util.StringUtils;
 import org.w3c.dom.Element;
 
-public class AxisConfigurationParser extends 
AbstractSingleBeanDefinitionParser {
+public class ConfigurationContextParser extends 
AbstractSingleBeanDefinitionParser {
     private static final String BEAN_FACTORY_POST_PROCESSOR_BEAN_NAME = 
AxisConfigurationBeanFactoryPostProcessor.class.getName();
     
     @Override
     protected Class getBeanClass(Element element) {
-        return AxisConfigurationFactory.class;
+        return ConfigurationContextFactoryBean.class;
     }
 
     @Override
@@ -40,6 +43,13 @@ public class AxisConfigurationParser ext
     }
 
     @Override
+    protected String resolveId(Element element, AbstractBeanDefinition 
definition, ParserContext parserContext)
+            throws BeanDefinitionStoreException {
+        String id = element.getAttribute(ID_ATTRIBUTE);
+        return StringUtils.hasText(id) ? id : 
Constants.DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME;
+    }
+
+    @Override
     protected void doParse(Element element, ParserContext parserContext, 
BeanDefinitionBuilder builder) {
         
registerBeanFactoryPostProcessorIfNecessary(parserContext.getRegistry());
     }

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/Constants.java
 Mon Mar 29 16:05:30 2010
@@ -21,5 +21,7 @@ package org.apache.axis2.spring;
 public class Constants {
     private Constants() {}
     
-    public static final String AXIS_CONFIGURATION_PROPERTY_NAME = 
"__axisConfiguration__";
+    public static final String CONFIGURATION_CONTEXT_PROPERTY_NAME = 
"__configurationContext__";
+    
+    public static final String DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME = 
"_defaultConfigurationContext";
 }

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java?rev=928819&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java
 Mon Mar 29 16:05:30 2010
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.axis2.spring;
+
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.engine.ListenerManager;
+import org.springframework.beans.factory.DisposableBean;
+import org.springframework.beans.factory.FactoryBean;
+import org.springframework.beans.factory.InitializingBean;
+
+public class ListenerManagerFactoryBean implements FactoryBean, 
InitializingBean, DisposableBean {
+    private ConfigurationContext configurationContext;
+    private ListenerManager listenerManager;
+    
+    public void setConfigurationContext(ConfigurationContext 
configurationContext) {
+        this.configurationContext = configurationContext;
+    }
+
+    public Class getObjectType() {
+        return ListenerManager.class;
+    }
+
+    public boolean isSingleton() {
+        return true;
+    }
+
+    public void afterPropertiesSet() throws Exception {
+        listenerManager = new ListenerManager();
+        listenerManager.startSystem(configurationContext);
+    }
+
+    public Object getObject() throws Exception {
+        return null;
+    }
+
+    public void destroy() throws Exception {
+        listenerManager.destroy();
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerFactoryBean.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java?rev=928819&view=auto
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java
 (added)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java
 Mon Mar 29 16:05:30 2010
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.axis2.spring;
+
+import org.springframework.beans.factory.support.BeanDefinitionBuilder;
+import 
org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser;
+import org.springframework.util.StringUtils;
+import org.w3c.dom.Element;
+
+public class ListenerManagerParser extends AbstractSingleBeanDefinitionParser {
+    @Override
+    protected Class getBeanClass(Element element) {
+        return ListenerManagerFactoryBean.class;
+    }
+
+    @Override
+    protected boolean shouldGenerateIdAsFallback() {
+        return true;
+    }
+
+    @Override
+    protected void doParse(Element element, BeanDefinitionBuilder builder) {
+        String configurationContextName = 
element.getAttribute("configurationContext");
+        if (!StringUtils.hasText(configurationContextName)) {
+            configurationContextName = 
Constants.DEFAULT_CONFIGURATION_CONTEXT_BEAN_NAME;
+        }
+        builder.addPropertyReference("configurationContext", 
configurationContextName);
+    }
+}

Propchange: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/ListenerManagerParser.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/NamespaceHandler.java
 Mon Mar 29 16:05:30 2010
@@ -22,7 +22,8 @@ import org.springframework.beans.factory
 
 public class NamespaceHandler extends NamespaceHandlerSupport {
     public void init() {
-        registerBeanDefinitionParser("axisConfiguration", new 
AxisConfigurationParser());
+        registerBeanDefinitionParser("configurationContext", new 
ConfigurationContextParser());
         registerBeanDefinitionParser("transportReceiver", new 
TransportReceiverParser());
+        registerBeanDefinitionParser("listenerManager", new 
ListenerManagerParser());
     }
 }

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/java/org/apache/axis2/spring/TransportReceiverParser.java
 Mon Mar 29 16:05:30 2010
@@ -38,7 +38,7 @@ public class TransportReceiverParser ext
     @Override
     protected void doParse(Element element, ParserContext parserContext, 
BeanDefinitionBuilder builder) {
         builder.setScope(BeanDefinition.SCOPE_PROTOTYPE);
-        builder.addPropertyValue(Constants.AXIS_CONFIGURATION_PROPERTY_NAME, 
element.getAttribute("axisConfiguration"));
+        
builder.addPropertyValue(Constants.CONFIGURATION_CONTEXT_PROPERTY_NAME, 
element.getAttribute("configurationContext"));
         builder.addPropertyValue("name",  element.getAttribute("name"));
         BeanDefinitionBuilder receiver = 
BeanDefinitionBuilder.rootBeanDefinition(element.getAttribute("class"));
         receiver.setSource(parserContext.extractSource(element));

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/main/resources/schemas/spring-axis2.xsd
 Mon Mar 29 16:05:30 2010
@@ -31,7 +31,7 @@
             </extension>
         </simpleContent>
     </complexType>
-    <element name="axisConfiguration">
+    <element name="configurationContext">
         <complexType>
             <complexContent>
                 <extension base="beans:identifiedType"/>
@@ -44,8 +44,13 @@
         </sequence>
         <attribute name="name" type="string" use="required"/>
         <attribute name="class" type="string" use="required"/>
-        <attribute name="axisConfiguration" type="string" use="optional"/>
+        <attribute name="configurationContext" type="string" use="optional"/>
     </complexType>
     <element name="transportReceiver" type="tns:transportDescription"/>
     <element name="transportSender" type="tns:transportDescription"/>
+    <element name="listenerManager">
+        <complexType>
+            <attribute name="configurationContext"/>
+        </complexType>
+    </element>
 </schema>
\ No newline at end of file

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/java/org/apache/axis2/spring/MultiConfigurationTest.java
 Mon Mar 29 16:05:30 2010
@@ -20,17 +20,18 @@ package org.apache.axis2.spring;
 
 import java.util.Map;
 
+import junit.framework.TestCase;
+
+import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.TransportInDescription;
 import org.apache.axis2.engine.AxisConfiguration;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
-import junit.framework.TestCase;
-
 public class MultiConfigurationTest extends TestCase {
     public void test() {
         ClassPathXmlApplicationContext appContext = new 
ClassPathXmlApplicationContext("multi_configuration.xml");
-        AxisConfiguration config1 = 
(AxisConfiguration)appContext.getBean("config1");
-        AxisConfiguration config2 = 
(AxisConfiguration)appContext.getBean("config2");
+        AxisConfiguration config1 = 
((ConfigurationContext)appContext.getBean("config1")).getAxisConfiguration();
+        AxisConfiguration config2 = 
((ConfigurationContext)appContext.getBean("config2")).getAxisConfiguration();
         Map<String,TransportInDescription> transports1 = 
config1.getTransportsIn();
         Map<String,TransportInDescription> transports2 = 
config2.getTransportsIn();
         assertEquals(2, transports1.size());

Modified: 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml?rev=928819&r1=928818&r2=928819&view=diff
==============================================================================
--- 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml
 (original)
+++ 
axis/axis2/java/core/scratch/java/veithen/spring/axis2-spring-core/src/test/resources/multi_configuration.xml
 Mon Mar 29 16:05:30 2010
@@ -22,9 +22,9 @@
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
              xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
                                  http://axis.apache.org/spring-axis2 
http://axis.apache.org/schema/spring-axis2.xsd";>
-    <axisConfiguration id="config1"/>
-    <axisConfiguration id="config2"/>
+    <configurationContext id="config1"/>
+    <configurationContext id="config2"/>
     <transportReceiver name="dummy1" 
class="org.apache.axis2.spring.DummyTransportListener"/>
-    <transportReceiver name="dummy2" 
class="org.apache.axis2.spring.DummyTransportListener" 
axisConfiguration="config1"/>
-    <transportReceiver name="dummy3" 
class="org.apache.axis2.spring.DummyTransportListener" 
axisConfiguration="config2"/>
+    <transportReceiver name="dummy2" 
class="org.apache.axis2.spring.DummyTransportListener" 
configurationContext="config1"/>
+    <transportReceiver name="dummy3" 
class="org.apache.axis2.spring.DummyTransportListener" 
configurationContext="config2"/>
 </beans:beans>


Reply via email to