Repository: camel Updated Branches: refs/heads/master 9ceec2ba6 -> c0d374298
CAMEL-8195: Add javadoc to model classes so we have EIP documentation out of the box Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/c0d37429 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c0d37429 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c0d37429 Branch: refs/heads/master Commit: c0d3742984eba7088a0166a9e2389e3a06ed3277 Parents: 9ceec2b Author: Claus Ibsen <davscl...@apache.org> Authored: Tue Jan 20 16:53:36 2015 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Tue Jan 20 17:00:50 2015 +0100 ---------------------------------------------------------------------- .../org/apache/camel/model/DelayDefinition.java | 5 ++- .../camel/model/DynamicRouterDefinition.java | 4 +- .../model/IdempotentConsumerDefinition.java | 3 +- .../org/apache/camel/model/LogDefinition.java | 3 +- .../apache/camel/model/MulticastDefinition.java | 3 +- .../camel/model/OnCompletionDefinition.java | 3 +- .../OptimisticLockRetryPolicyDefinition.java | 7 +-- .../camel/model/PollEnrichDefinition.java | 3 +- .../camel/model/RecipientListDefinition.java | 3 +- .../org/apache/camel/model/RouteDefinition.java | 9 ++-- .../camel/model/RoutingSlipDefinition.java | 3 +- .../apache/camel/model/SamplingDefinition.java | 5 ++- .../org/apache/camel/model/SplitDefinition.java | 3 +- .../apache/camel/model/ThreadsDefinition.java | 5 ++- .../apache/camel/model/ThrottleDefinition.java | 5 ++- .../apache/camel/model/WireTapDefinition.java | 3 +- .../model/config/BatchResequencerConfig.java | 5 ++- .../model/config/StreamResequencerConfig.java | 5 ++- .../model/dataformat/Base64DataFormat.java | 5 ++- .../model/dataformat/CastorDataFormat.java | 3 +- .../model/dataformat/CryptoDataFormat.java | 5 ++- .../model/dataformat/FlatpackDataFormat.java | 7 +-- .../camel/model/dataformat/HL7DataFormat.java | 3 +- .../camel/model/dataformat/JsonDataFormat.java | 3 +- .../camel/model/dataformat/PGPDataFormat.java | 3 +- .../model/dataformat/SoapJaxbDataFormat.java | 3 +- .../dataformat/UniVocityAbstractDataFormat.java | 11 ++--- .../dataformat/UniVocityCsvDataFormat.java | 7 +-- .../UniVocityFixedWidthDataFormat.java | 3 +- .../dataformat/UniVocityTsvDataFormat.java | 3 +- .../model/dataformat/XMLSecurityDataFormat.java | 11 ++--- .../camel/model/dataformat/ZipDataFormat.java | 5 ++- .../FailoverLoadBalancerDefinition.java | 3 +- .../WeightedLoadBalancerDefinition.java | 3 +- .../camel/model/rest/RestBindingDefinition.java | 3 +- .../model/rest/RestConfigurationDefinition.java | 3 +- .../apache/camel/model/rest/RestDefinition.java | 3 +- .../apache/camel/model/rest/VerbDefinition.java | 3 +- .../camel/tools/apt/EipAnnotationProcessor.java | 46 +++++++++++++++---- .../main/java/org/apache/camel/spi/Label.java | 3 ++ .../java/org/apache/camel/spi/Metadata.java | 47 ++++++++++++++++++++ 41 files changed, 188 insertions(+), 75 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/DelayDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/DelayDefinition.java b/camel-core/src/main/java/org/apache/camel/model/DelayDefinition.java index 75d48e9..207c1eb 100644 --- a/camel-core/src/main/java/org/apache/camel/model/DelayDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/DelayDefinition.java @@ -31,6 +31,7 @@ import org.apache.camel.builder.ExpressionBuilder; import org.apache.camel.model.language.ExpressionDefinition; import org.apache.camel.processor.Delayer; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -49,9 +50,9 @@ public class DelayDefinition extends ExpressionNode implements ExecutorServiceAw private ExecutorService executorService; @XmlAttribute private String executorServiceRef; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "false") private Boolean asyncDelayed; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean callerRunsWhenRejected; public DelayDefinition() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java b/camel-core/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java index 42ec54f..855e077 100644 --- a/camel-core/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/DynamicRouterDefinition.java @@ -18,7 +18,6 @@ package org.apache.camel.model; import java.util.Collections; import java.util.List; - import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; @@ -28,6 +27,7 @@ import org.apache.camel.Expression; import org.apache.camel.Processor; import org.apache.camel.processor.DynamicRouter; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -40,7 +40,7 @@ public class DynamicRouterDefinition<Type extends ProcessorDefinition<Type>> ext public static final String DEFAULT_DELIMITER = ","; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = ",") private String uriDelimiter; @XmlAttribute private Boolean ignoreInvalidEndpoints; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/IdempotentConsumerDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/IdempotentConsumerDefinition.java b/camel-core/src/main/java/org/apache/camel/model/IdempotentConsumerDefinition.java index d8d3a91..ea39835 100644 --- a/camel-core/src/main/java/org/apache/camel/model/IdempotentConsumerDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/IdempotentConsumerDefinition.java @@ -37,7 +37,7 @@ import org.apache.camel.util.ObjectHelper; @XmlRootElement(name = "idempotentConsumer") @XmlAccessorType(XmlAccessType.FIELD) public class IdempotentConsumerDefinition extends ExpressionNode { - @XmlAttribute + @XmlAttribute(required = true) private String messageIdRepositoryRef; @XmlAttribute private Boolean eager; @@ -189,7 +189,6 @@ public class IdempotentConsumerDefinition extends ExpressionNode { return removeOnFailure != null ? removeOnFailure : true; } - @Override @SuppressWarnings("unchecked") public Processor createProcessor(RouteContext routeContext) throws Exception { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/LogDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/LogDefinition.java b/camel-core/src/main/java/org/apache/camel/model/LogDefinition.java index f84fe5b..43de2d4 100644 --- a/camel-core/src/main/java/org/apache/camel/model/LogDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/LogDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.LoggingLevel; import org.apache.camel.Processor; import org.apache.camel.processor.LogProcessor; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; import org.apache.camel.util.CamelLogger; @@ -49,7 +50,7 @@ public class LogDefinition extends NoOutputDefinition<LogDefinition> { private static final Logger LOG = LoggerFactory.getLogger(LogDefinition.class); @XmlAttribute(required = true) private String message; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "INFO") private LoggingLevel loggingLevel; @XmlAttribute private String logName; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java b/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java index dcf6a88..4eb5fb7 100644 --- a/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/MulticastDefinition.java @@ -34,6 +34,7 @@ import org.apache.camel.processor.aggregate.AggregationStrategy; import org.apache.camel.processor.aggregate.AggregationStrategyBeanAdapter; import org.apache.camel.processor.aggregate.UseLatestAggregationStrategy; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; @@ -62,7 +63,7 @@ public class MulticastDefinition extends OutputDefinition<MulticastDefinition> i private Boolean streaming; @XmlAttribute private Boolean stopOnException; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "0") private Long timeout; @XmlTransient private AggregationStrategy aggregationStrategy; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java b/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java index 019dbd6..07cd838 100644 --- a/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/OnCompletionDefinition.java @@ -37,6 +37,7 @@ import org.apache.camel.Processor; import org.apache.camel.processor.CamelInternalProcessor; import org.apache.camel.processor.OnCompletionProcessor; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -48,7 +49,7 @@ import org.apache.camel.spi.RouteContext; @XmlRootElement(name = "onCompletion") @XmlAccessorType(XmlAccessType.FIELD) public class OnCompletionDefinition extends ProcessorDefinition<OnCompletionDefinition> implements ExecutorServiceAwareDefinition<OnCompletionDefinition> { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "AfterConsumer") private OnCompletionMode mode; @XmlAttribute private Boolean onCompleteOnly; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/OptimisticLockRetryPolicyDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/OptimisticLockRetryPolicyDefinition.java b/camel-core/src/main/java/org/apache/camel/model/OptimisticLockRetryPolicyDefinition.java index 15584d7..5478eec 100644 --- a/camel-core/src/main/java/org/apache/camel/model/OptimisticLockRetryPolicyDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/OptimisticLockRetryPolicyDefinition.java @@ -23,6 +23,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.processor.aggregate.OptimisticLockRetryPolicy; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * To configure optimistic locking @@ -35,11 +36,11 @@ import org.apache.camel.spi.Label; public class OptimisticLockRetryPolicyDefinition { @XmlAttribute private Integer maximumRetries; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "50") private Long retryDelay; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1000") private Long maximumRetryDelay; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean exponentialBackOff; @XmlAttribute private Boolean randomBackOff; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/PollEnrichDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/PollEnrichDefinition.java b/camel-core/src/main/java/org/apache/camel/model/PollEnrichDefinition.java index 46f39f2..6467ba8 100644 --- a/camel-core/src/main/java/org/apache/camel/model/PollEnrichDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/PollEnrichDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.processor.PollEnricher; import org.apache.camel.processor.aggregate.AggregationStrategy; import org.apache.camel.processor.aggregate.AggregationStrategyBeanAdapter; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.ObjectHelper; @@ -46,7 +47,7 @@ public class PollEnrichDefinition extends NoOutputDefinition<PollEnrichDefinitio // TODO: For Camel 3.0 we should remove this ref attribute as you can do that in the uri, by prefixing with ref: @XmlAttribute(name = "ref") private String resourceRef; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "-1") private Long timeout; @XmlAttribute(name = "strategyRef") private String aggregationStrategyRef; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/RecipientListDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/RecipientListDefinition.java b/camel-core/src/main/java/org/apache/camel/model/RecipientListDefinition.java index 0117795..e3da36d 100644 --- a/camel-core/src/main/java/org/apache/camel/model/RecipientListDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/RecipientListDefinition.java @@ -36,6 +36,7 @@ import org.apache.camel.processor.aggregate.AggregationStrategy; import org.apache.camel.processor.aggregate.AggregationStrategyBeanAdapter; import org.apache.camel.processor.aggregate.UseLatestAggregationStrategy; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; @@ -70,7 +71,7 @@ public class RecipientListDefinition<Type extends ProcessorDefinition<Type>> ext private Boolean ignoreInvalidEndpoints; @XmlAttribute private Boolean streaming; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "0") private Long timeout; @XmlAttribute private String onPrepareRef; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java b/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java index b08c62a..f39bcea 100644 --- a/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/RouteDefinition.java @@ -49,6 +49,7 @@ import org.apache.camel.model.rest.RestDefinition; import org.apache.camel.processor.interceptor.HandleFault; import org.apache.camel.spi.Label; import org.apache.camel.spi.LifecycleStrategy; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.spi.RoutePolicy; import org.apache.camel.spi.RoutePolicyFactory; @@ -672,7 +673,7 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> { /** * Whether message history is enabled on this route. */ - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") public void setMessageHistory(String messageHistory) { this.messageHistory = messageHistory; } @@ -726,7 +727,7 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> { /** * Whether to auto start this route */ - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") public void setAutoStartup(String autoStartup) { this.autoStartup = autoStartup; } @@ -806,7 +807,7 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> { /** * To control how to shutdown the route. */ - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "Default") public void setShutdownRoute(ShutdownRoute shutdownRoute) { this.shutdownRoute = shutdownRoute; } @@ -821,7 +822,7 @@ public class RouteDefinition extends ProcessorDefinition<RouteDefinition> { /** * To control how to shutdown the route. */ - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "CompleteCurrentTaskOnly") public void setShutdownRunningTask(ShutdownRunningTask shutdownRunningTask) { this.shutdownRunningTask = shutdownRunningTask; } http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/RoutingSlipDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/RoutingSlipDefinition.java b/camel-core/src/main/java/org/apache/camel/model/RoutingSlipDefinition.java index f77ab10..5161cca 100644 --- a/camel-core/src/main/java/org/apache/camel/model/RoutingSlipDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/RoutingSlipDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.Processor; import org.apache.camel.model.language.HeaderExpression; import org.apache.camel.processor.RoutingSlip; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -40,7 +41,7 @@ import org.apache.camel.spi.RouteContext; public class RoutingSlipDefinition<Type extends ProcessorDefinition<Type>> extends NoOutputExpressionNode { public static final String DEFAULT_DELIMITER = ","; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = ",") private String uriDelimiter; @XmlAttribute private Boolean ignoreInvalidEndpoints; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java b/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java index 4daafcd..fb8fa07 100644 --- a/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/SamplingDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.Processor; import org.apache.camel.builder.xml.TimeUnitAdapter; import org.apache.camel.processor.SamplingThrottler; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -45,12 +46,12 @@ public class SamplingDefinition extends OutputDefinition<SamplingDefinition> { // TODO: Camel 3.0 Should extend NoOutputDefinition - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1") private Long samplePeriod; @XmlAttribute private Long messageFrequency; @XmlAttribute - @XmlJavaTypeAdapter(TimeUnitAdapter.class) + @XmlJavaTypeAdapter(TimeUnitAdapter.class) @Metadata(defaultValue = "SECONDS") private TimeUnit units; public SamplingDefinition() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java b/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java index f718512..e519f1e 100644 --- a/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/SplitDefinition.java @@ -32,6 +32,7 @@ import org.apache.camel.processor.Splitter; import org.apache.camel.processor.aggregate.AggregationStrategy; import org.apache.camel.processor.aggregate.AggregationStrategyBeanAdapter; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; @@ -62,7 +63,7 @@ public class SplitDefinition extends ExpressionNode implements ExecutorServiceAw private Boolean streaming; @XmlAttribute private Boolean stopOnException; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "0") private Long timeout; @XmlAttribute private String onPrepareRef; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java index 6eedc64..a4e9e5d 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ThreadsDefinition.java @@ -36,6 +36,7 @@ import org.apache.camel.processor.Pipeline; import org.apache.camel.processor.ThreadsProcessor; import org.apache.camel.spi.ExecutorServiceManager; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.spi.ThreadPoolProfile; @@ -68,11 +69,11 @@ public class ThreadsDefinition extends OutputDefinition<ThreadsDefinition> imple private Integer maxQueueSize; @XmlAttribute private Boolean allowCoreThreadTimeOut; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "Threads") private String threadName; @XmlAttribute private ThreadPoolRejectedPolicy rejectedPolicy; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean callerRunsWhenRejected; public ThreadsDefinition() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java index e4fb2c6..05f4d89 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ThrottleDefinition.java @@ -30,6 +30,7 @@ import org.apache.camel.Processor; import org.apache.camel.builder.ExpressionBuilder; import org.apache.camel.processor.Throttler; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.ObjectHelper; @@ -48,11 +49,11 @@ public class ThrottleDefinition extends ExpressionNode implements ExecutorServic private ExecutorService executorService; @XmlAttribute private String executorServiceRef; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1000") private Long timePeriodMillis; @XmlAttribute private Boolean asyncDelayed; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean callerRunsWhenRejected; @XmlAttribute private Boolean rejectExecution; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java index b6892c6..90d286f 100644 --- a/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/WireTapDefinition.java @@ -35,6 +35,7 @@ import org.apache.camel.Producer; import org.apache.camel.processor.CamelInternalProcessor; import org.apache.camel.processor.WireTapProcessor; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; @@ -64,7 +65,7 @@ public class WireTapDefinition<Type extends ProcessorDefinition<Type>> extends N private ExecutorService executorService; @XmlAttribute private String executorServiceRef; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean copy; @XmlAttribute private String onPrepareRef; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java b/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java index 3c65d3e..10526ff 100644 --- a/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java +++ b/camel-core/src/main/java/org/apache/camel/model/config/BatchResequencerConfig.java @@ -22,6 +22,7 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Configures batch-processing resequence eip. @@ -30,9 +31,9 @@ import org.apache.camel.spi.Label; @XmlRootElement(name = "batch-config") @XmlAccessorType(XmlAccessType.FIELD) public class BatchResequencerConfig extends ResequencerConfig { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "100") private Integer batchSize; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1000") private Long batchTimeout; @XmlAttribute private Boolean allowDuplicates; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/config/StreamResequencerConfig.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/config/StreamResequencerConfig.java b/camel-core/src/main/java/org/apache/camel/model/config/StreamResequencerConfig.java index 8fac5c7..df01ce8 100644 --- a/camel-core/src/main/java/org/apache/camel/model/config/StreamResequencerConfig.java +++ b/camel-core/src/main/java/org/apache/camel/model/config/StreamResequencerConfig.java @@ -25,6 +25,7 @@ import javax.xml.bind.annotation.XmlTransient; import org.apache.camel.processor.resequencer.DefaultExchangeComparator; import org.apache.camel.processor.resequencer.ExpressionResultComparator; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Configures stream-processing resequence eip. @@ -33,9 +34,9 @@ import org.apache.camel.spi.Label; @XmlRootElement(name = "stream-config") @XmlAccessorType(XmlAccessType.FIELD) public class StreamResequencerConfig extends ResequencerConfig { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "100") private Integer capacity; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1000") private Long timeout; @XmlAttribute private Boolean ignoreInvalidExchanges; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/Base64DataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/Base64DataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/Base64DataFormat.java index f3f5e71..1f56442 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/Base64DataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/Base64DataFormat.java @@ -25,6 +25,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Base64 data format @@ -36,9 +37,9 @@ import org.apache.camel.spi.Label; @XmlAccessorType(XmlAccessType.FIELD) public class Base64DataFormat extends DataFormatDefinition { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "76") private Integer lineLength; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\r\n") private String lineSeparator; @XmlAttribute private Boolean urlSafe; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java index 0d03e36..0460d92 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/CastorDataFormat.java @@ -25,6 +25,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Castor data format @@ -39,7 +40,7 @@ public class CastorDataFormat extends DataFormatDefinition { private String mappingFile; @XmlAttribute private Boolean validation; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "UTF-8") private String encoding; @XmlAttribute private String[] packages; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/CryptoDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/CryptoDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/CryptoDataFormat.java index 327da9a..d00130b 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/CryptoDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/CryptoDataFormat.java @@ -27,6 +27,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; import org.apache.camel.util.ObjectHelper; @@ -40,7 +41,7 @@ import org.apache.camel.util.ObjectHelper; @XmlRootElement(name = "crypto") @XmlAccessorType(XmlAccessType.FIELD) public class CryptoDataFormat extends DataFormatDefinition { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "DES/CBC/PKCS5Padding") private String algorithm; @XmlAttribute private String cryptoProvider; @@ -52,7 +53,7 @@ public class CryptoDataFormat extends DataFormatDefinition { private String algorithmParameterRef; @XmlAttribute private Integer buffersize; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "HmacSHA1") private String macAlgorithm = "HmacSHA1"; @XmlAttribute private Boolean shouldAppendHMAC; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/FlatpackDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/FlatpackDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/FlatpackDataFormat.java index fa1c3f3..3d2d4c4 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/FlatpackDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/FlatpackDataFormat.java @@ -25,6 +25,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.CamelContextHelper; import org.apache.camel.util.ObjectHelper; @@ -42,11 +43,11 @@ public class FlatpackDataFormat extends DataFormatDefinition { private String definition; @XmlAttribute private Boolean fixed; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean ignoreFirstRecord; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\"") private String textQualifier; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = ",") private String delimiter; @XmlAttribute private Boolean allowShortLines; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java index 5e43f92..3ac4c82 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/HL7DataFormat.java @@ -26,6 +26,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * HL7 data format @@ -36,7 +37,7 @@ import org.apache.camel.spi.Label; @XmlRootElement(name = "hl7") @XmlAccessorType(XmlAccessType.FIELD) public class HL7DataFormat extends DataFormatDefinition { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean validate; @XmlTransient private Object parser; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java index 6b9dd6d..7da7622 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/JsonDataFormat.java @@ -26,6 +26,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.ObjectHelper; @@ -40,7 +41,7 @@ import org.apache.camel.util.ObjectHelper; public class JsonDataFormat extends DataFormatDefinition { @XmlAttribute private Boolean prettyPrint; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "XStream") private JsonLibrary library = JsonLibrary.XStream; @XmlAttribute private String unmarshalTypeName; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/PGPDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/PGPDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/PGPDataFormat.java index 955ad8f..e9f257b 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/PGPDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/PGPDataFormat.java @@ -25,6 +25,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * PGP data format @@ -49,7 +50,7 @@ public class PGPDataFormat extends DataFormatDefinition { private String signatureKeyRing; @XmlAttribute private Boolean armored; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean integrity; @XmlAttribute private String provider; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/SoapJaxbDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/SoapJaxbDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/SoapJaxbDataFormat.java index 79c9b83..e0cb3a7 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/SoapJaxbDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/SoapJaxbDataFormat.java @@ -26,6 +26,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * SOAP data format @@ -42,7 +43,7 @@ public class SoapJaxbDataFormat extends DataFormatDefinition { private String elementNameStrategyRef; @XmlTransient private Object elementNameStrategy; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "1.1") private String version; @XmlAttribute private String namespacePrefixRef; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityAbstractDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityAbstractDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityAbstractDataFormat.java index 4529dbb..0ada7ab 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityAbstractDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityAbstractDataFormat.java @@ -28,6 +28,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Represents the common parts of all uniVocity {@link org.apache.camel.spi.DataFormat} parsers. @@ -38,11 +39,11 @@ public abstract class UniVocityAbstractDataFormat extends DataFormatDefinition { @XmlAttribute protected String nullValue; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") protected Boolean skipEmptyLines; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") protected Boolean ignoreTrailingWhitespaces; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") protected Boolean ignoreLeadingWhitespaces; @XmlAttribute protected Boolean headersDisabled; @@ -56,9 +57,9 @@ public abstract class UniVocityAbstractDataFormat extends DataFormatDefinition { protected String emptyValue; @XmlAttribute protected String lineSeparator; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\n") protected String normalizedLineSeparator; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "#") protected String comment; @XmlAttribute protected Boolean lazyLoad; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityCsvDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityCsvDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityCsvDataFormat.java index 282b767..0474808 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityCsvDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityCsvDataFormat.java @@ -24,6 +24,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.CamelContext; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * UniVocity CSV data format @@ -34,11 +35,11 @@ import org.apache.camel.spi.Label; public class UniVocityCsvDataFormat extends UniVocityAbstractDataFormat { @XmlAttribute protected Boolean quoteAllFields; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\"") protected String quote; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\"") protected String quoteEscape; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = ",") protected String delimiter; public UniVocityCsvDataFormat() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityFixedWidthDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityFixedWidthDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityFixedWidthDataFormat.java index 86b7e8f..dbb0967 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityFixedWidthDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityFixedWidthDataFormat.java @@ -24,6 +24,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.CamelContext; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * UniVocity fixed-width data format @@ -36,7 +37,7 @@ public class UniVocityFixedWidthDataFormat extends UniVocityAbstractDataFormat { protected Boolean skipTrailingCharsUntilNewline; @XmlAttribute protected Boolean recordEndsOnNewline; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = " ") protected String padding; public UniVocityFixedWidthDataFormat() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityTsvDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityTsvDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityTsvDataFormat.java index 88852b7..bd70593 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityTsvDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/UniVocityTsvDataFormat.java @@ -24,6 +24,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.CamelContext; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * UniVocity TSV data format @@ -32,7 +33,7 @@ import org.apache.camel.spi.Label; @XmlRootElement(name = "univocity-tsv") @XmlAccessorType(XmlAccessType.FIELD) public class UniVocityTsvDataFormat extends UniVocityAbstractDataFormat { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "\\") protected String escapeChar; public UniVocityTsvDataFormat() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/XMLSecurityDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/XMLSecurityDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/XMLSecurityDataFormat.java index 7217c0d..cd49c99 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/XMLSecurityDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/XMLSecurityDataFormat.java @@ -28,6 +28,7 @@ import org.apache.camel.CamelContext; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.NamespaceAware; import org.apache.camel.util.jsse.KeyStoreParameters; @@ -41,7 +42,7 @@ public class XMLSecurityDataFormat extends DataFormatDefinition implements Names private static final String TRIPLEDES = "http://www.w3.org/2001/04/xmlenc#tripledes-cbc"; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "TRIPLEDES") private String xmlCipherAlgorithm; @XmlAttribute private String passPhrase; @@ -49,7 +50,7 @@ public class XMLSecurityDataFormat extends DataFormatDefinition implements Names private String secureTag; @XmlAttribute private Boolean secureTagContents; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "RSA_OAEP") private String keyCipherAlgorithm; @XmlAttribute private String recipientKeyAlias; @@ -58,11 +59,11 @@ public class XMLSecurityDataFormat extends DataFormatDefinition implements Names private String keyOrTrustStoreParametersId; @XmlAttribute private String keyPassword; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "SHA1") private String digestAlgorithm; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "MGF1_SHA1") private String mgfAlgorithm; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "true") private Boolean addKeyValueForEncryptedKey; @XmlTransient private KeyStoreParameters keyOrTrustStoreParameters; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipDataFormat.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipDataFormat.java b/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipDataFormat.java index 39f9cf7..1795c3f 100644 --- a/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipDataFormat.java +++ b/camel-core/src/main/java/org/apache/camel/model/dataformat/ZipDataFormat.java @@ -25,6 +25,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -34,7 +35,7 @@ import org.apache.camel.spi.RouteContext; @XmlRootElement(name = "zip") @XmlAccessorType(XmlAccessType.FIELD) public class ZipDataFormat extends DataFormatDefinition { - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "-1") private Integer compressionLevel; public ZipDataFormat() { @@ -60,7 +61,7 @@ public class ZipDataFormat extends DataFormatDefinition { /** * To specify a specific compression between 0-9. - * 0 is no compression, and 9 is best compression. + * -1 is default compression, 0 is no compression, and 9 is best compression. */ public void setCompressionLevel(Integer compressionLevel) { this.compressionLevel = compressionLevel; http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java b/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java index c091980..f0fd211 100644 --- a/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/loadbalancer/FailoverLoadBalancerDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.model.LoadBalancerDefinition; import org.apache.camel.processor.loadbalancer.FailOverLoadBalancer; import org.apache.camel.processor.loadbalancer.LoadBalancer; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; /** @@ -47,7 +48,7 @@ public class FailoverLoadBalancerDefinition extends LoadBalancerDefinition { private List<String> exceptions = new ArrayList<String>(); @XmlAttribute private Boolean roundRobin; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "-1") private Integer maximumFailoverAttempts; public FailoverLoadBalancerDefinition() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java b/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java index ce603b3..60b45c8 100644 --- a/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/loadbalancer/WeightedLoadBalancerDefinition.java @@ -29,6 +29,7 @@ import org.apache.camel.processor.loadbalancer.WeightedLoadBalancer; import org.apache.camel.processor.loadbalancer.WeightedRandomLoadBalancer; import org.apache.camel.processor.loadbalancer.WeightedRoundRobinLoadBalancer; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.ObjectHelper; @@ -47,7 +48,7 @@ public class WeightedLoadBalancerDefinition extends LoadBalancerDefinition { private Boolean roundRobin; @XmlAttribute(required = true) private String distributionRatio; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = ",") private String distributionRatioDelimiter; public WeightedLoadBalancerDefinition() { http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/rest/RestBindingDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/rest/RestBindingDefinition.java b/camel-core/src/main/java/org/apache/camel/model/rest/RestBindingDefinition.java index d7d7759..e094a96 100644 --- a/camel-core/src/main/java/org/apache/camel/model/rest/RestBindingDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/rest/RestBindingDefinition.java @@ -30,6 +30,7 @@ import org.apache.camel.model.NoOutputDefinition; import org.apache.camel.processor.binding.RestBindingProcessor; import org.apache.camel.spi.DataFormat; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RouteContext; import org.apache.camel.util.IntrospectionSupport; @@ -47,7 +48,7 @@ public class RestBindingDefinition extends NoOutputDefinition<RestBindingDefinit @XmlAttribute private String produces; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "auto") private RestBindingMode bindingMode; @XmlAttribute http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/rest/RestConfigurationDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/rest/RestConfigurationDefinition.java b/camel-core/src/main/java/org/apache/camel/model/rest/RestConfigurationDefinition.java index 25e6cfd..4365a0c 100644 --- a/camel-core/src/main/java/org/apache/camel/model/rest/RestConfigurationDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/rest/RestConfigurationDefinition.java @@ -28,6 +28,7 @@ import javax.xml.bind.annotation.XmlRootElement; import org.apache.camel.CamelContext; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.spi.RestConfiguration; import org.apache.camel.util.CamelContextHelper; @@ -57,7 +58,7 @@ public class RestConfigurationDefinition { @XmlAttribute private RestHostNameResolver hostNameResolver; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "auto") private RestBindingMode bindingMode; @XmlAttribute http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/rest/RestDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/rest/RestDefinition.java b/camel-core/src/main/java/org/apache/camel/model/rest/RestDefinition.java index 78bdff0..d7c6f0d 100644 --- a/camel-core/src/main/java/org/apache/camel/model/rest/RestDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/rest/RestDefinition.java @@ -32,6 +32,7 @@ import org.apache.camel.model.OptionalIdentifiedDefinition; import org.apache.camel.model.RouteDefinition; import org.apache.camel.model.ToDefinition; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import org.apache.camel.util.ObjectHelper; import org.apache.camel.util.URISupport; @@ -52,7 +53,7 @@ public class RestDefinition extends OptionalIdentifiedDefinition<RestDefinition> @XmlAttribute private String produces; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "auto") private RestBindingMode bindingMode; @XmlAttribute http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/camel-core/src/main/java/org/apache/camel/model/rest/VerbDefinition.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/rest/VerbDefinition.java b/camel-core/src/main/java/org/apache/camel/model/rest/VerbDefinition.java index e8686ff..6a1b3a5 100644 --- a/camel-core/src/main/java/org/apache/camel/model/rest/VerbDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/rest/VerbDefinition.java @@ -28,6 +28,7 @@ import org.apache.camel.model.OptionalIdentifiedDefinition; import org.apache.camel.model.RouteDefinition; import org.apache.camel.model.ToDefinition; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; /** * Rest command @@ -49,7 +50,7 @@ public class VerbDefinition extends OptionalIdentifiedDefinition<VerbDefinition> @XmlAttribute private String produces; - @XmlAttribute + @XmlAttribute @Metadata(defaultValue = "auto") private RestBindingMode bindingMode; @XmlAttribute http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java ---------------------------------------------------------------------- diff --git a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java index 85ac180..755fa05 100644 --- a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java +++ b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EipAnnotationProcessor.java @@ -41,14 +41,13 @@ import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; import org.apache.camel.spi.Label; +import org.apache.camel.spi.Metadata; import static org.apache.camel.tools.apt.JsonSchemaHelper.sanitizeDescription; import static org.apache.camel.tools.apt.Strings.canonicalClassName; import static org.apache.camel.tools.apt.Strings.isNullOrEmpty; import static org.apache.camel.tools.apt.Strings.safeNull; -// TODO: figure out a way to specify default value in the model classes which this APT can read - /** * Process all camel-core's model classes (EIPs and DSL) and generate json schema documentation */ @@ -191,6 +190,13 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { model.setLabel(label.value()); } + Metadata metadata = classElement.getAnnotation(Metadata.class); + if (metadata != null) { + if (!Strings.isNullOrEmpty(metadata.label())) { + model.setLabel(metadata.label()); + } + } + // favor to use class javadoc of component as description if (model.getJavaType() != null) { Elements elementUtils = processingEnv.getElementUtils(); @@ -294,6 +300,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { String fieldTypeName = fieldType.toString(); TypeElement fieldTypeElement = findTypeElement(roundEnv, fieldTypeName); + String defaultValue = findDefaultValue(fieldElement, fieldTypeName); String docComment = findJavaDoc(elementUtils, fieldElement, fieldName, name, classElement, true); boolean required = attribute.required(); @@ -314,7 +321,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { boolean deprecated = fieldElement.getAnnotation(Deprecated.class) != null; - EipOption ep = new EipOption(name, "attribute", fieldTypeName, required, "", docComment, deprecated, isEnum, enums, false, null); + EipOption ep = new EipOption(name, "attribute", fieldTypeName, required, defaultValue, docComment, deprecated, isEnum, enums, false, null); eipOptions.add(ep); return false; @@ -327,6 +334,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { String fieldName; fieldName = fieldElement.getSimpleName().toString(); if (element != null) { + String kind = "element"; String name = element.name(); if (isNullOrEmpty(name) || "##default".equals(name)) { @@ -337,6 +345,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { String fieldTypeName = fieldType.toString(); TypeElement fieldTypeElement = findTypeElement(roundEnv, fieldTypeName); + String defaultValue = findDefaultValue(fieldElement, fieldTypeName); String docComment = findJavaDoc(elementUtils, fieldElement, fieldName, name, classElement, true); boolean required = element.required(); @@ -377,7 +386,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { boolean deprecated = fieldElement.getAnnotation(Deprecated.class) != null; - EipOption ep = new EipOption(name, kind, fieldTypeName, required, "", docComment, deprecated, isEnum, enums, isOneOf, oneOfTypes); + EipOption ep = new EipOption(name, kind, fieldTypeName, required, defaultValue, docComment, deprecated, isEnum, enums, isOneOf, oneOfTypes); eipOptions.add(ep); } } @@ -396,6 +405,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { TypeMirror fieldType = fieldElement.asType(); String fieldTypeName = fieldType.toString(); + String defaultValue = findDefaultValue(fieldElement, fieldTypeName); String docComment = findJavaDoc(elementUtils, fieldElement, fieldName, name, classElement, true); boolean required = true; @@ -406,7 +416,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { oneOfTypes.add(child); } - EipOption ep = new EipOption(name, kind, fieldTypeName, required, "", docComment, false, false, null, true, oneOfTypes); + EipOption ep = new EipOption(name, kind, fieldTypeName, required, defaultValue, docComment, false, false, null, true, oneOfTypes); eipOptions.add(ep); } } @@ -433,7 +443,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { // trace docComment = findJavaDoc(elementUtils, null, "messageHistory", null, classElement, true); - ep = new EipOption("messageHistory", "attribute", "java.lang.String", false, "", docComment, false, false, null, false, null); + ep = new EipOption("messageHistory", "attribute", "java.lang.String", false, "true", docComment, false, false, null, false, null); eipOptions.add(ep); // trace @@ -448,7 +458,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { // autoStartup docComment = findJavaDoc(elementUtils, null, "autoStartup", null, classElement, true); - ep = new EipOption("autoStartup", "attribute", "java.lang.String", false, "", docComment, false, false, null, false, null); + ep = new EipOption("autoStartup", "attribute", "java.lang.String", false, "true", docComment, false, false, null, false, null); eipOptions.add(ep); // startupOrder @@ -470,7 +480,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { Set<String> enums = new LinkedHashSet<String>(); enums.add("Default"); enums.add("Defer"); - docComment = findJavaDoc(elementUtils, null, "shutdownRoute", null, classElement, true); + docComment = findJavaDoc(elementUtils, null, "shutdownRoute", "Default", classElement, true); ep = new EipOption("shutdownRoute", "attribute", "org.apache.camel.ShutdownRoute", false, "", docComment, false, true, enums, false, null); eipOptions.add(ep); @@ -478,7 +488,7 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { enums = new LinkedHashSet<String>(); enums.add("CompleteCurrentTaskOnly"); enums.add("CompleteAllTasks"); - docComment = findJavaDoc(elementUtils, null, "shutdownRunningTask", null, classElement, true); + docComment = findJavaDoc(elementUtils, null, "shutdownRunningTask", "CompleteCurrentTaskOnly", classElement, true); ep = new EipOption("shutdownRunningTask", "attribute", "org.apache.camel.ShutdownRunningTask", false, "", docComment, false, true, enums, false, null); eipOptions.add(ep); @@ -631,6 +641,24 @@ public class EipAnnotationProcessor extends AbstractAnnotationProcessor { return !"org.apache.camel.model.NoOutputExpressionNode".equals(superclass); } + protected String findDefaultValue(VariableElement fieldElement, String fieldTypeName) { + String defaultValue = null; + Metadata metadata = fieldElement.getAnnotation(Metadata.class); + if (metadata != null) { + if (!Strings.isNullOrEmpty(metadata.defaultValue())) { + defaultValue = metadata.defaultValue(); + } + } + if (defaultValue == null) { + // if its a boolean type, then we use false as the default + if ("boolean".equals(fieldTypeName) || "java.lang.Boolean".equals(fieldTypeName)) { + defaultValue = "false"; + } + } + + return defaultValue; + } + /** * Capitializes the name as a title * http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Label.java ---------------------------------------------------------------------- diff --git a/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Label.java b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Label.java index 3fd3578..607305d 100644 --- a/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Label.java +++ b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Label.java @@ -26,10 +26,13 @@ import java.lang.annotation.Target; * Defines a label which can be used to associate a class or type with label(s). * <p/> * For example Camel uses this to categorize the EIPs with labels. + * + * @deprecated use {@link org.apache.camel.spi.Metadata} instead */ @Retention(RetentionPolicy.RUNTIME) @Documented @Target({ElementType.TYPE}) +@Deprecated public @interface Label { /** http://git-wip-us.apache.org/repos/asf/camel/blob/c0d37429/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Metadata.java ---------------------------------------------------------------------- diff --git a/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Metadata.java b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Metadata.java new file mode 100644 index 0000000..a4c7b6a --- /dev/null +++ b/tooling/spi-annotations/src/main/java/org/apache/camel/spi/Metadata.java @@ -0,0 +1,47 @@ +/** + * 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.spi; + +import java.lang.annotation.Documented; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Meta data for EIPs, components, data formats and other Camel concepts + * <p/> + * For example to associate labels to Camel components + */ +@Retention(RetentionPolicy.RUNTIME) +@Documented +@Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD}) +public @interface Metadata { + + /** + * To define one or more labels. + * <p/> + * Multiple labels can be defined as a comma separated value. + */ + String label() default ""; + + /** + * To define a default value + */ + String defaultValue() default ""; + +}