/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.camel.api.management.mbean;
import org.apache.camel.api.management.ManagedAttribute;
public interface ManagedErrorHandlerMBean {
@ManagedAttribute(description = "Camel ID")
String getCamelId();
@ManagedAttribute(description = "Camel ManagementName")
String getCamelManagementName();
@ManagedAttribute(description = "Does the error handler support redelivery")
boolean isSupportRedelivery();
@ManagedAttribute(description = "Is this error handler a dead letter channel")
boolean isDeadLetterChannel();
@ManagedAttribute(description = "When a message is moved to dead letter channel is it the original message or recent message")
boolean isDeadLetterUseOriginalMessage();
@ManagedAttribute(description = "Does this error handler handle new exceptions which may occur during error handling")
boolean isDeadLetterHandleNewException();
@ManagedAttribute(description = "Does this error handler support transactions")
boolean isSupportTransactions();
@ManagedAttribute(description = "Endpoint Uri for the dead letter channel where dead message is move to", mask = true)
String getDeadLetterChannelEndpointUri();
@ManagedAttribute(description = "Number of Exchanges scheduled for redelivery (waiting to be redelivered in the future)")
Integer getPendingRedeliveryCount();
@ManagedAttribute(description = "RedeliveryPolicy for maximum redeliveries")
Integer getMaximumRedeliveries();
@ManagedAttribute(description = "RedeliveryPolicy for maximum redeliveries")
void setMaximumRedeliveries(Integer maximum);
@ManagedAttribute(description = "RedeliveryPolicy for maximum redelivery delay")
Long getMaximumRedeliveryDelay();
@ManagedAttribute(description = "RedeliveryPolicy for maximum redelivery delay")
void setMaximumRedeliveryDelay(Long delay);
@ManagedAttribute(description = "RedeliveryPolicy for redelivery delay")
Long getRedeliveryDelay();
@ManagedAttribute(description = "RedeliveryPolicy for redelivery delay")
void setRedeliveryDelay(Long delay);
@ManagedAttribute(description = "RedeliveryPolicy for backoff multiplier")
Double getBackOffMultiplier();
@ManagedAttribute(description = "RedeliveryPolicy for backoff multiplier")
void setBackOffMultiplier(Double multiplier);
@ManagedAttribute(description = "RedeliveryPolicy for collision avoidance factor")
Double getCollisionAvoidanceFactor();
@ManagedAttribute(description = "RedeliveryPolicy for collision avoidance factor")
void setCollisionAvoidanceFactor(Double factor);
@ManagedAttribute(description = "RedeliveryPolicy for collision avoidance percent")
Double getCollisionAvoidancePercent();
@ManagedAttribute(description = "RedeliveryPolicy for collision avoidance percent")
void setCollisionAvoidancePercent(Double percent);
@ManagedAttribute(description = "RedeliveryPolicy for delay pattern")
String getDelayPattern();
@ManagedAttribute(description = "RedeliveryPolicy for delay pattern")
void setDelayPattern(String pattern);
@ManagedAttribute(description = "RedeliveryPolicy for logging level when retries exhausted")
String getRetriesExhaustedLogLevel();
@ManagedAttribute(description = "RedeliveryPolicy for logging level when retries exhausted")
void setRetriesExhaustedLogLevel(String level);
@ManagedAttribute(description = "RedeliveryPolicy for logging level when attempting retry")
String getRetryAttemptedLogLevel();
@ManagedAttribute(description = "RedeliveryPolicy for logging level when attempting retry")
void setRetryAttemptedLogLevel(String level);
@ManagedAttribute(description = "RedeliveryPolicy for logging stack traces")
Boolean getLogStackTrace();
@ManagedAttribute(description = "RedeliveryPolicy for logging stack traces")
void setLogStackTrace(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging redelivery stack traces")
Boolean getLogRetryStackTrace();
@ManagedAttribute(description = "RedeliveryPolicy for logging redelivery stack traces")
void setLogRetryStackTrace(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging handled exceptions")
Boolean getLogHandled();
@ManagedAttribute(description = "RedeliveryPolicy for logging handled exceptions")
void setLogHandled(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging new exceptions")
Boolean getLogNewException();
@ManagedAttribute(description = "RedeliveryPolicy for logging new exceptions")
void setLogNewException(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted with message history")
Boolean getLogExhaustedMessageHistory();
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted with message history")
void setLogExhaustedMessageHistory(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted with message history")
Boolean getLogExhaustedMessageBody();
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted with message body")
void setLogExhaustedMessageBody(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging handled and continued exceptions")
Boolean getLogContinued();
@ManagedAttribute(description = "RedeliveryPolicy for logging handled and continued exceptions")
void setLogContinued(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted exceptions")
Boolean getLogExhausted();
@ManagedAttribute(description = "RedeliveryPolicy for logging exhausted exceptions")
void setLogExhausted(Boolean log);
@ManagedAttribute(description = "RedeliveryPolicy for using collision avoidance")
Boolean getUseCollisionAvoidance();
@ManagedAttribute(description = "RedeliveryPolicy for using collision avoidance")
void setUseCollisionAvoidance(Boolean avoidance);
@ManagedAttribute(description = "RedeliveryPolicy for using exponential backoff")
Boolean getUseExponentialBackOff();
@ManagedAttribute(description = "RedeliveryPolicy for using exponential backoff")
void setUseExponentialBackOff(Boolean backoff);
@ManagedAttribute(description = "RedeliveryPolicy for allow redelivery while stopping")
Boolean getAllowRedeliveryWhileStopping();
@ManagedAttribute(description = "RedeliveryPolicy for allow redelivery while stopping")
void setAllowRedeliveryWhileStopping(Boolean allow);
}