public void AddListener(IPushNewInfo listener, string hostname)
        {
            if (!listeners.Keys.Contains(hostname.ToUpper()))
            {
                listeners.Add(hostname.ToUpper(), new List <IPushNewInfo>());
            }

            listeners[hostname.ToUpper()].Add(listener);
        }
        public void RemoveListener(IPushNewInfo listener, string hostname)
        {
            if (listeners.Keys.Contains(hostname.ToUpper()))
            {
                listeners[hostname.ToUpper()].Remove(listener);

                if (listeners[hostname.ToUpper()].Count == 0)
                {
                    listeners.Remove(hostname.ToUpper());
                }
            }
        }