Author: supun
Date: Fri Sep 10 09:45:11 2010
New Revision: 995723
URL: http://svn.apache.org/viewvc?rev=995723&view=rev
Log:
setting the endpoint state in a clustered environment
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/EndpointContext.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/EndpointContext.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/EndpointContext.java?rev=995723&r1=995722&r2=995723&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/EndpointContext.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/endpoints/EndpointContext.java
Fri Sep 10 09:45:11 2010
@@ -112,6 +112,11 @@ public class EndpointContext {
NEXT_RETRY_TIME_KEY = KEY_PREFIX + endpointName + NEXT_RETRY_TIME;
REMAINING_RETRIES_KEY = KEY_PREFIX + endpointName + REMAINING_RETRIES;
LAST_SUSPEND_DURATION_KEY = KEY_PREFIX + endpointName +
LAST_SUSPEND_DURATION;
+
+ if (isClustered) {
+ //In a clustered environment, we need to set the state of an
Endpoint when it is created.
+ cfgCtx.setNonReplicableProperty(STATE_KEY, ST_ACTIVE);
+ }
}
/**
@@ -225,7 +230,7 @@ public class EndpointContext {
if (isClustered) {
Integer state = (Integer)
cfgCtx.getPropertyNonReplicable(STATE_KEY);
- if ((state == null) || ((state != ST_ACTIVE) && (state !=
ST_OFF))) {
+ if ((state != null) && ((state != ST_ACTIVE) && (state !=
ST_OFF))) {
log.info("Endpoint : " + endpointName + " currently " +
getStateAsString() +
" will now be marked active since it processed its
last message");
setState(ST_ACTIVE);