Author: supun
Date: Sun Jan 30 04:44:56 2011
New Revision: 1065182

URL: http://svn.apache.org/viewvc?rev=1065182&view=rev
Log:
adding patch SYNAPSE-725, programmatically enforcing initialization before send 
is being called

Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/AbstractEndpoint.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/AbstractEndpoint.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/AbstractEndpoint.java?rev=1065182&r1=1065181&r2=1065182&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/AbstractEndpoint.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/AbstractEndpoint.java
 Sun Jan 30 04:44:56 2011
@@ -196,7 +196,13 @@ public abstract class AbstractEndpoint e
     }
 
     public boolean readyToSend() {
-        return !initialized || context == null || context.readyToSend();
+        if (!initialized) {
+            //can't send to a non-initialized endpoint. This is a program fault
+            throw new IllegalStateException("not initialized, " +
+                    "endpoint must be in initialized state");
+        }
+
+        return context != null && context.readyToSend();
     }
 
     public void send(MessageContext synCtx) {
@@ -204,6 +210,12 @@ public abstract class AbstractEndpoint e
         boolean traceOn = isTraceOn(synCtx);
         boolean traceOrDebugOn = isTraceOrDebugOn(traceOn);
 
+        if (!initialized) {
+            //can't send to a non-initialized endpoint. This is a program fault
+            throw new IllegalStateException("not initialized, " +
+                    "endpoint must be in initialized state");
+        }
+
         prepareForEndpointStatistics(synCtx);
 
         if (traceOrDebugOn) {


Reply via email to