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); } }
public void Unsubscribe() { foreach (var sub in Subscriptions) { if (pubSubMan) { pubSubMan.Unsubscribe(sub.Key, this); } } Subscriptions.Clear(); }
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); }