Author: indika
Date: Mon Dec 17 02:55:23 2007
New Revision: 11228
Log:
fixed ESB-JAVA 208
Modified:
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/EntriesAdmin.java
Modified:
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/EntriesAdmin.java
==============================================================================
---
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/EntriesAdmin.java
(original)
+++
trunk/esb/java/modules/core/src/main/java/org/wso2/esb/services/EntriesAdmin.java
Mon Dec 17 02:55:23 2007
@@ -28,6 +28,7 @@
import org.apache.synapse.endpoints.Endpoint;
import org.apache.synapse.mediators.base.SequenceMediator;
import org.wso2.esb.services.tos.EntryData;
+import org.wso2.esb.services.tos.SequenceData;
import javax.xml.namespace.QName;
import java.net.MalformedURLException;
@@ -73,7 +74,7 @@
if (value.getValue() instanceof String) {
String s = (String) value.getValue();
if (value.getType() == Entry.INLINE_TEXT &&
- s.length() > 40) {
+ s.length() > 40) {
data.setValue(s.substring(0, 40) + "...");
} else {
data.setValue(s);
@@ -96,12 +97,12 @@
Collections.sort(globalEntryList, new Comparator() {
public int compare(Object o1, Object o2) {
return ((EntryData) o1).getName().compareTo(
- ((EntryData) o2).getName());
+ ((EntryData) o2).getName());
}
});
return (EntryData[]) globalEntryList
- .toArray(new EntryData[globalEntryList.size()]);
+ .toArray(new EntryData[globalEntryList.size()]);
}
/**
@@ -114,7 +115,7 @@
public boolean addEntry(OMElement elem) throws AxisFault {
try {
if (elem.getQName().getLocalPart().equals(XMLConfigConstants
- .ENTRY_ELT.getLocalPart())) {
+ .ENTRY_ELT.getLocalPart())) {
String entryName = elem.getAttributeValue(new QName("name"));
@@ -124,7 +125,7 @@
"' is already used within the configuration", null);
} else {
OMAttribute name = elem.getAttribute(
- new QName(XMLConfigConstants.NULL_NAMESPACE,
"name"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "name"));
if (name == null) {
handleFault(log, "Unable to add local entry. Cannot
find the name", null);
@@ -132,13 +133,13 @@
Entry entry = new Entry();
entry.setKey(name.getAttributeValue());
String value = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE,
"value"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE,
"value"));
String src = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE,
"src"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE,
"src"));
String key = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE,
"key"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE,
"key"));
int type = Integer.parseInt(elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE,
"type")));
+ new QName(XMLConfigConstants.NULL_NAMESPACE,
"type")));
OMElement content = elem.getFirstElement();
if (type == Entry.URL_SRC) {
@@ -188,7 +189,7 @@
handleFault(log, "Unable to save local entry. Null definition",
null);
}
OMAttribute name = elem.getAttribute(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "name"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "name"));
String nameValue = null;
if (name != null) {
if (name.getAttributeValue() != null) {
@@ -203,13 +204,13 @@
} else {
entry.setKey(nameValue);
String value = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "value"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "value"));
String src = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "src"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "src"));
String key = elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "key"));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "key"));
int type = Integer.parseInt(elem.getAttributeValue(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "type")));
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "type")));
OMElement content = elem.getFirstElement();
if (type == Entry.URL_SRC) {
@@ -255,17 +256,17 @@
if (synapseConfiguration.getEntry(entryName) != null) {
OMElement elem = EntrySerializer.serializeEntry(
- synapseConfiguration.getEntryDefinition(entryName), null);
+ synapseConfiguration.getEntryDefinition(entryName), null);
OMFactory fac = elem.getOMFactory();
OMNamespace nullNS =
fac.createOMNamespace(XMLConfigConstants.NULL_NAMESPACE, "ns3");
elem.declareNamespace(nullNS);
if (elem.getAttribute(new QName(XMLConfigConstants.NULL_NAMESPACE,
"key")) != null) {
if (elem.getAttribute(
- new QName(XMLConfigConstants.NULL_NAMESPACE, "src"))
!= null) {
+ new QName(XMLConfigConstants.NULL_NAMESPACE, "src")) !=
null) {
elem.addAttribute("type", Integer.toString(Entry.URL_SRC),
nullNS);
} else if (elem.getFirstOMChild() instanceof OMText) {
elem.addAttribute("type", Integer.toString(
- Entry.INLINE_TEXT), nullNS);
+ Entry.INLINE_TEXT), nullNS);
} else if (elem.getFirstOMChild() instanceof OMElement) {
elem.addAttribute("type",
Integer.toString(Entry.INLINE_XML), nullNS);
}
@@ -290,7 +291,7 @@
try {
log.debug("Deleting local entry with name : " + entryName);
SynapseConfiguration synapseConfiguration
- = getSynapseConfiguration();
+ = getSynapseConfiguration();
synapseConfiguration.removeEntry(entryName);
log.info("Deleted local entry named : " + entryName);
return true;
@@ -323,7 +324,12 @@
public String getEntryNamesString() throws AxisFault {
SynapseConfiguration synapseConfiguration = getSynapseConfiguration();
Map gloabalEntriesMap = synapseConfiguration.getLocalRegistry();
- StringBuffer propKeys = new StringBuffer();
+ List sequenceList = new ArrayList();
+ List endpointList = new ArrayList();
+ List entryList = new ArrayList();
+ StringBuffer entrySb = new StringBuffer();
+ StringBuffer endpointSb = new StringBuffer();
+ StringBuffer sequenceSb = new StringBuffer();
Iterator values = gloabalEntriesMap.values().iterator();
while (values.hasNext()) {
Object entryValue = values.next();
@@ -331,22 +337,70 @@
Endpoint endpoint = (Endpoint) entryValue;
String name = endpoint.getName();
if (name != null) {
- propKeys.append("[Enpoint]-" + name + " ");
+ endpointList.add(name);
}
} else if (entryValue instanceof SequenceMediator) {
SequenceMediator sequenceMediator = (SequenceMediator)
entryValue;
String name = sequenceMediator.getName();
if (name != null) {
- propKeys.append("[Sequence]-" + name + " ");
+ sequenceList.add(name);
}
} else if (entryValue instanceof Entry) {
Entry entry = (Entry) entryValue;
if (!entry.isDynamic() && !entry.isRemote()) { // only care
pre-defined local entries
- propKeys.append("[Entry]-" + entry.getKey() + " ");
+ entryList.add(entry.getKey());
}
}
}
- return propKeys.toString();
+
+ if (!sequenceList.isEmpty()) {
+
+ Collections.sort(sequenceList, new Comparator() {
+ public int compare(Object o1, Object o2) {
+ return ((String) o1).compareTo(
+ (String) o2);
+ }
+ });
+ for (Iterator it = sequenceList.iterator(); it.hasNext();) {
+ String name = (String) it.next();
+ if (name != null) {
+ sequenceSb.append("[Sequence]-" + name + " ");
+ }
+ }
+ }
+
+ if (!entryList.isEmpty()) {
+
+ Collections.sort(entryList, new Comparator() {
+ public int compare(Object o1, Object o2) {
+ return ((String) o1).compareTo(
+ (String) o2);
+ }
+ });
+ for (Iterator it = entryList.iterator(); it.hasNext();) {
+ String name = (String) it.next();
+ if (name != null) {
+ entrySb.append("[Entry]-" + name + " ");
+ }
+ }
+ }
+
+ if (!endpointList.isEmpty()) {
+
+ Collections.sort(endpointList, new Comparator() {
+ public int compare(Object o1, Object o2) {
+ return ((String) o1).compareTo(
+ (String) o2);
+ }
+ });
+ for (Iterator it = endpointList.iterator(); it.hasNext();) {
+ String name = (String) it.next();
+ if (name != null) {
+ endpointSb.append("[Enpoint]-" + name + " ");
+ }
+ }
+ }
+ return endpointSb.toString() + entrySb.toString() +
sequenceSb.toString();
}
}
_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev