Author: davsclaus
Date: Tue Sep 8 11:21:17 2009
New Revision: 812464
URL: http://svn.apache.org/viewvc?rev=812464&view=rev
Log:
CAMEL-1996: Added more attributes for managed error handlers.
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
URL:
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java?rev=812464&r1=812463&r2=812464&view=diff
==============================================================================
---
camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
(original)
+++
camel/trunk/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedErrorHandler.java
Tue Sep 8 11:21:17 2009
@@ -19,6 +19,7 @@
import org.apache.camel.LoggingLevel;
import org.apache.camel.Processor;
import org.apache.camel.builder.ErrorHandlerBuilder;
+import org.apache.camel.processor.ErrorHandlerSupport;
import org.apache.camel.processor.RedeliveryErrorHandler;
import org.apache.camel.spi.RouteContext;
import org.springframework.jmx.export.annotation.ManagedAttribute;
@@ -62,6 +63,46 @@
return errorHandler instanceof RedeliveryErrorHandler;
}
+ @ManagedAttribute(description = "Is this error handler a dead letter
channel")
+ public boolean isDeadLetterChannel() {
+ if (!isSupportRedelivery()) {
+ return false;
+ }
+
+ RedeliveryErrorHandler redelivery = (RedeliveryErrorHandler)
errorHandler;
+ return redelivery.getDeadLetter() != null;
+ }
+
+ @ManagedAttribute(description = "When a message is moved to dead letter
channel is it the original message or recent message")
+ public boolean isDeadLetterUseOriginalMessage() {
+ if (!isSupportRedelivery()) {
+ return false;
+ }
+
+ RedeliveryErrorHandler redelivery = (RedeliveryErrorHandler)
errorHandler;
+ return redelivery.isUseOriginalMessagePolicy();
+ }
+
+ @ManagedAttribute(description = "Does this error handler support
transactions")
+ public boolean isSupportTransactions() {
+ if (errorHandler instanceof ErrorHandlerSupport) {
+ ErrorHandlerSupport ehs = (ErrorHandlerSupport) errorHandler;
+ return ehs.supportTransacted();
+ } else {
+ return false;
+ }
+ }
+
+ @ManagedAttribute(description = "Endpoint Uri for the dead letter channel
where dead message is move to")
+ public String getDeadLetterChannelEndpointUri() {
+ if (!isSupportRedelivery()) {
+ return null;
+ }
+
+ RedeliveryErrorHandler redelivery = (RedeliveryErrorHandler)
errorHandler;
+ return redelivery.getDeadLetterUri();
+ }
+
@ManagedAttribute(description = "RedeliveryPolicy for maximum
redeliveries")
public Integer getMaximumRedeliveries() {
if (!isSupportRedelivery()) {
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
URL:
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java?rev=812464&r1=812463&r2=812464&view=diff
==============================================================================
---
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
(original)
+++
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/DeadLetterChannel.java
Tue Sep 8 11:21:17 2009
@@ -52,14 +52,14 @@
}
public void process(Exchange exchange) throws Exception {
- // just to let the stacktrace reveal that this is a dead letter channel
+ // just to let the stack trace reveal that this is a dead letter
channel
super.process(exchange);
}
@Override
public String toString() {
if (output == null) {
- // if no output then dont do any description
+ // if no output then don't do any description
return "";
}
return "DeadLetterChannel[" + output + ", " + (deadLetterUri != null ?
deadLetterUri : deadLetter) + "]";
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
URL:
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java?rev=812464&r1=812463&r2=812464&view=diff
==============================================================================
---
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
(original)
+++
camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
Tue Sep 8 11:21:17 2009
@@ -216,6 +216,14 @@
return deadLetter;
}
+ public String getDeadLetterUri() {
+ return deadLetterUri;
+ }
+
+ public boolean isUseOriginalMessagePolicy() {
+ return useOriginalMessagePolicy;
+ }
+
public RedeliveryPolicy getRedeliveryPolicy() {
return redeliveryPolicy;
}