Repository: camel Updated Branches: refs/heads/master e0d657445 -> 6121dc595
CAMEL-7999: More components include documentation Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/6a7773e2 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/6a7773e2 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/6a7773e2 Branch: refs/heads/master Commit: 6a7773e285eebcac9f97f3c9ad900a689ca4b3c3 Parents: e0d6574 Author: Claus Ibsen <davscl...@apache.org> Authored: Fri Jan 2 10:36:37 2015 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Fri Jan 2 10:36:37 2015 +0100 ---------------------------------------------------------------------- .../camel/component/mina/MinaComponent.java | 7 ++--- .../camel/component/mina/MinaConfiguration.java | 23 ++++++++++++++++ .../camel/component/mina/MinaEndpoint.java | 4 +++ .../camel/component/mina2/Mina2Component.java | 7 ++--- .../component/mina2/Mina2Configuration.java | 28 ++++++++++++++++++++ .../camel/component/mina2/Mina2Endpoint.java | 4 +++ 6 files changed, 67 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java ---------------------------------------------------------------------- diff --git a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java index b63cdbd..274aa9b 100644 --- a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java +++ b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaComponent.java @@ -27,7 +27,7 @@ import java.util.concurrent.ExecutorService; import org.apache.camel.CamelContext; import org.apache.camel.Endpoint; import org.apache.camel.ExchangePattern; -import org.apache.camel.impl.DefaultComponent; +import org.apache.camel.impl.UriEndpointComponent; import org.apache.camel.util.ObjectHelper; import org.apache.mina.common.DefaultIoFilterChainBuilder; import org.apache.mina.common.IoAcceptor; @@ -60,15 +60,16 @@ import org.slf4j.LoggerFactory; * * @version */ -public class MinaComponent extends DefaultComponent { +public class MinaComponent extends UriEndpointComponent { private static final Logger LOG = LoggerFactory.getLogger(MinaComponent.class); private MinaConfiguration configuration; public MinaComponent() { + super(MinaEndpoint.class); } public MinaComponent(CamelContext context) { - super(context); + super(context, MinaEndpoint.class); } @Override http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaConfiguration.java ---------------------------------------------------------------------- diff --git a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaConfiguration.java b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaConfiguration.java index 7cb9725..913cf23 100644 --- a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaConfiguration.java +++ b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaConfiguration.java @@ -21,31 +21,54 @@ import java.util.List; import org.apache.camel.LoggingLevel; import org.apache.camel.RuntimeCamelException; +import org.apache.camel.spi.UriParam; +import org.apache.camel.spi.UriParams; +import org.apache.camel.spi.UriPath; import org.apache.mina.common.IoFilter; import org.apache.mina.filter.codec.ProtocolCodecFactory; /** * Mina configuration */ +@UriParams public class MinaConfiguration implements Cloneable { + @UriPath private String protocol; + @UriPath private String host; + @UriPath private int port; + @UriParam(defaultValue = "true") private boolean sync = true; + @UriParam(defaultValue = "false") private boolean textline; + @UriParam private TextLineDelimiter textlineDelimiter; + @UriParam private ProtocolCodecFactory codec; + @UriParam private String encoding; + @UriParam(defaultValue = "30000") private long timeout = 30000; + @UriParam(defaultValue = "true") private boolean lazySessionCreation = true; + @UriParam(defaultValue = "false") private boolean transferExchange; + @UriParam(defaultValue = "false") private boolean minaLogger; + @UriParam(defaultValue = "-1") private int encoderMaxLineLength = -1; + @UriParam(defaultValue = "-1") private int decoderMaxLineLength = -1; + @UriParam private List<IoFilter> filters; + @UriParam(defaultValue = "true") private boolean allowDefaultCodec = true; + @UriParam(defaultValue = "false") private boolean disconnect; + @UriParam(defaultValue = "true") private boolean disconnectOnNoReply = true; + @UriParam(defaultValue = "WARN") private LoggingLevel noReplyLogLevel = LoggingLevel.WARN; /** http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaEndpoint.java ---------------------------------------------------------------------- diff --git a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaEndpoint.java b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaEndpoint.java index 9856605..78c9f30 100644 --- a/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaEndpoint.java +++ b/components/camel-mina/src/main/java/org/apache/camel/component/mina/MinaEndpoint.java @@ -27,6 +27,8 @@ import org.apache.camel.MultipleConsumersSupport; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.impl.DefaultEndpoint; +import org.apache.camel.spi.UriEndpoint; +import org.apache.camel.spi.UriParam; import org.apache.camel.util.ObjectHelper; import org.apache.mina.common.IoAcceptor; import org.apache.mina.common.IoAcceptorConfig; @@ -39,6 +41,7 @@ import org.apache.mina.common.IoSession; * * @version */ +@UriEndpoint(scheme = "mina", consumerClass = MinaConsumer.class, label = "networking,tcp,udp") public class MinaEndpoint extends DefaultEndpoint implements MultipleConsumersSupport { /** The key of the IoSession which is stored in the message header*/ @@ -56,6 +59,7 @@ public class MinaEndpoint extends DefaultEndpoint implements MultipleConsumersSu private IoConnector connector; private IoAcceptorConfig acceptorConfig; private IoConnectorConfig connectorConfig; + @UriParam private MinaConfiguration configuration; private final List<ExecutorService> executors = new ArrayList<ExecutorService>(); http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Component.java ---------------------------------------------------------------------- diff --git a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Component.java b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Component.java index 6dc88f8..c34293c 100644 --- a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Component.java +++ b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Component.java @@ -22,7 +22,7 @@ import java.util.Map; import org.apache.camel.CamelContext; import org.apache.camel.Endpoint; import org.apache.camel.ExchangePattern; -import org.apache.camel.impl.DefaultComponent; +import org.apache.camel.impl.UriEndpointComponent; import org.apache.camel.util.ObjectHelper; import org.apache.mina.core.filterchain.IoFilter; @@ -31,15 +31,16 @@ import org.apache.mina.core.filterchain.IoFilter; * * @version */ -public class Mina2Component extends DefaultComponent { +public class Mina2Component extends UriEndpointComponent { private Mina2Configuration configuration; public Mina2Component() { + super(Mina2Endpoint.class); } public Mina2Component(CamelContext context) { - super(context); + super(context, Mina2Endpoint.class); } @Override http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Configuration.java ---------------------------------------------------------------------- diff --git a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Configuration.java b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Configuration.java index a1da1f4..53b5f33 100644 --- a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Configuration.java +++ b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Configuration.java @@ -21,6 +21,9 @@ import java.util.List; import org.apache.camel.LoggingLevel; import org.apache.camel.RuntimeCamelException; +import org.apache.camel.spi.UriParam; +import org.apache.camel.spi.UriParams; +import org.apache.camel.spi.UriPath; import org.apache.camel.util.jsse.SSLContextParameters; import org.apache.mina.core.filterchain.IoFilter; import org.apache.mina.filter.codec.ProtocolCodecFactory; @@ -28,31 +31,56 @@ import org.apache.mina.filter.codec.ProtocolCodecFactory; /** * Mina2 configuration */ +@UriParams public class Mina2Configuration implements Cloneable { + @UriPath private String protocol; + @UriPath private String host; + @UriPath private int port; + @UriParam(defaultValue = "true") private boolean sync = true; + @UriParam(defaultValue = "false") private boolean textline; + @UriParam private Mina2TextLineDelimiter textlineDelimiter; + @UriParam private ProtocolCodecFactory codec; + @UriParam private String encoding; + @UriParam(defaultValue = "30000") private long timeout = 30000; + @UriParam(defaultValue = "true") private boolean lazySessionCreation = true; + @UriParam(defaultValue = "false") private boolean transferExchange; + @UriParam(defaultValue = "false") private boolean minaLogger; + @UriParam(defaultValue = "-1") private int encoderMaxLineLength = -1; + @UriParam(defaultValue = "-1") private int decoderMaxLineLength = -1; + @UriParam private List<IoFilter> filters; + @UriParam(defaultValue = "true") private boolean allowDefaultCodec = true; + @UriParam(defaultValue = "false") private boolean disconnect; + @UriParam(defaultValue = "true") private boolean disconnectOnNoReply = true; + @UriParam(defaultValue = "WARN") private LoggingLevel noReplyLogLevel = LoggingLevel.WARN; + @UriParam private SSLContextParameters sslContextParameters; + @UriParam(defaultValue = "true") private boolean autoStartTls = true; + @UriParam(defaultValue = "16") private int maximumPoolSize = 16; // 16 is the default mina setting + @UriParam(defaultValue = "true") private boolean orderedThreadPoolExecutor = true; + @UriParam(defaultValue = "true") private boolean cachedAddress = true; /** http://git-wip-us.apache.org/repos/asf/camel/blob/6a7773e2/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Endpoint.java ---------------------------------------------------------------------- diff --git a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Endpoint.java b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Endpoint.java index 350e1bd..8f1456f 100644 --- a/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Endpoint.java +++ b/components/camel-mina2/src/main/java/org/apache/camel/component/mina2/Mina2Endpoint.java @@ -23,6 +23,8 @@ import org.apache.camel.MultipleConsumersSupport; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.impl.DefaultEndpoint; +import org.apache.camel.spi.UriEndpoint; +import org.apache.camel.spi.UriParam; import org.apache.camel.util.ObjectHelper; import org.apache.mina.core.session.IoSession; @@ -31,8 +33,10 @@ import org.apache.mina.core.session.IoSession; * * @version */ +@UriEndpoint(scheme = "mina2", consumerClass = Mina2Consumer.class, label = "networking,tcp,udp") public class Mina2Endpoint extends DefaultEndpoint implements MultipleConsumersSupport { + @UriParam private Mina2Configuration configuration; public Mina2Endpoint() {