package org.marketcetera.client.rpc; import javax.annotation.concurrent.NotThreadSafe; import org.marketcetera.client.ClientParameters; import org.marketcetera.trade.TradeContextClassProvider; import org.marketcetera.util.misc.ClassVersion; import org.marketcetera.util.ws.ContextClassProvider; /* $License$ */ /** * The set of parameters needed to initialize the RPC client. * * @author <a href="mailto:colin@marketcetera.com">Colin DuPlantis</a> * @version $Id: RpcClientParameters.java 16901 2014-05-11 16:14:11Z colin $ * @since 2.4.0 */ @NotThreadSafe @ClassVersion("$Id: RpcClientParameters.java 16901 2014-05-11 16:14:11Z colin $") public class RpcClientParameters extends ClientParameters { /** * Create a new RpcClientParameters instance. * * @param inUsername a <code>String</code> value * @param inPassword a <code>char[]</code> value * @param inURL a <code>String</code> value * @param inHostname a <code>String</code> value * @param inPort an <code>int</code> value * @param inIDPrefix a <code>String</code> value * @param inHeartbeatInterval an <code>int</code> value */ public RpcClientParameters(String inUsername, char[] inPassword, String inURL, String inHostname, int inPort, String inIDPrefix, int inHeartbeatInterval) { super(inUsername, inPassword, inURL, inHostname, inPort, inIDPrefix, inHeartbeatInterval); } /** * Create a new RpcClientParameters instance. * * @param inUsername a <code>String</code> value * @param inPassword a <code>char[]</code> value * @param inURL a <code>String</code> value * @param inHostname a <code>String</code> value * @param inPort an <code>int</code> value * @param inIDPrefix a <code>String</code> value */ public RpcClientParameters(String inUsername, char[] inPassword, String inURL, String inHostname, int inPort, String inIDPrefix) { super(inUsername, inPassword, inURL, inHostname, inPort, inIDPrefix); } /** * Create a new RpcClientParameters instance. * * @param inUsername a <code>String</code> value * @param inPassword a <code>char[]</code> value * @param inURL a <code>String</code> value * @param inHostname a <code>String</code> value * @param inPort an <code>int</code> value */ public RpcClientParameters(String inUsername, char[] inPassword, String inURL, String inHostname, int inPort) { super(inUsername, inPassword, inURL, inHostname, inPort); } /** * Get the useJms value. * * @return a <code>boolean</code> value */ public boolean getUseJms() { return useJms; } /** * Sets the useJms value. * * @param inUseJms a <code>boolean</code> value */ public void setUseJms(boolean inUseJms) { useJms = inUseJms; } /** * Get the threadPoolCore value. * * @return an <code>int</code> value */ public int getThreadPoolCore() { return threadPoolCore; } /** * Sets the threadPoolCore value. * * @param inThreadPoolCore an <code>int</code> value */ public void setThreadPoolCore(int inThreadPoolCore) { threadPoolCore = inThreadPoolCore; } /** * Get the threadPoolMax value. * * @return an <code>int</code> value */ public int getThreadPoolMax() { return threadPoolMax; } /** * Sets the threadPoolMax value. * * @param inThreadPoolMax an <code>int</code> value */ public void setThreadPoolMax(int inThreadPoolMax) { threadPoolMax = inThreadPoolMax; } /** * Get the sendBufferSize value. * * @return an <code>int</code> value */ public int getSendBufferSize() { return sendBufferSize; } /** * Sets the sendBufferSize value. * * @param inSendBufferSize an <code>int</code> value */ public void setSendBufferSize(int inSendBufferSize) { sendBufferSize = inSendBufferSize; } /** * Get the receiveBufferSize value. * * @return an <code>int</code> value */ public int getReceiveBufferSize() { return receiveBufferSize; } /** * Sets the receiveBufferSize value. * * @param inReceiveBufferSize an <code>int</code> value */ public void setReceiveBufferSize(int inReceiveBufferSize) { receiveBufferSize = inReceiveBufferSize; } /** * Get the noDelay value. * * @return a <code>boolean</code> value */ public boolean getNoDelay() { return noDelay; } /** * Sets the noDelay value. * * @param inNoDelay a <code>boolean</code> value */ public void setNoDelay(boolean inNoDelay) { noDelay = inNoDelay; } /** * Get the contextClassProvider value. * * @return a <code>ContextClassProvider</code> value */ public ContextClassProvider getContextClassProvider() { return contextClassProvider; } /** * Sets the contextClassProvider value. * * @param inContextClassProvider a <code>ContextClassProvider</code> value */ public void setContextClassProvider(ContextClassProvider inContextClassProvider) { contextClassProvider = inContextClassProvider; } /** * providers context classes for serialization */ private ContextClassProvider contextClassProvider = TradeContextClassProvider.INSTANCE; /** * activate or deactive JMS */ private boolean useJms = true; /** * thread pool core size */ private int threadPoolCore = 10; /** * max thread pool size */ private int threadPoolMax = 200; /** * rpc send buffer size */ private int sendBufferSize = 1048576; /** * rpc receive buffer size */ private int receiveBufferSize = 1048576; /** * activates or deactivates Nagle's algorithm */ private boolean noDelay = true; }