[jboss-svn-commits] JBL Code SVN: r17969 - in labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product: rosetta/src/org/jboss/soa/esb/client and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jan 18 17:36:05 EST 2008
Author: mark.little at jboss.com
Date: 2008-01-18 17:36:05 -0500 (Fri, 18 Jan 2008)
New Revision: 17969
Modified:
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/AdministrationGuide.odt
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/ProgrammersGuide.odt
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/ReleaseNotes.odt
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/common/Environment.java
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java
labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/RegistryUtil.java
Log:
http://jira.jboss.com/jira/browse/JBESB-1462
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/AdministrationGuide.odt
===================================================================
(Binary files differ)
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/ProgrammersGuide.odt
===================================================================
(Binary files differ)
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/docs/ReleaseNotes.odt
===================================================================
(Binary files differ)
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java 2008-01-18 22:07:19 UTC (rev 17968)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/client/ServiceInvoker.java 2008-01-18 22:36:05 UTC (rev 17969)
@@ -33,6 +33,8 @@
import org.jboss.soa.esb.addressing.PortReference;
import org.jboss.soa.esb.addressing.util.DefaultReplyTo;
import org.jboss.soa.esb.common.Configuration;
+import org.jboss.soa.esb.common.Environment;
+import org.jboss.soa.esb.common.ModulePropertyManager;
import org.jboss.soa.esb.couriers.Courier;
import org.jboss.soa.esb.couriers.CourierException;
import org.jboss.soa.esb.couriers.CourierFactory;
@@ -67,6 +69,12 @@
public static final String DELIVER_TO = "org.jboss.soa.esb.deliver.to";
/**
+ * Remove (suspected) dead EPRs.
+ */
+
+ private static boolean removeDeadEprs;
+
+ /**
* Class logger.
*/
private static Logger logger = Logger.getLogger(ServiceInvoker.class);
@@ -281,6 +289,14 @@
logger.info("Unresponsive EPR: " + epr+" for message: "+message.getHeader());
serviceClusterInfo.removeDeadEPR(epr);
+
+ /*
+ * So far we've only removed the EPR from the cache. Should we
+ * also remove it from the registry?
+ */
+
+ if (removeDeadEprs)
+ RegistryUtil.unregister(service.getCategory(), service.getName(), epr);
}
}
catch (MalformedEPRException ex) // so we can differentiate failure modes, since returning null is limiting
@@ -288,6 +304,10 @@
logger.info("Invalid EPR for service (probably ESB-unaware): ignoring for message: "+message.getHeader());
serviceClusterInfo.removeDeadEPR(epr);
+
+ /*
+ * DO NOT remove from the registry - it is not dead!!
+ */
}
}
}
@@ -499,4 +519,18 @@
return null;
}
}
+
+ static
+ {
+ String pruneDead = ModulePropertyManager.getPropertyManager(ModulePropertyManager.CORE_MODULE).getProperty(Environment.REMOVE_DEAD_EPR, "false");
+
+ if ("true".equalsIgnoreCase(pruneDead))
+ {
+ removeDeadEprs = true;
+ }
+ else
+ {
+ removeDeadEprs = false;
+ }
+ }
}
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/common/Environment.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/common/Environment.java 2008-01-18 22:07:19 UTC (rev 17968)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/common/Environment.java 2008-01-18 22:36:05 UTC (rev 17969)
@@ -50,7 +50,7 @@
public static final String JMS_SESSION_SLEEP = "org.jboss.soa.esb.jms.sessionSleep";
/*
- * Code properties
+ * Core properties
*/
public static final String JNDI_SERVER_URL = "org.jboss.soa.esb.jndi.server.url";
public static final String JNDI_SERVER_CONTEXT_FACTORY = "org.jboss.soa.esb.jndi.server.context.factory";
@@ -61,6 +61,7 @@
public static final String LOAD_BALANCER_POLICY = "org.jboss.soa.esb.loadbalancer.policy";
public static final String REDELIVER_DLS_SERVICE_ON = "org.jboss.soa.esb.dls.redeliver";
public static final String REGISTRY_CACHE_LIFE_MILLIES = "org.jboss.soa.esb.registry.cache.life";
+ public static final String REMOVE_DEAD_EPR = "org.jboss.soa.esb.failure.detect.removeDeadEPR";
/**
* The Registry Query Manager URI defines the endPoint where registry queries can be made.
*/
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java 2008-01-18 22:07:19 UTC (rev 17968)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java 2008-01-18 22:36:05 UTC (rev 17969)
@@ -47,6 +47,7 @@
public static final String SERVICE_NAME_TAG = "service-name";
public static final String SERVICE_DESCRIPTION_TAG = "service-description";
public static final String EPR_DESCRIPTION_TAG = "epr-description";
+ public static final String REMOVE_OLD_SERVICE = "remove-old-service";
/** Gateways */
public static final String TARGET_SERVICE_CATEGORY_TAG = "target-service-category";
Modified: labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/RegistryUtil.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/RegistryUtil.java 2008-01-18 22:07:19 UTC (rev 17968)
+++ labs/jbossesb/branches/JBESB_4_2_1_GA_CP/product/rosetta/src/org/jboss/soa/esb/listeners/RegistryUtil.java 2008-01-18 22:36:05 UTC (rev 17969)
@@ -117,7 +117,8 @@
{
final String category = config.getAttribute(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG) ;
final String name = config.getAttribute(ListenerTagNames.SERVICE_NAME_TAG) ;
-
+ final String removeOldService = config.getAttribute(ListenerTagNames.REMOVE_OLD_SERVICE);
+
if ("eprManager".equalsIgnoreCase(category))
{
register(name, epr) ;
@@ -136,9 +137,18 @@
registryLock.lock();
try
{
+ if ("true".equalsIgnoreCase(removeOldService))
+ registry.unRegisterService(category, name);
+
registry.registerEPR(category, name,
serviceDescription, epr, eprDescription) ;
}
+ catch (ServiceNotFoundException ex)
+ {
+ // ignore as it's possible another client just did the removal for us.
+
+ logger.debug("Could not unregister service < "+category+", "+name+" >.");
+ }
finally
{
registryLock.unlock() ;
More information about the jboss-svn-commits
mailing list