public Level1Snapshot(SocketClient socketClient, Level1RequestFormatter level1RequestFormatter, Level1MessageHandler level1MessageHandler, int timeoutMs)
 {
     _socketClient           = socketClient;
     _level1RequestFormatter = level1RequestFormatter;
     _level1MessageHandler   = level1MessageHandler;
     _timeoutMs = timeoutMs;
 }
        public static Level1Client CreateNew(string host = IQFeedDefault.Hostname, int port = IQFeedDefault.Level1Port, int snapshotTimeoutMs = Level1Default.SnapshotTimeoutMs)
        {
            var socketClient           = new SocketClient(host, port);
            var level1RequestFormatter = new Level1RequestFormatter();
            var level1MessageHandler   = new Level1MessageHandler();

            return(new Level1Client(
                       socketClient,
                       level1RequestFormatter,
                       level1MessageHandler,
                       new Level1Snapshot(socketClient, level1RequestFormatter, level1MessageHandler, snapshotTimeoutMs)
                       ));
        }
        public static Level1Client CreateNew(string host, int port, TimeSpan snapshotTimeout)
        {
            var socketClient           = new SocketClient(host, port);
            var level1RequestFormatter = new Level1RequestFormatter();
            var level1MessageHandler   = new Level1MessageHandler();

            return(new Level1Client(
                       socketClient,
                       level1RequestFormatter,
                       level1MessageHandler,
                       new Level1Snapshot(socketClient, level1RequestFormatter, level1MessageHandler, snapshotTimeout)
                       ));
        }