tigase.xmpp.impl
public class Presence extends XMPPProcessor implements XMPPProcessorIfc, XMPPStopListenerIfc
| Modifier and Type | Field and Description |
|---|---|
static String |
DIRECT_PRESENCE
DIRECT_PRESENCE is a key in temporary session data for the
collection of JIDs where direct presence was sent. |
static String |
OFFLINE_BUD_SENT
Field description
|
static String |
OFFLINE_RES_SENT
Field description
|
static String |
OFFLINE_ROSTER_LAST_SEEN_PROP_KEY
Field description
|
static String |
PRESENCE_ELEMENT_NAME
Field description
|
static String |
PRESENCE_GLOBAL_FORWARD
Field description
|
protected RosterAbstract |
roster_util
Field description
|
static String |
SKIP_OFFLINE_PROP_KEY
Field description
|
static String |
USERS_STATUS_CHANGES
Field description
|
protected static String |
XMLNS
Field description
|
ALL_NAMES, ALL_PATHSCLIENT_XMLNS| Constructor and Description |
|---|
Presence() |
| Modifier and Type | Method and Description |
|---|---|
static void |
addDirectPresenceJID(tigase.xmpp.JID jid,
XMPPResourceConnection session)
Method description
|
protected static void |
broadcastDirectPresences(StanzaType t,
XMPPResourceConnection session,
Queue<Packet> results,
tigase.xml.Element pres)
Method description
|
static void |
broadcastOffline(XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract roster_util)
sendPresenceBroadcast method broadcasts given presence to all
buddies from roster and to all users to which direct presence was sent. |
void |
broadcastProbe(XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings)
sendPresenceBroadcast method broadcasts given presence to all
budies from roster and to all users to which direct presence was sent. |
protected void |
buddyOnline(XMPPResourceConnection session,
tigase.xmpp.JID buddy,
Queue<Packet> results,
boolean online)
Method description
|
int |
concurrentQueuesNo()
Method description
|
protected static void |
forwardPresence(Queue<Packet> results,
Packet packet,
tigase.xmpp.JID from)
Method description
|
protected RosterAbstract |
getRosterUtil()
Method description
|
void |
getStatistics(StatisticsList list)
Method description
|
String |
id()
Method description
|
void |
init(Map<String,Object> settings)
Method description
|
void |
process(Packet packet,
XMPPResourceConnection session,
NonAuthUserRepository repo,
Queue<Packet> results,
Map<String,Object> settings)
Method description
|
protected void |
processError(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType presenceType)
Method description
|
protected void |
processInInitial(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType presenceType)
Method description
|
protected void |
processInProbe(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType presenceType)
Method description
|
protected void |
processInSubscribe(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
protected void |
processInSubscribed(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
protected void |
processInUnsubscribe(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
protected void |
processInUnsubscribed(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
protected void |
processOutInitial(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType type)
Method description
|
protected void |
processOutSubscribe(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
protected void |
processOutSubscribed(Packet packet,
XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings,
RosterAbstract.PresenceType pres_type)
Method description
|
static void |
removeDirectPresenceJID(tigase.xmpp.JID jid,
XMPPResourceConnection session)
Method description
|
void |
resendPendingInRequests(XMPPResourceConnection session,
Queue<Packet> results)
Method description
|
static void |
sendPresence(StanzaType t,
tigase.xmpp.BareJID from,
tigase.xmpp.BareJID to,
Queue<Packet> results,
tigase.xml.Element pres)
Method description
|
static Packet |
sendPresence(StanzaType t,
tigase.xmpp.JID from,
tigase.xmpp.JID to,
Queue<Packet> results,
tigase.xml.Element pres)
Method description
|
static void |
sendPresenceBroadcast(StanzaType t,
XMPPResourceConnection session,
EnumSet<RosterAbstract.SubscriptionType> subscrs,
Queue<Packet> results,
tigase.xml.Element pres,
Map<String,Object> settings,
RosterAbstract roster_util)
sendPresenceBroadcast method broadcasts given presence to all
buddies from roster and to all users to which direct presence was sent. |
protected void |
sendRosterOfflinePresence(XMPPResourceConnection session,
Queue<Packet> results)
Method sends server generated presence unavailable for all buddies from the
roster with a custom status message.
|
void |
stopped(XMPPResourceConnection session,
Queue<Packet> results,
Map<String,Object> settings)
stopped method is called when user disconnects or logs-out. |
String[][] |
supElementNamePaths()
Method description
|
String[] |
supNamespaces()
Method description
|
protected static void |
updateOfflineChange(XMPPResourceConnection session,
Queue<Packet> results)
updateOfflineChange method broadcast off-line presence to all
other user active resources. |
static void |
updatePresenceChange(Packet presence,
XMPPResourceConnection session,
Queue<Packet> results)
updatePresenceChange method is used to broadcast to all active
resources presence stanza received from other users, like incoming
availability presence, subscription presence and so on... |
static void |
updateUserResources(tigase.xml.Element presence,
XMPPResourceConnection session,
Queue<Packet> results,
boolean initial)
updateUserResources method is used to broadcast to all
other resources presence stanza from one user resource. |
canHandle, compareTo, concurrentThreadsPerQueue, getInstance, isSupporting, supDiscoFeatures, supElements, supStreamFeatures, supTypesclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcanHandle, concurrentThreadsPerQueue, isSupporting, supDiscoFeatures, supElements, supStreamFeatures, supTypescompareTopublic static final String DIRECT_PRESENCE
DIRECT_PRESENCE is a key in temporary session data for the
collection of JIDs where direct presence was sent. To all these addresses
unavailable presence must be sent when user disconnects.public static final String OFFLINE_BUD_SENT
public static final String OFFLINE_RES_SENT
public static final String OFFLINE_ROSTER_LAST_SEEN_PROP_KEY
public static final String PRESENCE_ELEMENT_NAME
public static final String PRESENCE_GLOBAL_FORWARD
public static final String SKIP_OFFLINE_PROP_KEY
public static final String USERS_STATUS_CHANGES
protected static final String XMLNS
protected RosterAbstract roster_util
public static void addDirectPresenceJID(tigase.xmpp.JID jid,
XMPPResourceConnection session)
jid - session - public static void broadcastOffline(XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract roster_util) throws NotAuthorizedException, TigaseDBException
sendPresenceBroadcast method broadcasts given presence to all
buddies from roster and to all users to which direct presence was sent.session - a XMPPResourceConnection valueresults - settings - roster_util - NotAuthorizedException - if an error occursTigaseDBExceptionpublic static void removeDirectPresenceJID(tigase.xmpp.JID jid,
XMPPResourceConnection session)
jid - session - public static void sendPresence(StanzaType t, tigase.xmpp.BareJID from, tigase.xmpp.BareJID to, Queue<Packet> results, tigase.xml.Element pres)
t - from - to - results - pres - public static Packet sendPresence(StanzaType t, tigase.xmpp.JID from, tigase.xmpp.JID to, Queue<Packet> results, tigase.xml.Element pres)
t - from - to - results - pres - public static void sendPresenceBroadcast(StanzaType t, XMPPResourceConnection session, EnumSet<RosterAbstract.SubscriptionType> subscrs, Queue<Packet> results, tigase.xml.Element pres, Map<String,Object> settings, RosterAbstract roster_util) throws NotAuthorizedException, TigaseDBException
sendPresenceBroadcast method broadcasts given presence to all
buddies from roster and to all users to which direct presence was sent.t - a StanzaType valuesession - a XMPPResourceConnection valuesubscrs - results - pres - an Element valuesettings - roster_util - NotAuthorizedException - if an error occursTigaseDBExceptionpublic static void updatePresenceChange(Packet presence, XMPPResourceConnection session, Queue<Packet> results) throws NotAuthorizedException
updatePresenceChange method is used to broadcast to all active
resources presence stanza received from other users, like incoming
availability presence, subscription presence and so on... Initial presences
are however sent only to those resources which already have sent initial
presence.presence - an Element presence received from other users, we
have to change 'to' attribute to full resource JID.session - a XMPPResourceConnection value keeping connection
session object.results - NotAuthorizedException - if an error occurspublic void getStatistics(StatisticsList list)
getStatistics in interface XMPPImplIfcgetStatistics in class XMPPProcessorlist - public static void updateUserResources(tigase.xml.Element presence,
XMPPResourceConnection session,
Queue<Packet> results,
boolean initial)
throws NotAuthorizedException
updateUserResources method is used to broadcast to all
other resources presence stanza from one user resource. So
if new resource connects this method updates presence information about new
resource to old resources and about old resources to new resource.presence - an Element presence received from other users, we
have to change 'to' attribute to full resource JID.session - a XMPPResourceConnection value keeping connection
session object.results - initial - NotAuthorizedException - if an error occursprotected static void broadcastDirectPresences(StanzaType t, XMPPResourceConnection session, Queue<Packet> results, tigase.xml.Element pres) throws NotAuthorizedException, TigaseDBException
t - session - results - pres - NotAuthorizedExceptionTigaseDBExceptionprotected static void forwardPresence(Queue<Packet> results, Packet packet, tigase.xmpp.JID from)
results - packet - from - protected static void updateOfflineChange(XMPPResourceConnection session, Queue<Packet> results) throws NotAuthorizedException
updateOfflineChange method broadcast off-line presence to all
other user active resources.session - a XMPPResourceConnection valueresults - NotAuthorizedException - if an error occurspublic void broadcastProbe(XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings) throws NotAuthorizedException, TigaseDBException
sendPresenceBroadcast method broadcasts given presence to all
budies from roster and to all users to which direct presence was sent.session - a XMPPResourceConnection valueresults - settings - NotAuthorizedException - if an error occursTigaseDBExceptionpublic int concurrentQueuesNo()
concurrentQueuesNo in interface XMPPImplIfcconcurrentQueuesNo in class XMPPProcessorpublic String id()
id in interface XMPPImplIfcpublic void init(Map<String,Object> settings) throws TigaseDBException
init in interface XMPPImplIfcinit in class XMPPProcessorsettings - TigaseDBExceptionpublic void process(Packet packet, XMPPResourceConnection session, NonAuthUserRepository repo, Queue<Packet> results, Map<String,Object> settings) throws XMPPException
process in interface XMPPProcessorIfcpacket - session - repo - results - settings - XMPPExceptionpublic void resendPendingInRequests(XMPPResourceConnection session, Queue<Packet> results) throws NotAuthorizedException, TigaseDBException
session - results - NotAuthorizedExceptionTigaseDBExceptionpublic void stopped(XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings)
stopped method is called when user disconnects or logs-out.stopped in interface XMPPStopListenerIfcsession - a XMPPResourceConnection valueresults - settings - public String[][] supElementNamePaths()
supElementNamePaths in interface XMPPImplIfcsupElementNamePaths in class XMPPProcessorpublic String[] supNamespaces()
supNamespaces in interface XMPPImplIfcsupNamespaces in class XMPPProcessorprotected RosterAbstract getRosterUtil()
protected void processError(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType presenceType) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - presenceType - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processInInitial(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType presenceType) throws NoConnectionIdException, NotAuthorizedException, TigaseDBException
packet - session - results - settings - presenceType - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processInProbe(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType presenceType) throws NotAuthorizedException, TigaseDBException, PacketErrorTypeException
packet - session - results - settings - presenceType - NotAuthorizedExceptionPacketErrorTypeExceptionTigaseDBExceptionprotected void processInSubscribe(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processInSubscribed(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processInUnsubscribe(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processInUnsubscribed(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void sendRosterOfflinePresence(XMPPResourceConnection session, Queue<Packet> results) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
session - results - TigaseDBExceptionNotAuthorizedExceptionNoConnectionIdExceptionprotected void processOutInitial(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType type) throws NotAuthorizedException, TigaseDBException
packet - session - results - settings - type - NotAuthorizedExceptionTigaseDBExceptionprotected void processOutSubscribe(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void processOutSubscribed(Packet packet, XMPPResourceConnection session, Queue<Packet> results, Map<String,Object> settings, RosterAbstract.PresenceType pres_type) throws NotAuthorizedException, TigaseDBException, NoConnectionIdException
packet - session - results - settings - pres_type - NoConnectionIdExceptionNotAuthorizedExceptionTigaseDBExceptionprotected void buddyOnline(XMPPResourceConnection session, tigase.xmpp.JID buddy, Queue<Packet> results, boolean online) throws NotAuthorizedException, TigaseDBException
session - buddy - results - online - NotAuthorizedExceptionTigaseDBExceptionCopyright © 2013 Tigase. All rights reserved.