Author: ruwan
Date: Tue Aug 31 05:42:08 2010
New Revision: 991083

URL: http://svn.apache.org/viewvc?rev=991083&view=rev
Log:
loading descriptions from the single xml configuration files and serializing it

Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationFactory.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationSerializer.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java?rev=991083&r1=991082&r2=991083&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
 Tue Aug 31 05:42:08 2010
@@ -50,17 +50,19 @@ public class SynapseConfigurationBuilder
     public static SynapseConfiguration getDefaultConfiguration() {
         // programatically create an empty configuration which just log and 
drop the messages 
         SynapseConfiguration config = SynapseConfigUtils.newConfiguration();
-        SequenceMediator mainmediator = new SequenceMediator();
-        mainmediator.addChild(new LogMediator());
-        mainmediator.addChild(new DropMediator());
-        mainmediator.setName(SynapseConstants.MAIN_SEQUENCE_KEY);
-        config.addSequence(SynapseConstants.MAIN_SEQUENCE_KEY, mainmediator);
-        SequenceMediator faultmediator = new SequenceMediator();
+        SequenceMediator mainMediator = new SequenceMediator();
+        mainMediator.addChild(new LogMediator());
+        mainMediator.addChild(new DropMediator());
+        mainMediator.setName(SynapseConstants.MAIN_SEQUENCE_KEY);
+        config.addSequence(SynapseConstants.MAIN_SEQUENCE_KEY, mainMediator);
+        SequenceMediator faultMediator = new SequenceMediator();
         LogMediator fault = new LogMediator();
         fault.setLogLevel(LogMediator.FULL);
-        faultmediator.addChild(fault);
-        faultmediator.setName(SynapseConstants.FAULT_SEQUENCE_KEY);
-        config.addSequence(SynapseConstants.FAULT_SEQUENCE_KEY, faultmediator);
+        faultMediator.addChild(fault);
+        faultMediator.setName(SynapseConstants.FAULT_SEQUENCE_KEY);
+        config.addSequence(SynapseConstants.FAULT_SEQUENCE_KEY, faultMediator);
+        config.setDescription("The default configuration of the ESB, that is 
created " +
+                "programatically at the startup");
         return config;
     }
 

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationFactory.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationFactory.java?rev=991083&r1=991082&r2=991083&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationFactory.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationFactory.java
 Tue Aug 31 05:42:08 2010
@@ -57,9 +57,9 @@ public class SynapseXMLConfigurationFact
         SynapseConfiguration config = SynapseConfigUtils.newConfiguration();   
            
         config.setDefaultQName(definitions.getQName());
 
