You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2015/04/14 10:25:30 UTC
[2/2] camel git commit: Add component documentation.
Add component documentation.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/364b8da9
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/364b8da9
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/364b8da9
Branch: refs/heads/camel-2.15.x
Commit: 364b8da9459c7cc43c02b89c471c5f28f051b526
Parents: 77fc155
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Apr 14 09:58:31 2015 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Apr 14 10:28:19 2015 +0200
----------------------------------------------------------------------
.../impl/HeaderFilterStrategyComponent.java | 8 ++-
.../camel/component/ahc/ws/WsEndpoint.java | 9 +--
.../camel/component/ahc/AhcComponent.java | 14 +++++
.../apache/camel/component/ahc/AhcEndpoint.java | 38 ++++++++++++
.../camel/component/apns/ApnsComponent.java | 3 +
.../camel/component/apns/ApnsEndpoint.java | 3 +
.../component/atmos/AtmosConfiguration.java | 63 +++++++++++++-------
.../atmosphere/websocket/WebsocketEndpoint.java | 13 ++--
.../camel/component/avro/AvroComponent.java | 3 +
.../camel/component/avro/AvroConfiguration.java | 30 ++++++++++
.../tools/apt/EndpointAnnotationProcessor.java | 11 +++-
11 files changed, 154 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/camel-core/src/main/java/org/apache/camel/impl/HeaderFilterStrategyComponent.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/impl/HeaderFilterStrategyComponent.java b/camel-core/src/main/java/org/apache/camel/impl/HeaderFilterStrategyComponent.java
index 55e53d8..b1c4bfc 100644
--- a/camel-core/src/main/java/org/apache/camel/impl/HeaderFilterStrategyComponent.java
+++ b/camel-core/src/main/java/org/apache/camel/impl/HeaderFilterStrategyComponent.java
@@ -40,10 +40,16 @@ public abstract class HeaderFilterStrategyComponent extends UriEndpointComponent
return headerFilterStrategy;
}
+ /**
+ * To use a custom {@link org.apache.camel.spi.HeaderFilterStrategy} to filter header to and from Camel message.
+ */
public void setHeaderFilterStrategy(HeaderFilterStrategy strategy) {
headerFilterStrategy = strategy;
}
-
+
+ /**
+ * Sets the header filter strategy to use from the given endpoint if the endpoint is a {@link HeaderFilterStrategyAware} type.
+ */
public void setEndpointHeaderFilterStrategy(Endpoint endpoint) {
if (headerFilterStrategy != null && endpoint instanceof HeaderFilterStrategyAware) {
((HeaderFilterStrategyAware)endpoint).setHeaderFilterStrategy(headerFilterStrategy);
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-ahc-ws/src/main/java/org/apache/camel/component/ahc/ws/WsEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc-ws/src/main/java/org/apache/camel/component/ahc/ws/WsEndpoint.java b/components/camel-ahc-ws/src/main/java/org/apache/camel/component/ahc/ws/WsEndpoint.java
index 8611b6a..9a714fa 100644
--- a/components/camel-ahc-ws/src/main/java/org/apache/camel/component/ahc/ws/WsEndpoint.java
+++ b/components/camel-ahc-ws/src/main/java/org/apache/camel/component/ahc/ws/WsEndpoint.java
@@ -48,7 +48,6 @@ public class WsEndpoint extends AhcEndpoint {
private final Set<WsConsumer> consumers = new HashSet<WsConsumer>();
- @UriParam
private WebSocket websocket;
@UriParam
private boolean useStreaming;
@@ -98,15 +97,12 @@ public class WsEndpoint extends AhcEndpoint {
this.websocket = websocket;
}
- /**
- * @return the useStreaming
- */
public boolean isUseStreaming() {
return useStreaming;
}
/**
- * @param useStreaming the useStreaming to set
+ * To enable streaming to send data as multiple text fragments.
*/
public void setUseStreaming(boolean useStreaming) {
this.useStreaming = useStreaming;
@@ -174,8 +170,6 @@ public class WsEndpoint extends AhcEndpoint {
}
}
-
-
@Override
public void onMessage(String message) {
LOG.debug("received message --> {}", message);
@@ -184,7 +178,6 @@ public class WsEndpoint extends AhcEndpoint {
}
}
-
}
protected AsyncHttpProvider getAsyncHttpProvider(AsyncHttpClientConfig config) {
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcComponent.java b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcComponent.java
index 9e2a0ef..9077b23 100644
--- a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcComponent.java
+++ b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcComponent.java
@@ -119,6 +119,9 @@ public class AhcComponent extends HeaderFilterStrategyComponent {
return client;
}
+ /**
+ * To use a custom {@link AsyncHttpClient}
+ */
public void setClient(AsyncHttpClient client) {
this.client = client;
}
@@ -130,6 +133,9 @@ public class AhcComponent extends HeaderFilterStrategyComponent {
return binding;
}
+ /**
+ * To use a custom {@link AhcBinding} which allows to control how to bind between AHC and Camel.
+ */
public void setBinding(AhcBinding binding) {
this.binding = binding;
}
@@ -138,6 +144,9 @@ public class AhcComponent extends HeaderFilterStrategyComponent {
return clientConfig;
}
+ /**
+ * To configure the AsyncHttpClient to use a custom com.ning.http.client.AsyncHttpClientConfig instance.
+ */
public void setClientConfig(AsyncHttpClientConfig clientConfig) {
this.clientConfig = clientConfig;
}
@@ -146,6 +155,11 @@ public class AhcComponent extends HeaderFilterStrategyComponent {
return sslContextParameters;
}
+ /**
+ * Reference to a org.apache.camel.util.jsse.SSLContextParameters in the Registry.
+ * Note that configuring this option will override any SSL/TLS configuration options provided through the
+ * clientConfig option at the endpoint or component level.
+ */
public void setSslContextParameters(SSLContextParameters sslContextParameters) {
this.sslContextParameters = sslContextParameters;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcEndpoint.java b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcEndpoint.java
index 1f7ce54..9790a73 100644
--- a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcEndpoint.java
+++ b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/AhcEndpoint.java
@@ -95,6 +95,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return client;
}
+ /**
+ * To use a custom {@link AsyncHttpClient}
+ */
public void setClient(AsyncHttpClient client) {
this.client = client;
}
@@ -103,6 +106,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return clientConfig;
}
+ /**
+ * To configure the AsyncHttpClient to use a custom com.ning.http.client.AsyncHttpClientConfig instance.
+ */
public void setClientConfig(AsyncHttpClientConfig clientConfig) {
this.clientConfig = clientConfig;
}
@@ -111,6 +117,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return httpUri;
}
+ /**
+ * The URI to use such as http://hostname:port/path
+ */
public void setHttpUri(URI httpUri) {
this.httpUri = httpUri;
}
@@ -119,6 +128,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return binding;
}
+ /**
+ * To use a custom {@link AhcBinding} which allows to control how to bind between AHC and Camel.
+ */
public void setBinding(AhcBinding binding) {
this.binding = binding;
}
@@ -127,6 +139,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return headerFilterStrategy;
}
+ /**
+ * To use a custom HeaderFilterStrategy to filter header to and from Camel message.
+ */
public void setHeaderFilterStrategy(HeaderFilterStrategy headerFilterStrategy) {
this.headerFilterStrategy = headerFilterStrategy;
}
@@ -135,6 +150,10 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return bridgeEndpoint;
}
+ /**
+ * If the option is true, then the Exchange.HTTP_URI header is ignored, and use the endpoint's URI for request.
+ * You may also set the throwExceptionOnFailure to be false to let the AhcProducer send all the fault response back.
+ */
public void setBridgeEndpoint(boolean bridgeEndpoint) {
this.bridgeEndpoint = bridgeEndpoint;
}
@@ -143,6 +162,10 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return throwExceptionOnFailure;
}
+ /**
+ * Option to disable throwing the AhcOperationFailedException in case of failed responses from the remote server.
+ * This allows you to get all responses regardless of the HTTP status code.
+ */
public void setThrowExceptionOnFailure(boolean throwExceptionOnFailure) {
this.throwExceptionOnFailure = throwExceptionOnFailure;
}
@@ -151,6 +174,12 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return transferException;
}
+ /**
+ * If enabled and an Exchange failed processing on the consumer side, and if the caused Exception was send back serialized
+ * in the response as a application/x-java-serialized-object content type (for example using Jetty or Servlet Camel components).
+ * On the producer side the exception will be deserialized and thrown as is, instead of the AhcOperationFailedException.
+ * The caused exception is required to be serialized.
+ */
public void setTransferException(boolean transferException) {
this.transferException = transferException;
}
@@ -159,6 +188,12 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return sslContextParameters;
}
+ /**
+ * Reference to a org.apache.camel.util.jsse.SSLContextParameters in the Registry.
+ * This reference overrides any configured SSLContextParameters at the component level.
+ * See Using the JSSE Configuration Utility.
+ * Note that configuring this option will override any SSL/TLS configuration options provided through the clientConfig option at the endpoint or component level.
+ */
public void setSslContextParameters(SSLContextParameters sslContextParameters) {
this.sslContextParameters = sslContextParameters;
}
@@ -167,6 +202,9 @@ public class AhcEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
return bufferSize;
}
+ /**
+ * The initial in-memory buffer size used when transferring data between Camel and AHC Client.
+ */
public void setBufferSize(int bufferSize) {
this.bufferSize = bufferSize;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsComponent.java b/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsComponent.java
index 5e70eac..ba43bec 100644
--- a/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsComponent.java
+++ b/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsComponent.java
@@ -46,6 +46,9 @@ public class ApnsComponent extends UriEndpointComponent {
return apnsService;
}
+ /**
+ * To use a custom @{link ApnsService}
+ */
public void setApnsService(ApnsService apnsService) {
this.apnsService = apnsService;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsEndpoint.java b/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsEndpoint.java
index a53ef43..e859c01 100644
--- a/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsEndpoint.java
+++ b/components/camel-apns/src/main/java/org/apache/camel/component/apns/ApnsEndpoint.java
@@ -55,6 +55,9 @@ public class ApnsEndpoint extends ScheduledPollEndpoint {
return tokens;
}
+ /**
+ * Configure this property in case you want to statically declare tokens related to devices you want to notify. Tokens are separated by comma.
+ */
public void setTokens(String tokens) {
this.tokens = tokens;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-atmos/src/main/java/org/apache/camel/component/atmos/AtmosConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-atmos/src/main/java/org/apache/camel/component/atmos/AtmosConfiguration.java b/components/camel-atmos/src/main/java/org/apache/camel/component/atmos/AtmosConfiguration.java
index b540ac6..e646054 100644
--- a/components/camel-atmos/src/main/java/org/apache/camel/component/atmos/AtmosConfiguration.java
+++ b/components/camel-atmos/src/main/java/org/apache/camel/component/atmos/AtmosConfiguration.java
@@ -32,38 +32,29 @@ import org.apache.camel.spi.UriPath;
@UriParams
public class AtmosConfiguration {
+ private AtmosApi client;
+
@UriPath
private String name;
@UriPath @Metadata(required = "true")
private AtmosOperation operation;
- //atmos shared secret
@UriParam
private String secretKey;
- //local path to put files
@UriParam
private String localPath;
- //where to put files on atmos
@UriParam
private String remotePath;
- //new path on atmos when moving files
@UriParam
private String newRemotePath;
- //search query on atmos
@UriParam
private String query;
- //atmos client fullTokenId
@UriParam
private String fullTokenId;
- //atmos server uri
@UriParam
private String uri;
- //atmos ssl validation
@UriParam
private boolean enableSslValidation;
- //specific atmos operation for the component
- //reference to atmo client
- private AtmosApi client;
-
+
public void setClient(AtmosApi client) {
this.client = client;
}
@@ -97,6 +88,9 @@ public class AtmosConfiguration {
return name;
}
+ /**
+ * Atmos name
+ */
public void setName(String name) {
this.name = name;
}
@@ -104,7 +98,10 @@ public class AtmosConfiguration {
public String getSecretKey() {
return secretKey;
}
-
+
+ /**
+ * Atmos shared secret
+ */
public void setSecretKey(String secretKey) {
this.secretKey = secretKey;
}
@@ -112,7 +109,10 @@ public class AtmosConfiguration {
public String getLocalPath() {
return localPath;
}
-
+
+ /**
+ * Local path to put files
+ */
public void setLocalPath(String localPath) {
this.localPath = localPath;
}
@@ -120,7 +120,10 @@ public class AtmosConfiguration {
public String getRemotePath() {
return remotePath;
}
-
+
+ /**
+ * Where to put files on Atmos
+ */
public void setRemotePath(String remotePath) {
this.remotePath = remotePath;
}
@@ -128,7 +131,10 @@ public class AtmosConfiguration {
public String getNewRemotePath() {
return newRemotePath;
}
-
+
+ /**
+ * New path on Atmos when moving files
+ */
public void setNewRemotePath(String newRemotePath) {
this.newRemotePath = newRemotePath;
}
@@ -136,7 +142,10 @@ public class AtmosConfiguration {
public String getQuery() {
return query;
}
-
+
+ /**
+ * Search query on Atmos
+ */
public void setQuery(String query) {
this.query = query;
}
@@ -144,7 +153,10 @@ public class AtmosConfiguration {
public String getFullTokenId() {
return fullTokenId;
}
-
+
+ /**
+ * Atmos client fullTokenId
+ */
public void setFullTokenId(String fullTokenId) {
this.fullTokenId = fullTokenId;
}
@@ -152,11 +164,17 @@ public class AtmosConfiguration {
public AtmosOperation getOperation() {
return operation;
}
-
+
+ /**
+ * Operation to perform
+ */
public void setOperation(AtmosOperation operation) {
this.operation = operation;
}
-
+
+ /**
+ * Atomos server uri
+ */
public void setUri(String uri) {
this.uri = uri;
}
@@ -168,7 +186,10 @@ public class AtmosConfiguration {
public boolean isEnableSslValidation() {
return enableSslValidation;
}
-
+
+ /**
+ * Atmos SSL validation
+ */
public void setEnableSslValidation(boolean enableSslValidation) {
this.enableSslValidation = enableSslValidation;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-atmosphere-websocket/src/main/java/org/apache/camel/component/atmosphere/websocket/WebsocketEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-atmosphere-websocket/src/main/java/org/apache/camel/component/atmosphere/websocket/WebsocketEndpoint.java b/components/camel-atmosphere-websocket/src/main/java/org/apache/camel/component/atmosphere/websocket/WebsocketEndpoint.java
index 4fb273b..a282a00 100644
--- a/components/camel-atmosphere-websocket/src/main/java/org/apache/camel/component/atmosphere/websocket/WebsocketEndpoint.java
+++ b/components/camel-atmosphere-websocket/src/main/java/org/apache/camel/component/atmosphere/websocket/WebsocketEndpoint.java
@@ -24,6 +24,7 @@ import org.apache.camel.Processor;
import org.apache.camel.Producer;
import org.apache.camel.component.http.HttpClientConfigurer;
import org.apache.camel.component.servlet.ServletEndpoint;
+import org.apache.camel.spi.Metadata;
import org.apache.camel.spi.UriEndpoint;
import org.apache.camel.spi.UriParam;
import org.apache.camel.spi.UriPath;
@@ -38,7 +39,7 @@ public class WebsocketEndpoint extends ServletEndpoint {
private WebSocketStore store;
- @UriPath
+ @UriPath(description = "Name of websocket endpoint") @Metadata(required = "true")
private String servicePath;
@UriParam
private boolean sendToAll;
@@ -72,29 +73,23 @@ public class WebsocketEndpoint extends ServletEndpoint {
return true;
}
- /**
- * @return the sendToAll
- */
public boolean isSendToAll() {
return sendToAll;
}
/**
- * @param sendToAll the sendToAll to set
+ * Whether to send to all (broadcast) or send to a single receiver.
*/
public void setSendToAll(boolean sendToAll) {
this.sendToAll = sendToAll;
}
- /**
- * @return the useStreaming
- */
public boolean isUseStreaming() {
return useStreaming;
}
/**
- * @param useStreaming the useStreaming to set
+ * To enable streaming to send data as multiple text fragments.
*/
public void setUseStreaming(boolean useStreaming) {
this.useStreaming = useStreaming;
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroComponent.java
----------------------------------------------------------------------
diff --git a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroComponent.java b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroComponent.java
index d7c5b11..108348b 100644
--- a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroComponent.java
+++ b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroComponent.java
@@ -160,6 +160,9 @@ public class AvroComponent extends UriEndpointComponent {
return configuration;
}
+ /**
+ * To use a shared {@link AvroConfiguration} to configure options once
+ */
public void setConfiguration(AvroConfiguration configuration) {
this.configuration = configuration;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroConfiguration.java b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroConfiguration.java
index de9642f..ea22270 100644
--- a/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroConfiguration.java
+++ b/components/camel-avro/src/main/java/org/apache/camel/component/avro/AvroConfiguration.java
@@ -85,6 +85,9 @@ public class AvroConfiguration implements Cloneable {
return host;
}
+ /**
+ * Hostname to use
+ */
public void setHost(String host) {
this.host = host;
}
@@ -93,6 +96,9 @@ public class AvroConfiguration implements Cloneable {
return port;
}
+ /**
+ * Port number to use
+ */
public void setPort(int port) {
this.port = port;
}
@@ -101,6 +107,9 @@ public class AvroConfiguration implements Cloneable {
return protocol;
}
+ /**
+ * Avro protocol to use
+ */
public void setProtocol(Protocol protocol) {
this.protocol = protocol;
}
@@ -109,6 +118,9 @@ public class AvroConfiguration implements Cloneable {
return transport;
}
+ /**
+ * Transport to use
+ */
public void setTransport(String transport) {
this.transport = AvroTransport.valueOf(transport);
}
@@ -121,6 +133,9 @@ public class AvroConfiguration implements Cloneable {
return protocolLocation;
}
+ /**
+ * Avro protocol location
+ */
public void setProtocolLocation(String protocolLocation) {
this.protocolLocation = protocolLocation;
}
@@ -129,6 +144,9 @@ public class AvroConfiguration implements Cloneable {
return protocolClassName;
}
+ /**
+ * Avro protocol to use defined by the FQN class name
+ */
public void setProtocolClassName(String protocolClassName) {
this.protocolClassName = protocolClassName;
}
@@ -137,6 +155,9 @@ public class AvroConfiguration implements Cloneable {
return messageName;
}
+ /**
+ * The name of the message to send.
+ */
public void setMessageName(String messageName) {
this.messageName = messageName;
}
@@ -145,6 +166,9 @@ public class AvroConfiguration implements Cloneable {
return uriAuthority;
}
+ /**
+ * Authority to use (username and password)
+ */
public void setUriAuthority(String uriAuthority) {
this.uriAuthority = uriAuthority;
}
@@ -153,6 +177,9 @@ public class AvroConfiguration implements Cloneable {
return reflectionProtocol;
}
+ /**
+ * If protocol object provided is reflection protocol. Should be used only with protocol parameter because for protocolClassName protocol type will be auto detected
+ */
public void setReflectionProtocol(boolean isReflectionProtocol) {
this.reflectionProtocol = isReflectionProtocol;
}
@@ -161,6 +188,9 @@ public class AvroConfiguration implements Cloneable {
return singleParameter;
}
+ /**
+ * If true, consumer parameter won't be wrapped into array. Will fail if protocol specifies more then 1 parameter for the message
+ */
public void setSingleParameter(boolean singleParameter) {
this.singleParameter = singleParameter;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/364b8da9/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
----------------------------------------------------------------------
diff --git a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
index f7a228d..9e583a0 100644
--- a/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
+++ b/tooling/apt/src/main/java/org/apache/camel/tools/apt/EndpointAnnotationProcessor.java
@@ -56,6 +56,8 @@ import static org.apache.camel.tools.apt.Strings.safeNull;
@SupportedSourceVersion(SourceVersion.RELEASE_7)
public class EndpointAnnotationProcessor extends AbstractAnnotationProcessor {
+ private static final String HEADER_FILTER_STRATEGY_JAVADOC = "To use a custom HeaderFilterStrategy to filter header to and from Camel message.";
+
public boolean process(Set<? extends TypeElement> annotations, final RoundEnvironment roundEnv) {
if (roundEnv.processingOver()) {
return true;
@@ -435,7 +437,7 @@ public class EndpointAnnotationProcessor extends AbstractAnnotationProcessor {
}
// skip unwanted methods as they are inherited from default component and are not intended for end users to configure
- if ("setEndpointClass".equals(methodName) || "setCamelContext".equals(methodName)) {
+ if ("setEndpointClass".equals(methodName) || "setCamelContext".equals(methodName) || "setEndpointHeaderFilterStrategy".equals(methodName)) {
continue;
}
@@ -460,7 +462,12 @@ public class EndpointAnnotationProcessor extends AbstractAnnotationProcessor {
String docComment = findJavaDoc(elementUtils, method, fieldName, name, classElement, false);
if (docComment == null) {
- docComment = "";
+ // apt cannot grab javadoc from camel-core, only from annotations
+ if ("setHeaderFilterStrategy".equals(methodName)) {
+ docComment = HEADER_FILTER_STRATEGY_JAVADOC;
+ } else {
+ docComment = "";
+ }
}
// gather enums