本文整理汇总了C#中jabber.GetGroups方法的典型用法代码示例。如果您正苦于以下问题:C# jabber.GetGroups方法的具体用法?C# jabber.GetGroups怎么用?C# jabber.GetGroups使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类jabber
的用法示例。
在下文中一共展示了jabber.GetGroups方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: m_roster_OnRosterItem
private void m_roster_OnRosterItem(object sender, jabber.protocol.iq.Item ri)
{
bool remove = (ri.Subscription == Subscription.remove);
LinkedList nodelist = (LinkedList)m_items[ri.JID.ToString()];
if (nodelist == null)
{
// First time through.
if (!remove)
{
nodelist = new LinkedList();
m_items.Add(ri.JID.ToString(), nodelist);
}
}
else
{
// update to an existing item. remove all of them, and start over.
foreach (ItemNode i in nodelist)
{
GroupNode gn = i.Parent as GroupNode;
i.Remove();
if ((gn != null) && (gn.Nodes.Count == 0))
{
m_groups.Remove(gn.GroupName);
gn.Remove();
}
}
nodelist.Clear();
if (remove)
m_items.Remove(ri.JID.ToString());
}
if (remove)
return;
// add the new ones back
Hashtable ghash = new Hashtable();
Group[] groups = ri.GetGroups();
for (int i=groups.Length-1; i>=0; i--)
{
if (groups[i].GroupName == "")
groups[i].GroupName = UNFILED;
}
if (groups.Length == 0)
{
groups = new Group[] { new Group(ri.OwnerDocument) };
groups[0].GroupName = UNFILED;
}
foreach (Group g in groups)
{
GroupNode gn = AddGroupNode(g);
// might have the same group twice.
if (ghash.Contains(g.GroupName))
continue;
ghash.Add(g.GroupName, g);
ItemNode i = new ItemNode(ri);
i.ChangePresence(m_pres[ri.JID]);
nodelist.Add(i);
gn.Nodes.Add(i);
}
}
示例2: k_OnRosterItem
void k_OnRosterItem(object sender, jabber.protocol.iq.Item ri)
{
if (users.ContainsKey(ri.JID.User))
{
if (ri.Subscription == jabber.protocol.iq.Subscription.remove)
{
users[ri.JID.User].status = null;
if (UserChanged != null)
UserChanged(users[ri.JID.User]);
users.Remove(ri.JID.User);
}
else
{
User us = users[ri.JID.User];
us.Nickname = ri.Nickname;
us.Group = ri.GetGroups().First().GroupName;
us.item = ri;
}
}
else
{
User us = new User(ri.JID.User, ri.Nickname, ri.GetGroups().First().GroupName, "", ri);
users.Add(ri.JID.User, us);
}
}