Repository: camel Updated Branches: refs/heads/master e26f53cde -> 9fa8d71aa
CAMEL-10629: Add more details to component level options Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9fa8d71a Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9fa8d71a Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9fa8d71a Branch: refs/heads/master Commit: 9fa8d71aa38402d6472a855e8e69b04cbaefa31a Parents: e26f53c Author: Claus Ibsen <davscl...@apache.org> Authored: Wed Dec 21 11:34:18 2016 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Wed Dec 21 11:34:18 2016 +0100 ---------------------------------------------------------------------- camel-core/src/main/docs/direct-vm-component.adoc | 4 ++-- .../apache/camel/component/direct/DirectComponent.java | 3 ++- .../camel/component/directvm/DirectVmComponent.java | 12 ++++++------ .../camel/component/directvm/DirectVmEndpoint.java | 12 ++++++------ .../org/apache/camel/component/log/LogComponent.java | 6 ++++-- .../org/apache/camel/component/log/LogEndpoint.java | 2 +- .../org/apache/camel/component/rest/RestComponent.java | 4 ++++ .../camel/component/scheduler/SchedulerComponent.java | 2 ++ .../org/apache/camel/component/seda/SedaComponent.java | 4 +++- .../springboot/DirectVmComponentConfiguration.java | 2 +- .../springboot/SchedulerComponentConfiguration.java | 2 +- 11 files changed, 32 insertions(+), 21 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/docs/direct-vm-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/direct-vm-component.adoc b/camel-core/src/main/docs/direct-vm-component.adoc index 8c5bcdc..1895e65 100644 --- a/camel-core/src/main/docs/direct-vm-component.adoc +++ b/camel-core/src/main/docs/direct-vm-component.adoc @@ -57,7 +57,7 @@ The Direct VM component supports 4 options which are listed below. | block | boolean | If sending a message to a direct endpoint which has no active consumer then we can tell the producer to block and wait for the consumer to become active. | timeout | long | The timeout value to use if block is enabled. | headerFilterStrategy | HeaderFilterStrategy | Sets a HeaderFilterStrategy that will only be applied on producer endpoints (on both directions: request and response). Default value: none. -| propagateProperties | boolean | Whether to propagate or not properties from the producer side to the consumer side and viceversa. Default value: true. +| propagateProperties | boolean | Whether to propagate or not properties from the producer side to the consumer side and vice versa. Default value: true. |======================================================================= {% endraw %} // component options: END @@ -80,7 +80,7 @@ The Direct VM component supports 10 endpoint options which are listed below: | failIfNoConsumers | producer | false | boolean | Whether the producer should fail by throwing an exception when sending to a Direct-VM endpoint with no active consumers. | timeout | producer | 30000 | long | The timeout value to use if block is enabled. | headerFilterStrategy | producer (advanced) | | HeaderFilterStrategy | Sets a HeaderFilterStrategy that will only be applied on producer endpoints (on both directions: request and response). Default value: none. -| propagateProperties | advanced | false | Boolean | Whether to propagate or not properties from the producer side to the consumer side and viceversa. Default value: true. +| propagateProperties | advanced | true | boolean | Whether to propagate or not properties from the producer side to the consumer side and vice versa. Default value: true. | synchronous | advanced | false | boolean | Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported). |======================================================================= {% endraw %} http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/direct/DirectComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/direct/DirectComponent.java b/camel-core/src/main/java/org/apache/camel/component/direct/DirectComponent.java index a200928..200f688 100644 --- a/camel-core/src/main/java/org/apache/camel/component/direct/DirectComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/direct/DirectComponent.java @@ -35,8 +35,9 @@ public class DirectComponent extends UriEndpointComponent { // later in case the DirectEndpoint was re-created due the old was evicted from the endpoints LRUCache // on DefaultCamelContext private final Map<String, DirectConsumer> consumers = new HashMap<String, DirectConsumer>(); + @Metadata(label = "producer") private boolean block; - @Metadata(defaultValue = "30000") + @Metadata(label = "producer", defaultValue = "30000") private long timeout = 30000L; public DirectComponent() { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmComponent.java b/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmComponent.java index d5c341f..9404f0f 100644 --- a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmComponent.java @@ -39,12 +39,13 @@ public class DirectVmComponent extends UriEndpointComponent { // later in case the DirectVmEndpoint was re-created due the old was evicted from the endpoints LRUCache // on DefaultCamelContext private static final ConcurrentMap<String, DirectVmConsumer> CONSUMERS = new ConcurrentHashMap<String, DirectVmConsumer>(); + @Metadata(label = "producer") private boolean block; - @Metadata(defaultValue = "30000") + @Metadata(label = "producer", defaultValue = "30000") private long timeout = 30000L; private HeaderFilterStrategy headerFilterStrategy; - @Metadata(defaultValue = "true") - private Boolean propagateProperties = Boolean.TRUE; + @Metadata(label = "advanced", defaultValue = "true") + private boolean propagateProperties = true; public DirectVmComponent() { super(DirectVmEndpoint.class); @@ -68,6 +69,7 @@ public class DirectVmComponent extends UriEndpointComponent { DirectVmEndpoint answer = new DirectVmEndpoint(uri, this); answer.setBlock(block); answer.setTimeout(timeout); + answer.setPropagateProperties(propagateProperties); answer.configureProperties(parameters); setProperties(answer, parameters); return answer; @@ -145,7 +147,6 @@ public class DirectVmComponent extends UriEndpointComponent { /** * Sets a {@link HeaderFilterStrategy} that will only be applied on producer endpoints (on both directions: request and response). * <p>Default value: none.</p> - * @param headerFilterStrategy */ public void setHeaderFilterStrategy(HeaderFilterStrategy headerFilterStrategy) { this.headerFilterStrategy = headerFilterStrategy; @@ -156,9 +157,8 @@ public class DirectVmComponent extends UriEndpointComponent { } /** - * Whether to propagate or not properties from the producer side to the consumer side, and viceversa. + * Whether to propagate or not properties from the producer side to the consumer side, and vice versa. * <p>Default value: true.</p> - * @param propagateProperties */ public void setPropagateProperties(boolean propagateProperties) { this.propagateProperties = propagateProperties; http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmEndpoint.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmEndpoint.java index 74e3bee..9aad22f 100644 --- a/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmEndpoint.java +++ b/camel-core/src/main/java/org/apache/camel/component/directvm/DirectVmEndpoint.java @@ -47,8 +47,8 @@ public class DirectVmEndpoint extends DefaultEndpoint implements AsyncEndpoint { private boolean failIfNoConsumers = true; @UriParam(label = "producer,advanced") private HeaderFilterStrategy headerFilterStrategy; - @UriParam(label = "advanced", defaultValue = "false") - private Boolean propagateProperties; + @UriParam(label = "advanced", defaultValue = "true") + private boolean propagateProperties = true; public DirectVmEndpoint(String endpointUri, DirectVmComponent component) { super(endpointUri, component); @@ -130,15 +130,15 @@ public class DirectVmEndpoint extends DefaultEndpoint implements AsyncEndpoint { this.headerFilterStrategy = headerFilterStrategy; } - public Boolean isPropagateProperties() { - return propagateProperties == null ? getComponent().isPropagateProperties() : propagateProperties; + public boolean isPropagateProperties() { + return propagateProperties; } /** - * Whether to propagate or not properties from the producer side to the consumer side, and viceversa. + * Whether to propagate or not properties from the producer side to the consumer side, and vice versa. * <p>Default value: true.</p> */ - public void setPropagateProperties(Boolean propagateProperties) { + public void setPropagateProperties(boolean propagateProperties) { this.propagateProperties = propagateProperties; } http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/log/LogComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/log/LogComponent.java b/camel-core/src/main/java/org/apache/camel/component/log/LogComponent.java index d524654..5655c09 100644 --- a/camel-core/src/main/java/org/apache/camel/component/log/LogComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/log/LogComponent.java @@ -24,6 +24,7 @@ import org.apache.camel.LoggingLevel; import org.apache.camel.impl.UriEndpointComponent; import org.apache.camel.processor.DefaultExchangeFormatter; import org.apache.camel.spi.ExchangeFormatter; +import org.apache.camel.spi.Metadata; import org.apache.camel.util.CamelLogger; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,6 +38,7 @@ import org.slf4j.LoggerFactory; public class LogComponent extends UriEndpointComponent { private static final Logger LOG = LoggerFactory.getLogger(LogComponent.class); + @Metadata(label = "advanced") private ExchangeFormatter exchangeFormatter; public LogComponent() { @@ -96,8 +98,8 @@ public class LogComponent extends UriEndpointComponent { /** * Gets optional {@link Logger} instance from parameters. If non-null, the provided instance will be used as * {@link Logger} in {@link CamelLogger} - * - * @param parameters + * + * @param parameters the parameters * @return the Logger object from the parameter */ protected Logger getLogger(Map<String, Object> parameters) { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/log/LogEndpoint.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/log/LogEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/log/LogEndpoint.java index 69cc6fb..a8f8985 100644 --- a/camel-core/src/main/java/org/apache/camel/component/log/LogEndpoint.java +++ b/camel-core/src/main/java/org/apache/camel/component/log/LogEndpoint.java @@ -60,7 +60,7 @@ public class LogEndpoint extends ProcessorEndpoint { @UriParam private Long groupDelay; // we want to include the uri options of the DefaultExchangeFormatter - @UriParam + @UriParam(label = "advanced") private DefaultExchangeFormatter exchangeFormatter; public LogEndpoint() { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/rest/RestComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/rest/RestComponent.java b/camel-core/src/main/java/org/apache/camel/component/rest/RestComponent.java index 5384b5f..883168d 100644 --- a/camel-core/src/main/java/org/apache/camel/component/rest/RestComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/rest/RestComponent.java @@ -20,6 +20,7 @@ import java.util.Map; import org.apache.camel.Endpoint; import org.apache.camel.impl.UriEndpointComponent; +import org.apache.camel.spi.Metadata; import org.apache.camel.util.FileUtil; import org.apache.camel.util.ObjectHelper; @@ -28,8 +29,11 @@ import org.apache.camel.util.ObjectHelper; */ public class RestComponent extends UriEndpointComponent { + @Metadata(label = "common") private String componentName; + @Metadata(label = "producer") private String apiDoc; + @Metadata(label = "producer") private String host; public RestComponent() { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/scheduler/SchedulerComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/scheduler/SchedulerComponent.java b/camel-core/src/main/java/org/apache/camel/component/scheduler/SchedulerComponent.java index c88594a..599699c 100644 --- a/camel-core/src/main/java/org/apache/camel/component/scheduler/SchedulerComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/scheduler/SchedulerComponent.java @@ -24,12 +24,14 @@ import java.util.concurrent.atomic.AtomicInteger; import org.apache.camel.Endpoint; import org.apache.camel.impl.UriEndpointComponent; +import org.apache.camel.spi.Metadata; public class SchedulerComponent extends UriEndpointComponent { private final Map<String, ScheduledExecutorService> executors = new HashMap<String, ScheduledExecutorService>(); private final Map<String, AtomicInteger> refCounts = new HashMap<String, AtomicInteger>(); + @Metadata(defaultValue = "1", label = "scheduler") private int concurrentTasks = 1; public SchedulerComponent() { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/camel-core/src/main/java/org/apache/camel/component/seda/SedaComponent.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/component/seda/SedaComponent.java b/camel-core/src/main/java/org/apache/camel/component/seda/SedaComponent.java index 3402bf4..de81076 100644 --- a/camel-core/src/main/java/org/apache/camel/component/seda/SedaComponent.java +++ b/camel-core/src/main/java/org/apache/camel/component/seda/SedaComponent.java @@ -36,10 +36,12 @@ import org.slf4j.LoggerFactory; public class SedaComponent extends UriEndpointComponent { protected final Logger log = LoggerFactory.getLogger(getClass()); protected final int maxConcurrentConsumers = 500; + @Metadata(label = "advanced") protected int queueSize; - @Metadata(defaultValue = "1") + @Metadata(label = "consumer", defaultValue = "1") protected int concurrentConsumers = 1; private final Map<String, QueueReference> queues = new HashMap<String, QueueReference>(); + @Metadata(label = "advanced") private BlockingQueueFactory<Exchange> defaultQueueFactory = new LinkedBlockingQueueFactory<Exchange>(); public SedaComponent() { http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/directvm/springboot/DirectVmComponentConfiguration.java ---------------------------------------------------------------------- diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/directvm/springboot/DirectVmComponentConfiguration.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/directvm/springboot/DirectVmComponentConfiguration.java index 6ba1c4f..c65bf5c 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/directvm/springboot/DirectVmComponentConfiguration.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/directvm/springboot/DirectVmComponentConfiguration.java @@ -48,7 +48,7 @@ public class DirectVmComponentConfiguration { private HeaderFilterStrategy headerFilterStrategy; /** * Whether to propagate or not properties from the producer side to the - * consumer side and viceversa. Default value: true. + * consumer side and vice versa. Default value: true. */ private Boolean propagateProperties = true; http://git-wip-us.apache.org/repos/asf/camel/blob/9fa8d71a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/scheduler/springboot/SchedulerComponentConfiguration.java ---------------------------------------------------------------------- diff --git a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/scheduler/springboot/SchedulerComponentConfiguration.java b/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/scheduler/springboot/SchedulerComponentConfiguration.java index de7325f..05d29d8 100644 --- a/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/scheduler/springboot/SchedulerComponentConfiguration.java +++ b/components-starter/camel-core-starter/src/main/java/org/apache/camel/component/scheduler/springboot/SchedulerComponentConfiguration.java @@ -31,7 +31,7 @@ public class SchedulerComponentConfiguration { * Number of threads used by the scheduling thread pool. Is by default using * a single thread */ - private Integer concurrentTasks; + private Integer concurrentTasks = 1; public Integer getConcurrentTasks() { return concurrentTasks;