Пример #1
0
        public void Unsubscribe(string node)
        {
            IEnumerator <SubNodeHandler> iter = m_subNH.GetEnumerator();
            SubNodeHandler snh = null;

            while (iter.MoveNext())
            {
                if (iter.Current.Node == node)
                {
                    snh = iter.Current;
                    break;
                }
            }

            if (snh != null)
            {
                m_psMgr.OnEvent -= new EventHandler <MessageEventArgs>(snh.Handler);
                m_psMgr.Unsubscribe(m_psJid, snh.Node, m_user + "@" + m_server);
                m_subNH.Remove(snh);
            }
            else
            {
                m_psMgr.Unsubscribe(m_psJid, node, m_user + "@" + m_server);
            }
        }
Пример #2
0
 public void Unsubscribe()
 {
     foreach (var sub in Subscriptions)
     {
         if (pubSubMan)
         {
             pubSubMan.Unsubscribe(sub.Key, this);
         }
     }
     Subscriptions.Clear();
 }
Пример #3
0
        public override async Task <string> HandleMessage(WebSocketConnection connection, BinaryReader reader)
        {
            int count = Math.Min(reader.ReadInt32(), 256);

            for (int i = 0; i < count; i++)
            {
                Guid targetID = ReadMinecraftUUIDFromBinaryReader(reader);

                PubSubManager.Unsubscribe(targetID, connection.playerID);
            }

            return(string.Empty);
        }