Exemplo n.º 1
0
        public void StartWatch(string Symbol, LevelIIUpdateMessageHandler handler)
        {
            LevelIIUpdateMessageHandler mh = null;

            if (htWatchEvents.ContainsKey(Symbol))
            {
                mh  = htWatchEvents[Symbol] as LevelIIUpdateMessageHandler;
                mh += handler;
            }
            else
            {
                mh += handler;
                htWatchEvents.Add(Symbol, mh);
                bs.Send('w' + Symbol + "\n");
            }
        }
Exemplo n.º 2
0
        public void StopWatch(string Symbol, LevelIIUpdateMessageHandler handler)
        {
            LevelIIUpdateMessageHandler mh = null;

            if (htWatchEvents.ContainsKey(Symbol))
            {
                mh  = htWatchEvents[Symbol] as LevelIIUpdateMessageHandler;
                mh -= handler;
                if (null == mh)
                {
                    Console.WriteLine("Stopping watch on {0}", Symbol);
                    bs.Send('r' + Symbol + "\n");
                    htWatchEvents.Remove(Symbol);
                }
            }
        }
Exemplo n.º 3
0
        private void UMessage(BufferArgs args)
        {
            LevelIIUpdateMessage Message;

            try {
                Message = new LevelIIUpdateMessage(args.items);
                if (htWatchEvents.ContainsKey(Message.Symbol))
                {
                    LevelIIUpdateMessageHandler mh = htWatchEvents[Message.Symbol] as LevelIIUpdateMessageHandler;
                    if (null != mh)
                    {
                        mh(this, new LevelIIUpdateMessageEventArgs(Message));
                    }
                }
            }
            catch (Exception e) {
                Console.WriteLine("IQFeedLevelII.UMessage error: " + args.Line);
                Console.WriteLine("  ** Exception {0}", e.ToString());
            }
        }