CAMEL-9482: Generate json schema model for camel-spring
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/2c6d13ae Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/2c6d13ae Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/2c6d13ae Branch: refs/heads/master Commit: 2c6d13ae67b66a485cf8182bf558b766a7b58a97 Parents: cb85dc6 Author: Claus Ibsen <[email protected]> Authored: Wed Aug 10 17:33:56 2016 +0200 Committer: Claus Ibsen <[email protected]> Committed: Wed Aug 10 19:08:13 2016 +0200 ---------------------------------------------------------------------- .../CamelConsumerTemplateFactoryBean.java | 5 +- .../CamelProducerTemplateFactoryBean.java | 3 +- .../CamelRedeliveryPolicyFactoryBean.java | 2 +- .../spring/CamelRestContextFactoryBean.java | 2 + .../spring/CamelRouteContextFactoryBean.java | 4 +- .../spring/CamelThreadPoolFactoryBean.java | 2 +- .../camel/spring/ErrorHandlerDefinition.java | 214 ++++++++++++++++++- .../apache/camel/spring/ErrorHandlerType.java | 2 +- 8 files changed, 221 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelConsumerTemplateFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelConsumerTemplateFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelConsumerTemplateFactoryBean.java index 9f6aafc..7207adf 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelConsumerTemplateFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelConsumerTemplateFactoryBean.java @@ -33,10 +33,9 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** - * A Spring {@link org.springframework.beans.factory.FactoryBean} for creating a new {@link org.apache.camel.ConsumerTemplate} - * instance with a minimum of XML + * Configures a {@link ConsumerTemplate} * - * @version + * @version */ @XmlRootElement(name = "consumerTemplate") @XmlAccessorType(XmlAccessType.FIELD) http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelProducerTemplateFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelProducerTemplateFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelProducerTemplateFactoryBean.java index a9b6251..bc5bfce 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelProducerTemplateFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelProducerTemplateFactoryBean.java @@ -33,8 +33,7 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** - * A Spring {@link FactoryBean} for creating a new {@link org.apache.camel.ProducerTemplate} - * instance with a minimum of XML + * Configures a {@link ProducerTemplate} * * @version */ http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRedeliveryPolicyFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRedeliveryPolicyFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRedeliveryPolicyFactoryBean.java index 9b4305c..17c1fe7 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRedeliveryPolicyFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRedeliveryPolicyFactoryBean.java @@ -30,7 +30,7 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** - * A {@link org.springframework.beans.factory.FactoryBean} which instantiates {@link org.apache.camel.processor.RedeliveryPolicy} objects + * Configuration of redelivery policy. * * @version */ http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRestContextFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRestContextFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRestContextFactoryBean.java index 09f183c..2458ed2 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRestContextFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRestContextFactoryBean.java @@ -28,6 +28,8 @@ import org.apache.camel.model.rest.RestDefinition; import org.springframework.beans.factory.FactoryBean; /** + * Configuration of REST services using rest-dsl using XML + * * @version */ @XmlRootElement(name = "restContext") http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRouteContextFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRouteContextFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRouteContextFactoryBean.java index 621cced..88f2cf0 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRouteContextFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelRouteContextFactoryBean.java @@ -28,7 +28,9 @@ import org.apache.camel.model.RouteDefinition; import org.springframework.beans.factory.FactoryBean; /** - * @version + * Configuration of routes using XML + * + * @version */ @XmlRootElement(name = "routeContext") @XmlAccessorType(XmlAccessType.FIELD) http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/CamelThreadPoolFactoryBean.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelThreadPoolFactoryBean.java b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelThreadPoolFactoryBean.java index b82b3f9..05b9926 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/CamelThreadPoolFactoryBean.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/CamelThreadPoolFactoryBean.java @@ -31,7 +31,7 @@ import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** - * A {@link org.springframework.beans.factory.FactoryBean} which instantiates {@link java.util.concurrent.ExecutorService} objects + * Configuration of thread pools * * @version */ http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerDefinition.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerDefinition.java b/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerDefinition.java index 80fcdb8..9c787e5 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerDefinition.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerDefinition.java @@ -24,24 +24,26 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.LoggingLevel; import org.apache.camel.model.IdentifiedType; +import org.apache.camel.processor.RedeliveryPolicy; +import org.apache.camel.spi.Metadata; /** - * The <errorHandler> tag element. + * Error handler settings * * @version */ @XmlRootElement(name = "errorHandler") @XmlAccessorType(XmlAccessType.FIELD) public class ErrorHandlerDefinition extends IdentifiedType { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "DefaultErrorHandler", required = "true") private ErrorHandlerType type = ErrorHandlerType.DefaultErrorHandler; @XmlAttribute private String deadLetterUri; @XmlAttribute private String deadLetterHandleNewException; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "ERROR") private LoggingLevel level; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "WARN") private LoggingLevel rollbackLoggingLevel; @XmlAttribute private String logName; @@ -66,4 +68,208 @@ public class ErrorHandlerDefinition extends IdentifiedType { @XmlElement private CamelRedeliveryPolicyFactoryBean redeliveryPolicy; + public ErrorHandlerType getType() { + return type; + } + + /** + * The type of the error handler + */ + public void setType(ErrorHandlerType type) { + this.type = type; + } + + public String getDeadLetterUri() { + return deadLetterUri; + } + + /** + * The dead letter endpoint uri for the Dead Letter error handler. + */ + public void setDeadLetterUri(String deadLetterUri) { + this.deadLetterUri = deadLetterUri; + } + + public String getDeadLetterHandleNewException() { + return deadLetterHandleNewException; + } + + /** + * Whether the dead letter channel should handle (and ignore) any new exception that may been thrown during sending the + * message to the dead letter endpoint. + * <p/> + * The default value is <tt>true</tt> which means any such kind of exception is handled and ignored. Set this to <tt>false</tt> + * to let the exception be propagated back on the {@link org.apache.camel.Exchange}. This can be used in situations + * where you use transactions, and want to use Camel's dead letter channel to deal with exceptions during routing, + * but if the dead letter channel itself fails because of a new exception being thrown, then by setting this to <tt>false</tt> + * the new exceptions is propagated back and set on the {@link org.apache.camel.Exchange}, which allows the transaction + * to detect the exception, and rollback. + */ + public void setDeadLetterHandleNewException(String deadLetterHandleNewException) { + this.deadLetterHandleNewException = deadLetterHandleNewException; + } + + public LoggingLevel getLevel() { + return level; + } + + /** + * Logging level to use when using the logging error handler type. + */ + public void setLevel(LoggingLevel level) { + this.level = level; + } + + public LoggingLevel getRollbackLoggingLevel() { + return rollbackLoggingLevel; + } + + /** + * Sets the logging level to use for logging transactional rollback. + * <p/> + * This option is default WARN. + */ + public void setRollbackLoggingLevel(LoggingLevel rollbackLoggingLevel) { + this.rollbackLoggingLevel = rollbackLoggingLevel; + } + + public String getLogName() { + return logName; + } + + /** + * Name of the logger to use for the logging error handler + */ + public void setLogName(String logName) { + this.logName = logName; + } + + public Boolean getUseOriginalMessage() { + return useOriginalMessage; + } + + /** + * Will use the original input message when an {@link org.apache.camel.Exchange} is moved to the dead letter queue. + * <p/> + * <b>Notice:</b> this only applies when all redeliveries attempt have failed and the {@link org.apache.camel.Exchange} is doomed for failure. + * <br/> + * Instead of using the current inprogress {@link org.apache.camel.Exchange} IN body we use the original IN body instead. This allows + * you to store the original input in the dead letter queue instead of the inprogress snapshot of the IN body. + * For instance if you route transform the IN body during routing and then failed. With the original exchange + * store in the dead letter queue it might be easier to manually re submit the {@link org.apache.camel.Exchange} again as the IN body + * is the same as when Camel received it. So you should be able to send the {@link org.apache.camel.Exchange} to the same input. + * <p/> + * By default this feature is off. + */ + public void setUseOriginalMessage(Boolean useOriginalMessage) { + this.useOriginalMessage = useOriginalMessage; + } + + public String getTransactionTemplateRef() { + return transactionTemplateRef; + } + + /** + * References to the {@link org.springframework.transaction.support.TransactionTemplate} to use with the transaction error handler. + */ + public void setTransactionTemplateRef(String transactionTemplateRef) { + this.transactionTemplateRef = transactionTemplateRef; + } + + public String getTransactionManagerRef() { + return transactionManagerRef; + } + + /** + * References to the {@link org.springframework.transaction.PlatformTransactionManager} to use with the transaction error handler. + */ + public void setTransactionManagerRef(String transactionManagerRef) { + this.transactionManagerRef = transactionManagerRef; + } + + public String getOnRedeliveryRef() { + return onRedeliveryRef; + } + + /** + * Sets a reference to a processor that should be processed <b>before</b> a redelivery attempt. + * <p/> + * Can be used to change the {@link org.apache.camel.Exchange} <b>before</b> its being redelivered. + */ + public void setOnRedeliveryRef(String onRedeliveryRef) { + this.onRedeliveryRef = onRedeliveryRef; + } + + public String getOnExceptionOccurredRef() { + return onExceptionOccurredRef; + } + + /** + * Sets a reference to a processor that should be processed <b>just after</b> an exception occurred. + * Can be used to perform custom logging about the occurred exception at the exact time it happened. + * <p/> + * Important: Any exception thrown from this processor will be ignored. + */ + public void setOnExceptionOccurredRef(String onExceptionOccurredRef) { + this.onExceptionOccurredRef = onExceptionOccurredRef; + } + + public String getOnPrepareFailureRef() { + return onPrepareFailureRef; + } + + /** + * Sets a reference to a processor to prepare the {@link org.apache.camel.Exchange} before + * handled by the failure processor / dead letter channel. This allows for example to enrich the message + * before sending to a dead letter queue. + */ + public void setOnPrepareFailureRef(String onPrepareFailureRef) { + this.onPrepareFailureRef = onPrepareFailureRef; + } + + public String getRetryWhileRef() { + return retryWhileRef; + } + + /** + * Sets a reference to an retry while expression. + * <p/> + * Will continue retrying until expression evaluates to <tt>false</tt>. + */ + public void setRetryWhileRef(String retryWhileRef) { + this.retryWhileRef = retryWhileRef; + } + + public String getRedeliveryPolicyRef() { + return redeliveryPolicyRef; + } + + /** + * Sets a reference to a {@link RedeliveryPolicy} to be used for redelivery settings. + */ + public void setRedeliveryPolicyRef(String redeliveryPolicyRef) { + this.redeliveryPolicyRef = redeliveryPolicyRef; + } + + public String getExecutorServiceRef() { + return executorServiceRef; + } + + /** + * Sets a reference to a thread pool to be used by the error handler + */ + public void setExecutorServiceRef(String executorServiceRef) { + this.executorServiceRef = executorServiceRef; + } + + public CamelRedeliveryPolicyFactoryBean getRedeliveryPolicy() { + return redeliveryPolicy; + } + + /** + * Sets the redelivery settings + */ + public void setRedeliveryPolicy(CamelRedeliveryPolicyFactoryBean redeliveryPolicy) { + this.redeliveryPolicy = redeliveryPolicy; + } } http://git-wip-us.apache.org/repos/asf/camel/blob/2c6d13ae/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerType.java ---------------------------------------------------------------------- diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerType.java b/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerType.java index cd34fc7..9f58a50 100644 --- a/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerType.java +++ b/components/camel-spring/src/main/java/org/apache/camel/spring/ErrorHandlerType.java @@ -26,7 +26,7 @@ import org.apache.camel.builder.NoErrorHandlerBuilder; import org.apache.camel.spring.spi.TransactionErrorHandlerBuilder; /** - * Used to configure the errorHandler type + * Used to configure the error handler type * * @version */
