public FixClient(string targetCompId = Const.TargetCompId, string senderCompId = Const.SenderCompId, string uri = Const.Uri, int port = Const.Port) { var s = new SessionSetting { TargetCompID = targetCompId, SenderCompID = senderCompId, FixConfiguration = new[] { "[DEFAULT]", "ResetOnLogon=Y", "FileStorePath=client", "ConnectionType=initiator", "ReconnectInterval=60", "BeginString=FIX.4.4", @"DataDictionary=ClientFIX44.xml", "SSLEnable=N", @"SSLProtocols=Tls", "SSLValidateCertificates=N", $"SocketConnectPort={port}", "StartTime=00:00:00", "EndTime=00:00:00", "HeartBtInt=10", "LogonTimeout=120", $"SocketConnectHost={uri}", "[SESSION]", } }; _log = new LogToConsole(); var settings = new SessionSettings(s.GetFixConfigAsReader()); var storeFactory = new MemoryStoreFactory(); var logFactory = new LykkeLogFactory(_log, false, false, false); _socketInitiator = new SocketInitiator(this, storeFactory, settings, logFactory); }
public void testSessionSettingsUTF8() { string configuration = new StringBuilder() .AppendLine("[DEFAULT]") .AppendLine("ConnectionType=initiator") .AppendLine("StartTime=00:00:00") .AppendLine("EndTime=00:00:00") .AppendLine("UseDataDictionary=N") .AppendLine("ReconnectInterval=30") .AppendLine("[SESSION]") .AppendLine("BeginString=FIX.4.2") .AppendLine("SenderCompID=Simor") .AppendLine("TargetCompID=Tom") .AppendLine("HeartBtInt=30") .ToString(); SessionID sessionID = new SessionID("FIX.4.2", "Simor", "Tom"); SessionSettings settings = new SessionSettings(new System.IO.StringReader(configuration)); Assert.That(settings.Get(sessionID).Has(SessionSettings.ENCODING), Is.False); SocketInitiator si = new SocketInitiator(new NullApplication(), new MemoryStoreFactory(), settings); si.Start(); var session = Session.LookupSession(sessionID); Assert.That(session.Encoding, Is.EqualTo(Encoding.GetEncoding("utf-8"))); si.Stop(); }
public void Iniciar() { SessionSettings settings = new SessionSettings(this.ArquivoConfiguracao); FileStoreFactory store = new FileStoreFactory(settings); FileLogFactory logs = new FileLogFactory(settings); MessageFactory msgs = new DefaultMessageFactory(); // Cria o socket if (this.EhInitiator) { _socketInitiator = new SocketInitiator( this.AplicacaoFix, store, settings, logs, msgs); _socketInitiator.start(); } else { _socketAcceptor = new SocketAcceptor( this.AplicacaoFix, store, settings, logs, msgs); _socketAcceptor.start(); } // Envia mensagem para aplicação this.AplicacaoFix.Iniciar(); }
public void Parar() { // Log Gradual.OMS.Library.Log.EfetuarLog("HostFix-Parando1", LogTipoEnum.Passagem, "Gradual.OMS.Library"); // Envia mensagem para aplicação this.AplicacaoFix.Parar(); // Log Gradual.OMS.Library.Log.EfetuarLog("HostFix-Parando2", LogTipoEnum.Passagem, "Gradual.OMS.Library"); // Para o socket if (this.EhInitiator) { _socketInitiator.stop(); _socketInitiator.Dispose(); _socketInitiator = null; } else { _socketAcceptor.stop(); _socketAcceptor.Dispose(); _socketAcceptor = null; } // Log Gradual.OMS.Library.Log.EfetuarLog("HostFix-Parando3", LogTipoEnum.Passagem, "Gradual.OMS.Library"); }
public void Start(string settingFile, bool ResendResult) { Stop(); var settings = new SessionSettings(settingFile); Account.GetAccountInfo(settings); if (ResendResult) { foreach (var session in settings.getSessions()) { var dict = settings.get(session as SessionID); var target = dict.getString("FileStorePath") + "\\" + dict.getString("BeginString") + "-" + dict.getString("SenderCompID") + "-" + dict.getString("TargetCompID") + ".seqnums"; try { var s = System.IO.File.ReadAllText(target); var d = s.Remove(s.Length - 10); System.IO.File.WriteAllText(target, d + "0000000001"); } catch (Exception) {} } } cmdproc = SessionFactory.CommandProcessInstance(Account.target, this.AppReport); sock = new SocketInitiator(cmdproc.App, new FileStoreFactory(settings), settings, new DefaultMessageFactory()); sock.start(); }
void StartEngine(bool initiator) { TestApplication application = new TestApplication(LogonCallback, LogoffCallback); IMessageStoreFactory storeFactory = new MemoryStoreFactory(); SessionSettings settings = new SessionSettings(); Dictionary defaults = new Dictionary(); defaults.SetString(QuickFix.SessionSettings.FILE_LOG_PATH, _logPath); // Put IP endpoint settings into default section to verify that that defaults get merged into // session-specific settings not only for static sessions, but also for dynamic ones defaults.SetString(SessionSettings.SOCKET_CONNECT_HOST, Host); defaults.SetString(SessionSettings.SOCKET_CONNECT_PORT, ConnectPort.ToString()); defaults.SetString(SessionSettings.SOCKET_ACCEPT_HOST, Host); defaults.SetString(SessionSettings.SOCKET_ACCEPT_PORT, AcceptPort.ToString()); settings.Set(defaults); ILogFactory logFactory = new FileLogFactory(settings); if (initiator) { defaults.SetString(SessionSettings.RECONNECT_INTERVAL, "1"); settings.Set(CreateSessionID(StaticInitiatorCompID), CreateSessionConfig(StaticInitiatorCompID, true)); _initiator = new SocketInitiator(application, storeFactory, settings, logFactory); _initiator.Start(); } else { settings.Set(CreateSessionID(StaticAcceptorCompID), CreateSessionConfig(StaticAcceptorCompID, false)); _acceptor = new ThreadedSocketAcceptor(application, storeFactory, settings, logFactory); _acceptor.Start(); } }
static void Main() { try { ClientInitiator app = new ClientInitiator(); SessionSettings settings = new SessionSettings(@"C:\Users\anhtv\Desktop\QuickFix\QuickFix\initiator.cfg"); QuickFix.Application application = new ClientInitiator(); FileStoreFactory storeFactory = new FileStoreFactory(settings); ScreenLogFactory logFactory = new ScreenLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); SocketInitiator initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); initiator.start(); Thread.Sleep(3000); System.Collections.ArrayList list = initiator.getSessions(); SessionID sessionID = (SessionID)list[0]; Console.WriteLine("Press any key: "); string x = Console.ReadLine(); QuickFix42.NewOrderSingle order = new QuickFix42.NewOrderSingle(new ClOrdID("Hello"), new HandlInst(HandlInst.AUTOMATED_EXECUTION_ORDER_PRIVATE), new Symbol("ABC"), new Side(Side.SELL), new TransactTime(DateTime.Now), new OrdType(OrdType.MARKET)); bool sent = Session.sendToTarget(order, sessionID); Console.ReadLine(); initiator.stop(); } catch (Exception e) { Console.WriteLine(e.ToString()); Console.ReadLine(); } }
public virtual void PararServico() { logger.Info("Finalizando canal Bovespa"); finalizarSinalizado = true; try { // Para o socket if (_config.Initiator) { _socketInitiator.stop(); _socketInitiator.Dispose(); _socketInitiator = null; } else { _socketAcceptor.stop(); _socketAcceptor.Dispose(); _socketAcceptor = null; } } catch (Exception ex) { logger.Error("Erro em PararServico():" + ex.Message, ex); } finally { _status = ServicoStatus.Parado; } logger.Info("*** Canal Bovespa finalizado ***"); }
private SocketInitiator createInitiator(IApplication app, string encoding) { string initiatorConfiguration = new StringBuilder() .AppendLine("[DEFAULT]") .AppendLine("ConnectionType=initiator") .AppendLine("StartTime=00:00:00") .AppendLine("EndTime=00:00:00") .AppendLine("UseDataDictionary=N") .AppendLine("ReconnectInterval=30") .AppendLine("[SESSION]") .AppendLine("BeginString=FIX.4.2") .AppendLine("SenderCompID=Simor") .AppendLine("TargetCompID=Tom") .AppendLine("HeartBtInt=30") .AppendLine("SocketConnectHost=127.0.0.1") .AppendLine("SocketConnectPort=10000") .AppendLine(encoding != null ? "Encoding=" + encoding : "") .ToString(); SessionSettings settings = new SessionSettings(new System.IO.StringReader(initiatorConfiguration)); SocketInitiator si = new SocketInitiator(app, new MemoryStoreFactory(), settings, null /*new ScreenLogFactory(true, true,true)*/); return(si); }
static void Main(string[] args) { AppLogger = new PerDayFileLogSource(Directory.GetCurrentDirectory() + "\\Log", Directory.GetCurrentDirectory() + "\\Log\\Backup") { FilePattern = "Log.{0:yyyy-MM-dd}.log", DeleteDays = 20 }; string path = ConfigurationManager.AppSettings["InitiatorPath"]; SessionSettings = new SessionSettings(path); FileStoreFactory = new FileStoreFactory(SessionSettings); ScreenLogFactory = new ScreenLogFactory(SessionSettings); MessageFactory = new QuickFix.FIX44.MessageFactory(); Program myProgram = new Program(); Initiator = new SocketInitiator(myProgram, FileStoreFactory, SessionSettings, ScreenLogFactory); Initiator.Start(); Console.WriteLine("Initiator successfully started..."); Console.ReadKey(); }
public void Stop() { if (sock != null) { sock.stop(); sock.Dispose(); sock = null; } }
public void Init(string path) { sessionSettings = new SessionSettings(path); IApplication fixapp = new FixApp(); IMessageStoreFactory storeFactory = new FileStoreFactory(sessionSettings); FileLogFactory logFactory = new FileLogFactory(sessionSettings); initiator = new SocketInitiator(fixapp, storeFactory, sessionSettings, logFactory); }
protected FixTradeSessionConnector(FixConnectorConfiguration config, ILog log) { _config = config; Log = log.CreateComponentScope(GetType().Name); var settings = new SessionSettings(config.FixConfig); var storeFactory = new FileStoreFactory(settings); var logFactory = new LykkeLogFactory(Log, false, false); _socketInitiator = new SocketInitiator(this, storeFactory, settings, logFactory); }
public void Start(IFIXServices fixServices) { this.fixServices = fixServices; this.settings = new SessionSettings(settingsPath); this.storeFactory = new FileStoreFactory(this.settings); this.logFactory = new FileLogFactory(this.settings); this.messageFactory = new DefaultMessageFactory(); this.initiator = new SocketInitiator(this, this.storeFactory, this.settings, this.messageFactory); this.initiator.start(); }
public void Start() { SessionSettings settings = new SessionSettings(ConfigFileName); FileStoreFactory storeFactory = new FileStoreFactory(settings); FileLogFactory logFactory = new FileLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); this.initiator = new SocketInitiator(this, storeFactory, settings, logFactory /*optional*/, messageFactory); this.initiator.start(); }
public TCT_Fix() { settings = new SessionSettings(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "fix", "initiator.cfg")); storeFactory = new FileStoreFactory(settings); logFactory = new FileLogFactory(settings); initiator = new SocketInitiator( this, storeFactory, settings, logFactory); }
public StockQuotesInitiator(string configFile) { Settings = new SessionSettings(configFile); FileStoreFactory storeFactory = new(Settings); FileLogFactory logFactory = new(Settings); DefaultMessageFactory messageFactory = new(); Sessions = Settings.GetSessions(); Application = new ApplicationWrapper(); SocketInitiator = new SocketInitiator(Application, storeFactory, Settings, logFactory, messageFactory); }
public bool StartSession(string strHostName, int nPort, string strSenderCompID, string strTargetCompID, string strPassword) { try { if (!IsPortOpen(strHostName, nPort, new TimeSpan(0, 0, 10))) { return(false); } string strAppDirPath = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath); QuickFix.Dictionary dicConfig = new QuickFix.Dictionary(); dicConfig.SetString("ConnectionType", "initiator"); dicConfig.SetDay("StartDay", DayOfWeek.Sunday); dicConfig.SetString("StartTime", "00:00:00"); dicConfig.SetDay("EndDay", DayOfWeek.Saturday); dicConfig.SetString("EndTime", "00:00:00"); dicConfig.SetDouble("HeartBtInt", 20); dicConfig.SetDouble("ReconnectInterval", 10); dicConfig.SetBool("ResetOnLogout", true); dicConfig.SetBool("ResetOnLogon", true); dicConfig.SetBool("ResetOnDisconnect", true); dicConfig.SetBool("ResetSeqNumFlag", true); dicConfig.SetDouble("EncryptMethod", 0); dicConfig.SetBool("CheckLatency", false); dicConfig.SetString("FileStorePath", strAppDirPath + "/Store/Ctrader_Price"); dicConfig.SetString("FileLogPath", strAppDirPath + "/Log"); dicConfig.SetBool("UseDataDictionary", true); dicConfig.SetString("DataDictionary", strAppDirPath + "/Settings/FIX44-OneZero.xml"); dicConfig.SetBool("ScreenLogShowIncoming", false); dicConfig.SetBool("ScreenLogShowOutgoing", false); dicConfig.SetString("Password", strPassword); SessionID quoteSessionID = new SessionID("FIX.4.4", strSenderCompID, strTargetCompID); QuickFix.Dictionary dicQuoteSession = new QuickFix.Dictionary(); dicQuoteSession.SetString("SocketConnectHost", strHostName); dicQuoteSession.SetDouble("SocketConnectPort", nPort); settings = new SessionSettings(); settings.Set(dicConfig); settings.Set(quoteSessionID, dicQuoteSession); FileStoreFactory storeFactory = new FileStoreFactory(settings); ScreenLogFactory logFactory = new ScreenLogFactory(settings); initiator = new SocketInitiator(this, storeFactory, settings, logFactory); initiator.Start(); return(true); } catch (System.Exception e) { Console.WriteLine(e.Message); return(false); } }
public JfdQuotesSessionConnector(FixConnectorConfiguration config, ILog log) { _config = config; _log = log.CreateComponentScope(GetType().Name); var settings = new SessionSettings(config.FixConfig); var storeFactory = new FileStoreFactory(settings); var logFactory = new LykkeLogFactory(_log, false, false); _socketInitiator = new SocketInitiator(this, storeFactory, settings, logFactory); RechargeQuotesTcs(); }
public static void Run(bool isLive = false) { SessionSettings settings = new SessionSettings(YJYGlobal.GetConfigurationSetting("ayondoFixFeedCfgFilePath")); myApp = new AyondoFixFeedApp(YJYGlobal.GetConfigurationSetting("ayondoFixFeedUsername"), YJYGlobal.GetConfigurationSetting("ayondoFixFeedPassword")); IMessageStoreFactory storeFactory = new MemoryStoreFactory(); //new FileStoreFactory(settings); //ILogFactory logFactory = new FileLogFactory(settings); SocketInitiator initiator = new SocketInitiator(myApp, storeFactory, settings, null //logFactory ); //var redisClient = YJYGlobal.BasicRedisClientManager.GetClient(); //var redisProdDefClient = redisClient.As<ProdDef>(); //var redisTickClient = redisClient.As<Tick>(); initiator.Start(); // This will *ONLY* bind to localhost, if you want to bind to all addresses // use http://*:8080 to bind to all addresses. // See http://msdn.microsoft.com/library/system.net.httplistener.aspx // for more information. string url = "http://*:39680"; var start = WebApp.Start(url); Trace.Listeners.Remove("HostingTraceListener");//remove the trace listener that OWIN added Console.WriteLine("Server running on {0}", url); //Console.ReadLine(); //run tasks in NEW threads _timerProdDefs = new Timer(SaveProdDefs, null, _intervalProdDefs, TimeSpan.FromMilliseconds(-1)); _timerProdDefRequest = new Timer(SendProdDefRequest, null, _intervalProdDefRequest, TimeSpan.FromMilliseconds(-1)); _timerQuotes = new Timer(SaveQuotes, null, _intervalQuotes, TimeSpan.FromMilliseconds(-1)); _timerRawTicks = new Timer(SaveRawTicks, null, _intervalRawTicks, TimeSpan.FromMilliseconds(-1)); _timerTicks = new Timer(SaveTicks, null, _intervalTicks, TimeSpan.FromMilliseconds(-1)); _timerKLines = new Timer(SaveKLine, null, _intervalKLine, TimeSpan.FromMilliseconds(-1)); _timerQuoteBroadcast = new Timer(QuoteBroadcast, null, _intervalQuoteBroadcast, TimeSpan.FromMilliseconds(-1)); while (true) { //System.Console.WriteLine("o hai"); System.Threading.Thread.Sleep(1000); } //initiator.Stop(); }
public static void Initialize(string settingsFilePath, Router router, FixSessionStatusChangedDelegate sessionStatus) { _FixSessionStatusChangedDelegate = sessionStatus; _router = router; SessionSettings settings = new SessionSettings(settingsFilePath); ClientApp application = new ClientApp(); FileStoreFactory storeFactory = new FileStoreFactory(settings); //logFactory = new ScreenLogFactory(settings); FileLogFactory logFactory = new FileLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); _initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); }
static SessionID StartFixSession(SocketInitiator initiator) { System.Collections.ArrayList list = initiator.getSessions(); SessionID sessionID = (SessionID)list[0]; Session.lookupSession(sessionID).logon(); while (!Session.lookupSession(sessionID).isLoggedOn()) { Thread.Sleep(1000); } return(sessionID); }
public static void Initialize(string settingsFilePath, IRouter router, FixSessionStatusChangedDelegate sessionStatus) { m_FixSessionStatusChangedDelegate = sessionStatus; m_filePath = settingsFilePath; settings = new SessionSettings(m_filePath); application = new Application(m_initiator, router, m_FixSessionStatusChangedDelegate); storeFactory = new FileStoreFactory(settings); //logFactory = new ScreenLogFactory(settings); FileLogFactory logFactory = new FileLogFactory(settings); messageFactory = new DefaultMessageFactory(); m_initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); //m_initiator = new SocketInitiator(application, storeFactory, settings, messageFactory); }
/// <summary> /// .ctor /// </summary> public SpectraFixConnector(SpectraFixSettings settings) { _settings = settings; ConnectionStatusProviders = new IConnectionStatusProvider[] { this }; _newOrderTransactions = new TransactionContainer(SendMessage); _killOrderTransactions = new TransactionContainer(SendMessage); _modifyOrderTransactions = new TransactionContainer(SendMessage); var fixSettings = settings.CreateSessionSettings(); _sessionId = fixSettings.GetSessions().First(); _initiator = new SocketInitiator(this, new MemoryStoreFactory(), fixSettings, new LogFactory()); }
static void messageSender(String[] messages, string configFile, string TagsDelimiter) { SocketInitiator initiator = StartSocketInitiator(configFile); SessionID sessionID = StartFixSession(initiator); string[] allDealInst = new string[messages.Length]; for (int i = 0; i < messages.Length; i++) { allDealInst[i] = sendFixMessage(sessionID, TagsDelimiter, messages[i]); } WriteOutputData(String.Join("\n", allDealInst)); //Console.ReadLine(); initiator.stop(); }
static void Main(string[] args) { SessionSettings settings = new SessionSettings("SessionConfig.cfg"); //load config file IApplication myApp = new MyFixApplication(); IMessageStoreFactory storeFactory = new FileStoreFactory(settings); ILogFactory logFactory = new FileLogFactory(settings); SocketInitiator fixClient = new SocketInitiator( myApp, storeFactory, settings, logFactory); fixClient.Start(); // start connecting to FIX Aceptor Console.ReadLine(); //press Enter to stop Fix Client fixClient.Stop(); }
static SocketInitiator StartSocketInitiator(String configFile) { ClientInitiator app = new ClientInitiator(); SessionSettings settings = new SessionSettings(configFile); QuickFix.Application application = new ClientInitiator(); FileStoreFactory storeFactory = new FileStoreFactory(settings); ScreenLogFactory logFactory = new ScreenLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); SocketInitiator initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); initiator.start(); Thread.Sleep(3000); return(initiator); }
public void initInitiator(string file) { SessionSettings settings = new SessionSettings(file); IMessageStoreFactory storeFactory = new FileStoreFactory(settings); ILogFactory logFactory = new FileLogFactory(settings); SocketInitiator initiator = new SocketInitiator( this, storeFactory, settings, logFactory ); initiator.Start(); Run(); initiator.Stop(); }
public FixDataAccess(ISqlDataAccess sql) { _sql = sql; string file = AppDomain.CurrentDomain.BaseDirectory + @"\Internal\FixAccess\tradeclient.cfg"; SessionSettings settings = new SessionSettings(file); fixApp = new QuickFixApp(); fixApp.FillReceived += FixApp_FillReceived; IMessageStoreFactory storeFactory = new FileStoreFactory(settings); ILogFactory logFactory = new FileLogFactory(settings); SocketInitiator initiator = new SocketInitiator( fixApp, storeFactory, settings, logFactory); initiator.Start(); }
public void TearDown() { if (_listenSocket != null) { _listenSocket.Close(); } if (_initiator != null) { _initiator.Stop(true); } if (_acceptor != null) { _acceptor.Stop(true); } _initiator = null; _acceptor = null; }
private FixProxyServer() { quoteRequest = new QuoteRequest(); FileStoreFactory mesStoreFact; DefaultMessageFactory mesFact; SessionSettings sets; try { sets = new SessionSettings(string.Format("{0}\\{1}", ExecutablePath.ExecPath, SessionSettingsParser.SessionSettingsFileName)); SessionSettingsParser.Init(string.Format("{0}\\{1}", ExecutablePath.ExecPath, SessionSettingsParser.SessionSettingsFileName)); app = new FixApplication(); app.processMessageFromBroker += MessageDispatcher.ProcessMessageFromBroker; mesStoreFact = new FileStoreFactory(string.Format("{0}\\log", ExecutablePath.ExecPath)); mesFact = new DefaultMessageFactory(); app.OnSessionLogon += AppOnSessionLogon; } catch (Exception ex) { Logger.Error("SocketInitiator pre-create error", ex); throw; } try { initiator = new SocketInitiator(app, mesStoreFact, sets, mesFact); } catch (Exception ex) { Logger.Error("SocketInitiator create error", ex); throw; } }
public FixApplication(String configFile) { try { logonCount = 0; Current = this; settings = new SessionSettings(configFile); storeFactory = new FileStoreFactory(settings); logFactory = new FileLogFactory(settings); messageFactory = new DefaultMessageFactory(); SetSessionIndexes(configFile); initiator = new SocketInitiator(this, storeFactory, settings, logFactory, messageFactory); initiator.start(); AddText("Created initiator." + Environment.NewLine); } catch (Exception exception) { AddText(exception.Message + Environment.NewLine); throw; } }
static void Main(string[] args) { String configFile = "SchneiderBen.cfg"; try { SessionSettings settings = new SessionSettings(configFile); FixApplication application = new FixApplication(); FileStoreFactory storeFactory = new FileStoreFactory(settings); ScreenLogFactory logFactory = new ScreenLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); SocketInitiator initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); initiator.start(); Console.WriteLine("press <enter> to quit"); Console.Read(); initiator.stop(); } catch (Exception e) { Console.WriteLine(e); } }
static SessionID StartFixSession(SocketInitiator initiator) { System.Collections.ArrayList list = initiator.getSessions(); SessionID sessionID = (SessionID)list[0]; Session.lookupSession(sessionID).logon(); while (!Session.lookupSession(sessionID).isLoggedOn()) { Thread.Sleep(1000); } return sessionID; }
static SocketInitiator StartSocketInitiator(String configFile) { ClientInitiator app = new ClientInitiator(); SessionSettings settings = new SessionSettings(configFile); QuickFix.Application application = new ClientInitiator(); FileStoreFactory storeFactory = new FileStoreFactory(settings); ScreenLogFactory logFactory = new ScreenLogFactory(settings); MessageFactory messageFactory = new DefaultMessageFactory(); SocketInitiator initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory); initiator.start(); Thread.Sleep(3000); return initiator; }