Component docs
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ea61e865 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ea61e865 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ea61e865 Branch: refs/heads/master Commit: ea61e8657c0ecf4525fe27e19e75cd56f79e3729 Parents: e4d1c4d Author: Claus Ibsen <[email protected]> Authored: Fri May 8 12:22:02 2015 +0200 Committer: Claus Ibsen <[email protected]> Committed: Fri May 8 12:22:02 2015 +0200 ---------------------------------------------------------------------- .../component/quickfixj/QuickfixjComponent.java | 24 +++++++++------- .../component/quickfixj/QuickfixjEndpoint.java | 30 ++++++++++++++++++-- 2 files changed, 41 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/ea61e865/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjComponent.java ---------------------------------------------------------------------- diff --git a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjComponent.java b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjComponent.java index dc8feda..5fd9557 100644 --- a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjComponent.java +++ b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjComponent.java @@ -64,7 +64,7 @@ public class QuickfixjComponent extends UriEndpointComponent implements StartupL } if (engine == null) { QuickfixjConfiguration configuration = configurations.get(remaining); - SessionSettings settings = null; + SessionSettings settings; if (configuration != null) { settings = configuration.createSessionSettings(); } else { @@ -90,6 +90,7 @@ public class QuickfixjComponent extends UriEndpointComponent implements StartupL endpoint = new QuickfixjEndpoint(engine, uri, this); endpoint.setConfigurationName(remaining); + endpoint.setLazyCreateEngine(engine.isLazy()); engine.addEventListener(endpoint); endpoints.put(uri, endpoint); } @@ -143,29 +144,34 @@ public class QuickfixjComponent extends UriEndpointComponent implements StartupL return Collections.unmodifiableMap(provisionalEngines); } + /** + * To use the given MessageFactory + */ public void setMessageFactory(MessageFactory messageFactory) { this.messageFactory = messageFactory; } + /** + * To use the given LogFactory + */ public void setLogFactory(LogFactory logFactory) { this.logFactory = logFactory; } - public void setMessageStoreFactory(MessageStoreFactory messageStoreFactory) { - this.messageStoreFactory = messageStoreFactory; - } - /** - * @deprecated Don't use as setting the {@code forcedShutdown} property had/has no effect. + * To use the given MessageStoreFactory */ - @Deprecated - public void setForcedShutdown(boolean forcedShutdown) { + public void setMessageStoreFactory(MessageStoreFactory messageStoreFactory) { + this.messageStoreFactory = messageStoreFactory; } public Map<String, QuickfixjConfiguration> getConfigurations() { return configurations; } + /** + * To use the given map of pre configured QuickFix configurations mapped to the key + */ public void setConfigurations(Map<String, QuickfixjConfiguration> configurations) { this.configurations = configurations; } @@ -177,8 +183,6 @@ public class QuickfixjComponent extends UriEndpointComponent implements StartupL /** * If set to <code>true</code>, the engines will be created and started when needed (when first message * is send) - * - * @param lazyCreateEngines */ public void setLazyCreateEngines(boolean lazyCreateEngines) { this.lazyCreateEngines = lazyCreateEngines; http://git-wip-us.apache.org/repos/asf/camel/blob/ea61e865/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjEndpoint.java ---------------------------------------------------------------------- diff --git a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjEndpoint.java b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjEndpoint.java index 90eb034..16e459b 100644 --- a/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjEndpoint.java +++ b/components/camel-quickfix/src/main/java/org/apache/camel/component/quickfixj/QuickfixjEndpoint.java @@ -31,6 +31,7 @@ import org.apache.camel.component.quickfixj.converter.QuickfixjConverters; import org.apache.camel.impl.DefaultEndpoint; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; +import org.apache.camel.spi.UriParam; import org.apache.camel.spi.UriPath; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -46,13 +47,15 @@ public class QuickfixjEndpoint extends DefaultEndpoint implements QuickfixjEvent private static final Logger LOG = LoggerFactory.getLogger(QuickfixjEndpoint.class); - private SessionID sessionID; + private final QuickfixjEngine engine; private final List<QuickfixjConsumer> consumers = new CopyOnWriteArrayList<QuickfixjConsumer>(); @UriPath @Metadata(required = "true") private String configurationName; - - private final QuickfixjEngine engine; + @UriParam + private SessionID sessionID; + @UriParam + private boolean lazyCreateEngine; @Deprecated public QuickfixjEndpoint(QuickfixjEngine engine, String uri, CamelContext context) { @@ -69,6 +72,10 @@ public class QuickfixjEndpoint extends DefaultEndpoint implements QuickfixjEvent return sessionID; } + /** + * The optional sessionID identifies a specific FIX session. The format of the sessionID is: + * (BeginString):(SenderCompID)[/(SenderSubID)[/(SenderLocationID)]]->(TargetCompID)[/(TargetSubID)[/(TargetLocationID)]] + */ public void setSessionID(SessionID sessionID) { this.sessionID = sessionID; } @@ -77,10 +84,27 @@ public class QuickfixjEndpoint extends DefaultEndpoint implements QuickfixjEvent return configurationName; } + /** + * The configFile is the name of the QuickFIX/J configuration to use for the FIX engine (located as a resource found in your classpath). + */ public void setConfigurationName(String configurationName) { this.configurationName = configurationName; } + public boolean isLazyCreateEngine() { + return lazyCreateEngine; + } + + /** + * This option allows to create QuickFIX/J engine on demand. + * Value true means the engine is started when first message is send or there's consumer configured in route definition. + * When false value is used, the engine is started at the endpoint creation. + * When this parameter is missing, the value of component's property lazyCreateEngines is being used. + */ + public void setLazyCreateEngine(boolean lazyCreateEngine) { + this.lazyCreateEngine = lazyCreateEngine; + } + @Override public Consumer createConsumer(Processor processor) throws Exception { LOG.info("Creating QuickFIX/J consumer: {}, ExchangePattern={}", sessionID != null ? sessionID : "No Session", getExchangePattern());