-        Iterator iter = definitions.getChildren();
-        while (iter.hasNext()) {
-            Object o = iter.next();
+        Iterator itr = definitions.getChildren();
+        while (itr.hasNext()) {
+            Object o = itr.next();
             if (o instanceof OMElement) {
                 OMElement elt = (OMElement) o;
                 if (XMLConfigConstants.SEQUENCE_ELT.equals(elt.getQName())) {
@@ -85,6 +85,8 @@ public class SynapseXMLConfigurationFact
                     defineExecutor(config,  elt);
                 } else if 
(StartupFinder.getInstance().isStartup(elt.getQName())) {
                     defineStartup(config, elt);
+                } else if 
(XMLConfigConstants.DESCRIPTION_ELT.equals(elt.getQName())) {
+                    config.setDescription(elt.getText());
                 } else {
                     handleException("Invalid configuration element at the top 
level, one of \'sequence\', " +
                             "\'endpoint\', \'proxy\', \'eventSource\', 
\'localEntry\', \'priorityExecutor\' " +

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationSerializer.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationSerializer.java?rev=991083&r1=991082&r2=991083&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationSerializer.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/SynapseXMLConfigurationSerializer.java
 Tue Aug 31 05:42:08 2010
@@ -1,12 +1,23 @@
-package org.apache.synapse.config.xml;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Collection;
+/*
+ *  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.
+ */
 
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
+package org.apache.synapse.config.xml;
 
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
@@ -14,19 +25,25 @@ import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.OMNamespace;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.synapse.Mediator;
+import org.apache.synapse.Startup;
+import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.commons.executors.PriorityExecutor;
+import org.apache.synapse.commons.executors.config.PriorityExecutorSerializer;
 import org.apache.synapse.config.Entry;
 import org.apache.synapse.config.SynapseConfiguration;
 import org.apache.synapse.config.xml.endpoints.EndpointSerializer;
 import org.apache.synapse.config.xml.eventing.EventSourceSerializer;
-import org.apache.synapse.commons.executors.config.PriorityExecutorSerializer;
 import org.apache.synapse.core.axis2.ProxyService;
 import org.apache.synapse.endpoints.Endpoint;
-import org.apache.synapse.Startup;
-import org.apache.synapse.SynapseConstants;
-import org.apache.synapse.commons.executors.PriorityExecutor;
 import org.apache.synapse.eventing.SynapseEventSource;
+import org.apache.synapse.mediators.base.SequenceMediator;
+
+import javax.xml.namespace.QName;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
 
 public class SynapseXMLConfigurationSerializer implements 
ConfigurationSerializer {
 
@@ -40,24 +57,31 @@ public class SynapseXMLConfigurationSeri
     /**
      * Order of entries is irrelevant, however its nice to have some order.
      *
-     * @param synCfg
-     * @throws XMLStreamException
+     * @param synCfg configuration to be serialized
+     * @return serialized element of the configuration
      */
 
     public OMElement serializeConfiguration(SynapseConfiguration synCfg) {
 
         OMElement definitions = fac.createOMElement("definitions", synNS);
 
-        // first process a remote registry if present
+        // first add the description
+        if (synCfg.getDescription() != null) {
+            OMElement descElem = fac.createOMElement("description", synNS);
+            descElem.setText(synCfg.getDescription());
+            definitions.addChild(descElem);
+        }
+
+        // then process a remote registry if present
         if (synCfg.getRegistry() != null) {
             RegistrySerializer.serializeRegistry(definitions, synCfg
                     .getRegistry());
         }
 
         // add proxy services
-        Iterator iter = synCfg.getProxyServices().iterator();
-        while (iter.hasNext()) {
-            ProxyService service = (ProxyService) iter.next();
+        Iterator itr = synCfg.getProxyServices().iterator();
+        while (itr.hasNext()) {
+            ProxyService service = (ProxyService) itr.next();
             ProxyServiceSerializer.serializeProxy(definitions, service);
         }
 
@@ -66,23 +90,23 @@ public class SynapseXMLConfigurationSeri
             EventSourceSerializer.serializeEventSource(definitions, 
eventSource);
         }
 
-        Map entries = new HashMap();
+        Map<String, Entry> entries = new HashMap<String, Entry>();
         Map<String, Endpoint> endpoints = new HashMap<String, Endpoint>();
-        Map sequences = new HashMap();
+        Map<String, SequenceMediator> sequences = new HashMap<String, 
SequenceMediator>();
 
-        iter = synCfg.getLocalRegistry().keySet().iterator();
-        while (iter.hasNext()) {
-            Object key = iter.next();
+        itr = synCfg.getLocalRegistry().keySet().iterator();
+        while (itr.hasNext()) {
+            Object key = itr.next();
             if (SynapseConstants.SERVER_IP.equals(key) || 
SynapseConstants.SERVER_HOST.equals(key)) {
                 continue;
             }
             Object o = synCfg.getLocalRegistry().get(key);
-            if (o instanceof Mediator) {
-                sequences.put(key, o);
+            if (o instanceof SequenceMediator) {
+                sequences.put(key.toString(), (SequenceMediator) o);
             } else if (o instanceof Endpoint) {
                 endpoints.put(key.toString(), (Endpoint) o);
             } else if (o instanceof Entry) {
-                entries.put(key, o);
+                entries.put(key.toString(), (Entry) o);
             } else {
                 handleException("Unknown object : " + o.getClass()
                         + " for serialization into Synapse configuration");
@@ -106,13 +130,9 @@ public class SynapseXMLConfigurationSeri
         return definitions;
     }
 
-    private static void serializeEntries(OMElement definitions, Map entries) {
-        for (Object o : entries.keySet()) {
-            if (o instanceof String) {
-                String key = (String) o;
-                EntrySerializer.serializeEntry((Entry) entries.get(key),
-                        definitions);
-            }
+    private static void serializeEntries(OMElement definitions, Map<String, 
Entry> entries) {
+        for (Entry entry : entries.values()) {
+            EntrySerializer.serializeEntry(entry, definitions);
         }
     }
 
@@ -131,14 +151,12 @@ public class SynapseXMLConfigurationSeri
         }
     }
 
-    private static void serializeSequences(OMElement definitions, Map 
sequences) {
-        for (Object o : sequences.keySet()) {
-            if (o instanceof String) {
-                String key = (String) o;
-                Mediator mediator = (Mediator) sequences.get(key);
-                MediatorSerializerFinder.getInstance().getSerializer(mediator)
-                        .serializeMediator(definitions, mediator);
-            }
+    private static void serializeSequences(OMElement definitions,
+                                           Map<String, SequenceMediator> 
sequences) {
+        for (SequenceMediator seq : sequences.values()) {
+            MediatorSerializerFinder.getInstance().getSerializer(seq)
+                    .serializeMediator(definitions, seq);
+
         }
     }
 

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java?rev=991083&r1=991082&r2=991083&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
 Tue Aug 31 05:42:08 2010
@@ -56,6 +56,7 @@ public class XMLConfigConstants {
 
     //- configuration language constants -
     public static final QName DEFINITIONS_ELT = new QName(SYNAPSE_NAMESPACE, 
"definitions");
+    public static final QName DESCRIPTION_ELT = new QName(SYNAPSE_NAMESPACE, 
"description");
     public static final QName SEQUENCE_ELT    = new QName(SYNAPSE_NAMESPACE, 
"sequence");
     public static final QName ENDPOINT_ELT    = new QName(SYNAPSE_NAMESPACE, 
"endpoint");
     public static final QName ENTRY_ELT       = new QName(SYNAPSE_NAMESPACE, 
"localEntry");


Reply via email to