Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

edu.ou.kmi.buddyspace.core
Class BSPresenceBean  view BSPresenceBean download BSPresenceBean.java

java.lang.Object
  extended byedu.ou.kmi.buddyspace.core.BSPresenceBean
All Implemented Interfaces:
org.jabber.jabberbeans.ConnectionListener, org.jabber.jabberbeans.PacketListener

public class BSPresenceBean
extends java.lang.Object
implements org.jabber.jabberbeans.PacketListener, org.jabber.jabberbeans.ConnectionListener

BSPresenceBean provides presence handling. It relies on BSConnectionBean, which must be set after each reconnection.


Field Summary
protected  boolean connected
           
protected  org.jabber.jabberbeans.ConnectionBean connection
           
protected  java.util.Hashtable curPresences
           
protected  JID myJID
           
protected  java.lang.String name
           
protected  java.util.Vector presenceListeners
           
 
Constructor Summary
(package private) BSPresenceBean()
          Constructor
(package private) BSPresenceBean(org.jabber.jabberbeans.ConnectionBean connection)
          Constructor, which sets existing and connected ConnectionBean.
 
Method Summary
 void addPresenceListener(BSPresenceListener listener)
          Adds BSPresenceListener to listeners notified when presence state of some of buddies changes.
 void clear()
          Clears the current presences.
 void connectionChanged(ConnectionEvent ce)
          Invoked when connection changes.
 java.util.Enumeration entries()
          Returns Enumeration of current presences.
private  void firePresenceChanged(BSPresenceInfo pi)
          Notifies presence listeners about presence state of some of buddies change.
private  void firePresenceError(org.jabber.jabberbeans.Presence p)
          Notifies presence listeners about presence error.
private  void firePresencesCleared()
          Notifies presence listeners about clearing of all presences.
private  void fireSubscriptionApproved(JID jid)
          Notifies presence listeners about presence subscription confirmation.
private  void fireSubscriptionRequested(JID jid)
          Notifies presence listeners about presence subscription request.
 java.util.Enumeration getAllPresences(JID jid)
          Returns Enumeration of BSPresenceInfos for all resources of specified JID.
protected  org.jabber.jabberbeans.ConnectionBean getConnection()
          Returns currently used ConnectionBean.
static java.lang.String getJIDHashString(JID jid, boolean useResource)
          Returns string used as a key in roster hashtable.
protected  BSPresencesOfJID getJIDPresences(JID jid)
          Returns BSPresencesOfJID for given JID.
static JID getJidWithoutRes(JID jid)
          Returns JID without resource.
 java.util.Enumeration getMyResourcesPresences()
          Returns Enumeration of BSPresenceInfos for all my resources except this one.
 BSPresenceInfo getPresence(JID jid)
          Returns BSPresenceInfo for specified JID without resource.
 BSPresenceInfo getResourcePresence(JID jid)
          Returns BSPresenceInfo for specified JID with resource.
 boolean isConnected()
          Returns if connected.
protected  void prepareToDestroy()
          Frees all object bindings to allow object destroy
 void receivedPacket(PacketEvent pe)
          Invoked when a packet arrives.
 void removeAllPresenceListeners()
          Removes all listeners notified when presence state of some of buddies changes.
 void removePresenceListener(BSPresenceListener listener)
          Removes BSPresenceListener to listeners notified when presence state of some of buddies changes.
 void sendFailed(PacketEvent pe)
          Invoked when a packet send failes.
 void sendPresence(BSPresenceInfo pi, JID toAddress)
          Sends given presence to given JID
 void sendSubscriptionApproved(JID jid)
          Sends subscription confirmation to given JID.
 void sendSubscriptionRequest(JID jid)
          Sends subscription request to given JID.
 void sentPacket(PacketEvent pe)
          Invoked when a packet is sent.
protected  void setConnection(org.jabber.jabberbeans.ConnectionBean connection)
          Sets existing and connected ConnectionBean.
 void setMyJID(JID jid)
          Sets current JID.
 void setMyPresence(boolean available, java.lang.String show, java.lang.String status, int priority)
          Sets current presence and sends it to server.
 void setPresence(JID jid, boolean available, java.lang.String show, java.lang.String status, int priority)
          Sets jid's current presence inside this bean.
protected  void storePresence(BSPresenceInfo pi)
          Stores given presence info.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jabber.jabberbeans.PacketListener
receivedPacket, sentPacket
 
Methods inherited from interface org.jabber.jabberbeans.ConnectionListener
connected, connectFailed, connecting, disconnected
 

Field Detail

curPresences

protected java.util.Hashtable curPresences

connection

protected org.jabber.jabberbeans.ConnectionBean connection

name

