Author: indika
Date: Wed Jan  9 22:56:51 2008
New Revision: 12096

Log:

fix for ESB-JAVA 414


Modified:
   
branches/esb/java/1.6/esb/java/modules/core/src/main/java/org/wso2/esb/services/EndpointAdmin.java

Modified: 
branches/esb/java/1.6/esb/java/modules/core/src/main/java/org/wso2/esb/services/EndpointAdmin.java
==============================================================================
--- 
branches/esb/java/1.6/esb/java/modules/core/src/main/java/org/wso2/esb/services/EndpointAdmin.java
  (original)
+++ 
branches/esb/java/1.6/esb/java/modules/core/src/main/java/org/wso2/esb/services/EndpointAdmin.java
  Wed Jan  9 22:56:51 2008
@@ -398,14 +398,42 @@
             String endpointName = endpointElement.getAttributeValue(new 
QName("name"));
             log.info("Updating the definition of the endpoint : " + 
endpointName);
 
-            if (endpointName != null &&
-                    !("".equals(endpointName)) &&
-                    getSynapseConfiguration().getEndpoint(endpointName.trim()) 
== null) {
+            if (endpointName == null) {
                 handleFault(log,
-                        "The endpoint named '" + endpointName + "' does not 
exist", null);
+                    "The endpoint named cannot be null", null);
+            }
+
+            if ("".equals(endpointName)) {
+                handleFault(log,
+                    "The endpoint named cannot be empty ", null);
+            }
+            
+            Endpoint previousEndpoint = 
getSynapseConfiguration().getEndpoint(endpointName.trim());
+
+            if (previousEndpoint == null) {
+                handleFault(log,
+                    "The endpoint named '" + endpointName + "' does not 
exist", null);
             } else {
+
+                int staisticsState = SynapseConstants.STATISTICS_UNSET;
+                if (previousEndpoint instanceof AddressEndpoint) {
+                    staisticsState = ((AddressEndpoint) 
previousEndpoint).getEndpoint()
+                        .getStatisticsState();
+                } else if (previousEndpoint instanceof WSDLEndpoint) {
+                    staisticsState = ((WSDLEndpoint) 
previousEndpoint).getEndpoint()
+                        .getStatisticsState();
+                }
+
                 Endpoint endpoint = EndpointAbstractFactory.getEndpointFactroy(
-                        endpointElement).createEndpoint(endpointElement, 
false);
+                    endpointElement).createEndpoint(endpointElement, false);
+                if (endpoint instanceof AddressEndpoint) {
+                    ((AddressEndpoint) endpoint).getEndpoint()
+                        .setStatisticsState(staisticsState);
+                } else if (endpoint instanceof WSDLEndpoint) {
+                    ((WSDLEndpoint) endpoint).getEndpoint()
+                        .setStatisticsState(staisticsState);
+                }
+
                 getSynapseConfiguration().addEndpoint(endpointName.trim(), 
endpoint);
             }
             log.info("Updated the definition of the endpoint : " + 
endpointName);

_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to