You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ru...@apache.org on 2008/04/25 06:50:19 UTC
svn commit: r651486 - in
/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport:
base/ fix/ jms/ mail/ vfs/
Author: ruwan
Date: Thu Apr 24 21:49:59 2008
New Revision: 651486
URL: http://svn.apache.org/viewvc?rev=651486&view=rev
Log:
Finalizing the issue SYNAPSE-273, now the transports which are not configured properly for a particular service is disabled at the startup
Modified:
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractPollingTransportListener.java
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractTransportListener.java
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/fix/FIXTransportListener.java
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSListener.java
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/mail/MailTransportListener.java
synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractPollingTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractPollingTransportListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractPollingTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractPollingTransportListener.java Thu Apr 24 21:49:59 2008
@@ -110,6 +110,11 @@
public void onPoll() {}
protected void startListeningForService(AxisService service) {
+
+ if (service.getName().startsWith("__")) {
+ return;
+ }
+
Parameter param = service.getParameter(TRANSPORT_POLL_INTERVAL);
long pollInterval = DEFAULT_POLL_INTERVAL;
if (param != null && param.getValue() instanceof String) {
@@ -118,6 +123,7 @@
} catch (NumberFormatException e) {
log.error("Invalid poll interval : " + param.getValue() + " for service : " +
service.getName() + " Using defaults", e);
+ disableTransportForService(service);
}
}
schedulePoll(service, pollInterval);
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractTransportListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/base/AbstractTransportListener.java Thu Apr 24 21:49:59 2008
@@ -165,6 +165,25 @@
}
}
+ public void disableTransportForService(AxisService service) {
+
+ log.warn("Disabling the " + getTransportName() + " transport for the service "
+ + service.getName() + ", because it is not configured properly for the service");
+
+ if (service.isEnableAllTransports()) {
+ ArrayList<String> exposedTransports = new ArrayList<String>();
+ for(Object obj: cfgCtx.getAxisConfiguration().getTransportsIn().values()) {
+ String transportName = ((TransportInDescription) obj).getName();
+ if (!transportName.equals(getTransportName())) {
+ exposedTransports.add(transportName);
+ }
+ }
+ service.setExposedTransports(exposedTransports);
+ } else {
+ service.removeExposedTransport(getTransportName());
+ }
+ }
+
protected abstract void startListeningForService(AxisService service);
protected abstract void stopListeningForService(AxisService service);
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/fix/FIXTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/fix/FIXTransportListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/fix/FIXTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/fix/FIXTransportListener.java Thu Apr 24 21:49:59 2008
@@ -77,6 +77,11 @@
* @param service the service for which to listen for messages
*/
protected void startListeningForService(AxisService service) {
+
+ if (service.getName().startsWith("__")) {
+ return;
+ }
+
fixSessionFactory.createFIXAcceptor(service);
}
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/jms/JMSListener.java Thu Apr 24 21:49:59 2008
@@ -155,6 +155,7 @@
"available over the JMS transport";
log.warn(msg);
BaseUtils.markServiceAsFaulty(service.getName(), msg, service.getAxisConfiguration());
+ disableTransportForService(service);
return;
}
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/mail/MailTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/mail/MailTransportListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/mail/MailTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/mail/MailTransportListener.java Thu Apr 24 21:49:59 2008
@@ -486,6 +486,10 @@
protected void startListeningForService(AxisService service) {
+ if (service.getName().startsWith("__")) {
+ return;
+ }
+
Parameter param = service.getParameter(BaseConstants.TRANSPORT_POLL_INTERVAL);
long pollInterval = BaseConstants.DEFAULT_POLL_INTERVAL;
if (param != null && param.getValue() instanceof String) {
@@ -565,11 +569,13 @@
String msg = "Error configuring the Mail transport for Service : " +
service.getName() + " :: " + axisFault.getMessage();
log.warn(msg);
+ disableTransportForService(service);
} catch (AddressException e) {
String msg = "Error configuring the Mail transport for Service : " +
" Invalid email address specified by '" + MailConstants.TRANSPORT_MAIL_ADDRESS +
"'parameter for service : " + service.getName() + " :: " + e.getMessage();
log.warn(msg);
+ disableTransportForService(service);
}
}
Modified: synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java?rev=651486&r1=651485&r2=651486&view=diff
==============================================================================
--- synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java (original)
+++ synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/vfs/VFSTransportListener.java Thu Apr 24 21:49:59 2008
@@ -481,6 +481,10 @@
protected void startListeningForService(AxisService service) {
+ if (service.getName().startsWith("__")) {
+ return;
+ }
+
Parameter param = service.getParameter(BaseConstants.TRANSPORT_POLL_INTERVAL);
long pollInterval = BaseConstants.DEFAULT_POLL_INTERVAL;
if (param != null && param.getValue() instanceof String) {
@@ -488,7 +492,9 @@
pollInterval = Integer.parseInt(param.getValue().toString());
} catch (NumberFormatException e) {
log.error("Invalid poll interval : " + param.getValue() + " for service : " +
- service.getName() + " default to : " + (BaseConstants.DEFAULT_POLL_INTERVAL/1000) + "sec", e);
+ service.getName() + " default to : "
+ + (BaseConstants.DEFAULT_POLL_INTERVAL/1000) + "sec", e);
+ disableTransportForService(service);
}
}
@@ -496,10 +502,10 @@
try {
entry.setFileURI(
BaseUtils.getRequiredServiceParam(service, VFSConstants.TRANSPORT_FILE_FILE_URI));
- entry.setFileNamePattern(
- BaseUtils.getOptionalServiceParam(service, VFSConstants.TRANSPORT_FILE_FILE_NAME_PATTERN));
- entry.setContentType(
- BaseUtils.getRequiredServiceParam(service, VFSConstants.TRANSPORT_FILE_CONTENT_TYPE));
+ entry.setFileNamePattern(BaseUtils.getOptionalServiceParam(service,
+ VFSConstants.TRANSPORT_FILE_FILE_NAME_PATTERN));
+ entry.setContentType(BaseUtils.getRequiredServiceParam(service,
+ VFSConstants.TRANSPORT_FILE_CONTENT_TYPE));
String option = BaseUtils.getOptionalServiceParam(
service, VFSConstants.TRANSPORT_FILE_ACTION_AFTER_PROCESS);
entry.setActionAfterProcess(
@@ -548,7 +554,7 @@
String msg = "Error configuring the File/VFS transport for Service : " +
service.getName() + " :: " + axisFault.getMessage();
log.warn(msg);
- //cfgCtx.getAxisConfiguration().getFaultyServices().put(service.getName(), msg);
+ disableTransportForService(service);
}
}