You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by as...@apache.org on 2006/10/31 12:16:48 UTC
svn commit: r469446 - in
/incubator/synapse/trunk/java/modules/core/src/org/apache/synapse:
config/SynapseConfiguration.java core/axis2/ProxyService.java
core/axis2/SynapseModule.java
Author: asankha
Date: Tue Oct 31 03:16:47 2006
New Revision: 469446
URL: http://svn.apache.org/viewvc?view=rev&rev=469446
Log:
Comitting for Ruwan
Modified:
incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/config/SynapseConfiguration.java
incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/ProxyService.java
incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/SynapseModule.java
Modified: incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/config/SynapseConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/config/SynapseConfiguration.java?view=diff&rev=469446&r1=469445&r2=469446
==============================================================================
--- incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/config/SynapseConfiguration.java (original)
+++ incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/config/SynapseConfiguration.java Tue Oct 31 03:16:47 2006
@@ -21,10 +21,18 @@
import org.apache.synapse.Mediator;
import org.apache.synapse.core.axis2.ProxyService;
import org.apache.synapse.registry.Registry;
-
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.AxisFault;
+import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamException;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
+import java.net.URLConnection;
+import java.io.IOException;
/**
* The SynapseConfiguration holds the global configuration for a Synapse
@@ -56,7 +64,10 @@
* This is the "main" (or default) synapse mediator which mediates each and every message
* It could/would hold a Mediator object or a Property (if loaded from a registry)
*/
- private Object mainMediator = null;
+ private Object mainMediator = null;
+
+ /** Hold reference to the Axis2 ConfigurationContext */
+ private ConfigurationContext configContext = null;
/**
* Add a named mediator into this configuration
@@ -148,7 +159,18 @@
if(globalProps.containsKey(name)) {
log.warn("Overiding the global property with name : " + name);
} else {
- globalProps.put(name, value);
+ if(value.getType() == Property.SRC_TYPE) {
+ try {
+ URLConnection urlc = value.getSrc().openConnection();
+ XMLStreamReader parser = XMLInputFactory.newInstance().createXMLStreamReader(urlc.getInputStream());
+ StAXOMBuilder builder = new StAXOMBuilder(parser);
+ value.setValue(builder.getDocumentElement());
+ } catch (IOException e) {
+ handleException("Can not read from the source : " + value.getSrc());
+ } catch (XMLStreamException e) {
+ handleException("Can not load the source property : " + value.getName());
+ }
+ }
}
} else {
log.error("Name and the value of the property cannot be null");
@@ -303,7 +325,13 @@
if(o == null) {
handleException("Invalid proxyService for name : " + name + " from registry");
} else {
- proxyServices.remove(name);
+ try {
+ getConfigurationContext().getAxisConfiguration().getService(name).setActive(false);
+ getConfigurationContext().getAxisConfiguration().removeService(name);
+ proxyServices.remove(name);
+ } catch (AxisFault axisFault) {
+ handleException(axisFault.getMessage());
+ }
}
}
@@ -380,6 +408,22 @@
*/
public Map getRegistries() {
return registryMap;
+ }
+
+ /**
+ * Set the Axis2 ConfigurationContext to the SynapseConfiguration
+ * @param configContext
+ */
+ public void setConfigurationContext(ConfigurationContext configContext) {
+ this.configContext = configContext;
+ }
+
+ /**
+ * Get the Axis2 ConfigurationContext for the SynapseConfiguration
+ * @return ConfigurationContext of the Axis2
+ */
+ public ConfigurationContext getConfigurationContext() {
+ return configContext;
}
private void handleException(String msg) {
Modified: incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/ProxyService.java
URL: http://svn.apache.org/viewvc/incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/ProxyService.java?view=diff&rev=469446&r1=469445&r2=469446
==============================================================================
--- incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/ProxyService.java (original)
+++ incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/ProxyService.java Tue Oct 31 03:16:47 2006
@@ -235,6 +235,24 @@
return proxyService;
}
+ public void start(SynapseConfiguration synCfg) {
+ AxisConfiguration axisConfig = synCfg.getConfigurationContext().getAxisConfiguration();
+ try {
+ axisConfig.addService(this.buildAxisService(synCfg, axisConfig));
+ } catch (AxisFault axisFault) {
+ handleException(axisFault.getMessage());
+ }
+ }
+
+ public void stop(SynapseConfiguration synCfg) {
+ AxisConfiguration axisConfig = synCfg.getConfigurationContext().getAxisConfiguration();
+ try {
+ axisConfig.getService(this.getName()).setActive(false);
+ } catch (AxisFault axisFault) {
+ handleException(axisFault.getMessage());
+ }
+ }
+
public String getName() {
return name;
}
Modified: incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/SynapseModule.java
URL: http://svn.apache.org/viewvc/incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/SynapseModule.java?view=diff&rev=469446&r1=469445&r2=469446
==============================================================================
--- incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/SynapseModule.java (original)
+++ incubator/synapse/trunk/java/modules/core/src/org/apache/synapse/core/axis2/SynapseModule.java Tue Oct 31 03:16:47 2006
@@ -106,6 +106,9 @@
SynapseConfigurationBuilder.getDefaultConfiguration();
}
+ // Set the Axis2 ConfigurationContext to the SynapseConfiguration
+ synapseConfiguration.setConfigurationContext(cfgCtx);
+
// set the Synapse configuration and environment into the Axis2 configuration
Parameter synapseCtxParam = new Parameter(Constants.SYNAPSE_CONFIG, null);
synapseCtxParam.setValue(synapseConfiguration);
---------------------------------------------------------------------
To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: synapse-dev-help@ws.apache.org