protected final java.lang.String name
See Also:
Constant Field Values

presenceListeners

protected java.util.Vector presenceListeners

myJID

protected JID myJID

connected

protected boolean connected
Constructor Detail

BSPresenceBean

BSPresenceBean()
Constructor


BSPresenceBean

BSPresenceBean(org.jabber.jabberbeans.ConnectionBean connection)
Constructor, which sets existing and connected ConnectionBean. Then this is registered as listener for packet events.

Method Detail

setConnection

protected void setConnection(org.jabber.jabberbeans.ConnectionBean connection)
Sets existing and connected ConnectionBean. Then this is registered as listener for packet and connection events.


getConnection

protected org.jabber.jabberbeans.ConnectionBean getConnection()
Returns currently used ConnectionBean.


isConnected

public boolean isConnected()
Returns if connected.


entries

public java.util.Enumeration entries()
Returns Enumeration of current presences. Items are of BSPresenceInfo type. If the JID is not contained in this, it is not available.


storePresence

protected void storePresence(BSPresenceInfo pi)
Stores given presence info. This method should be used for access to presence storage.


setMyJID

public void setMyJID(JID jid)
Sets current JID.


setMyPresence

public void setMyPresence(boolean available,
                          java.lang.String show,
                          java.lang.String status,
                          int priority)
Sets current presence and sends it to server.


setPresence

public void setPresence(JID jid,
                        boolean available,
                        java.lang.String show,
                        java.lang.String status,
                        int priority)
Sets jid's current presence inside this bean. This doesn't send anything to server, just sets internal value (for internal hacks like conferencing,...)


sendPresence

public void sendPresence(BSPresenceInfo pi,
                         JID toAddress)
Sends given presence to given JID


sendSubscriptionRequest

public void sendSubscriptionRequest(JID jid)
Sends subscription request to given JID.


sendSubscriptionApproved

public void sendSubscriptionApproved(JID jid)
Sends subscription confirmation to given JID.


getJIDPresences

protected BSPresencesOfJID getJIDPresences(JID jid)
Returns BSPresencesOfJID for given JID.


getPresence

public BSPresenceInfo getPresence(JID jid)
Returns BSPresenceInfo for specified JID without resource. The "best" presence of all resources is returned.


getResourcePresence

public BSPresenceInfo getResourcePresence(JID jid)
Returns BSPresenceInfo for specified JID with resource. If resource is empty returns the best presence for JID withour resource.


getAllPresences

public java.util.Enumeration getAllPresences(JID jid)
Returns Enumeration of BSPresenceInfos for all resources of specified JID.


getMyResourcesPresences

public java.util.Enumeration getMyResourcesPresences()
Returns Enumeration of BSPresenceInfos for all my resources except this one.


clear

public void clear()
Clears the current presences. This function is typically called after disconnecting.


prepareToDestroy

protected void prepareToDestroy()
Frees all object bindings to allow object destroy


getJIDHashString

public static java.lang.String getJIDHashString(JID jid,
                                                boolean useResource)
Returns string used as a key in roster hashtable.


getJidWithoutRes

public static JID getJidWithoutRes(JID jid)
Returns JID without resource.


receivedPacket

public void receivedPacket(PacketEvent pe)
Invoked when a packet arrives.


sendFailed

public void sendFailed(PacketEvent pe)
Invoked when a packet send failes.


sentPacket

public void sentPacket(PacketEvent pe)
Invoked when a packet is sent.


connectionChanged

public void connectionChanged(ConnectionEvent ce)
Invoked when connection changes. If disconnected, clears the presences and fires their change.


addPresenceListener

public void addPresenceListener(BSPresenceListener listener)
Adds BSPresenceListener to listeners notified when presence state of some of buddies changes.


removePresenceListener

public void removePresenceListener(BSPresenceListener listener)
Removes BSPresenceListener to listeners notified when presence state of some of buddies changes.


removeAllPresenceListeners

public void removeAllPresenceListeners()
Removes all listeners notified when presence state of some of buddies changes. This can be used before to free dependencies and allow dispose of all objects.


firePresenceChanged

private void firePresenceChanged(BSPresenceInfo pi)
Notifies presence listeners about presence state of some of buddies change.


fireSubscriptionRequested

private void fireSubscriptionRequested(JID jid)
Notifies presence listeners about presence subscription request.


fireSubscriptionApproved

private void fireSubscriptionApproved(JID jid)
Notifies presence listeners about presence subscription confirmation.


firePresencesCleared

private void firePresencesCleared()
Notifies presence listeners about clearing of all presences.


firePresenceError

private void firePresenceError(org.jabber.jabberbeans.Presence p)
Notifies presence listeners about presence error.