Example #1
0
        /// <summary>
        ///     Запуск транспорта
        /// </summary>
        public void Start()
        {
            if (_initiator.IsLoggedOn)
            {
                return;
            }

            _Log.Info().Print("Connecting to Spectra FIX gate...");
            ChangeConnectionStatus(ConnectionStatus.Connecting);

            _loggedIn.Reset();
            _loggedOut.Reset();

            _initiator.Start();

            var i = WaitHandle.WaitAny(new[] { _loggedIn.WaitHandle, _loggedOut.WaitHandle });

            if (i != 0)
            {
                _initiator.Stop(force: true);
                _Log.Error().Print("Failed to connect to Spectra FIX gate");
                ChangeConnectionStatus(ConnectionStatus.Disconnected);
                return;
            }

            ChangeConnectionStatus(ConnectionStatus.Connected);
            _Log.Info().Print("Connected to Spectra FIX gate");
        }
        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 EndSession()
 {
     foreach (SessionID sessionId in initiator.GetSessionIDs())
     {
         Session.LookupSession(sessionId).Logout("User Requested");
     }
     initiator.Stop();
 }
Example #4
0
 public Task StopAsync(CancellationToken cancellationToken)
 {
     if (State == FixConnectorState.Connecting || State == FixConnectorState.Connected)
     {
         _socketInitiator?.Stop();
     }
     State = FixConnectorState.Disconnected;
     return(Task.CompletedTask);
 }
 public void Stop()
 {
     lock (RejectLock)
     {
         foreach (var request in _rejectList)
         {
             request.Value.Reject("Connector closed");
         }
     }
     _socketInitiator?.Stop();
 }
Example #6
0
 public void Stop()
 {
     _socketInitiator.Stop();
     for (var i = 0; i < 10; i++)
     {
         if (!_socketInitiator.IsLoggedOn)
         {
             return;
         }
         Thread.Sleep(500);
     }
 }
Example #7
0
        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();
        }
Example #8
0
        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 void TearDown()
        {
            if (_listenSocket != null)
            {
                _listenSocket.Close();
            }
            if (_initiator != null)
            {
                _initiator.Stop(true);
            }
            if (_acceptor != null)
            {
                _acceptor.Stop(true);
            }

            _initiator = null;
            _acceptor  = null;
        }
        public void TearDown()
        {
            if (_listenSocket != null)
            {
                _listenSocket.Close();
            }
            if (_initiator != null)
            {
                _initiator.Stop(true);
            }
            if (_acceptor != null)
            {
                _acceptor.Stop(true);
            }

            _initiator = null;
            _acceptor  = null;

            Thread.Sleep(500);
            ClearLogs();
        }
Example #11
0
        static void Main(string[] args)
        {
            var configClient = AppDomain.CurrentDomain.BaseDirectory + "\\sample_initiator.cfg";

            SessionSettings settings = new SessionSettings(configClient);

            IMessageStoreFactory storeFactory = new FileStoreFactory(settings);

            ILogFactory logFactory = new FileLogFactory(settings);

            var client = new TradeInitiator();

            SocketInitiator initiator = new SocketInitiator(
                client,
                storeFactory,
                settings,
                logFactory);

            initiator.Start();

            client.Run();

            initiator.Stop();
        }
Example #12
0
 public void Stop()
 {
     socketInitiator.Stop();
 }