public void AddListener(ILdpPacketHandler listener)
 {
     if (!listeners.Contains(listener))
     {
         listeners.Add(listener);
     }
 }
 public void RemoveListener(ILdpPacketHandler listener)
 {
     if (listeners.Contains(listener))
     {
         listener.Dispose();
         listeners.Remove(listener);
         LdpLog.Info(String.Format("Listener removed: {0}.", listener.GetType()));
         listener = null;
     }
 }
 public void RemoveListener(ILdpPacketHandler listener)
 {
     if (listeners.Contains(listener))
     {
         listener.Dispose();
         listeners.Remove(listener);
         LdpLog.Info(String.Format("Listener removed: {0}.", listener.GetType()));
         listener = null;
     }
 }
 public void NotifyToAllListeners(LdpPacket packet)
 {
     if (listeners != null && listeners.Count != 0)
     {
         foreach (var listener in listeners.ToList())
         {
             ILdpPacketHandler ipl = (ILdpPacketHandler)listener;
             ipl.Handle(packet);
         }
     }
 }
 public void AddListener(ILdpPacketHandler listener)
 {
     if (!listeners.Contains(listener))
         listeners.Add(listener);
 }