|
Jitsi: the OpenSource Java VoIP and Instant Messaging client. | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.java.sip.communicator.service.protocol.AbstractOperationSetPersistentPresence<ProtocolProviderServiceMsnImpl>
net.java.sip.communicator.impl.protocol.msn.OperationSetPersistentPresenceMsnImpl
public class OperationSetPersistentPresenceMsnImpl
The Msn implementation of a Persistent Presence Operation set. This class manages our own presence status as well as subscriptions for the presence status of our buddies. It also offers methods for retrieving and modifying the buddy contact list and adding listeners for changes in its layout.
| Field Summary |
|---|
| Fields inherited from class net.java.sip.communicator.service.protocol.AbstractOperationSetPersistentPresence |
|---|
parentProvider |
| Constructor Summary | |
|---|---|
OperationSetPersistentPresenceMsnImpl(ProtocolProviderServiceMsnImpl provider)
|
|
| Method Summary | |
|---|---|
void |
addServerStoredGroupChangeListener(ServerStoredGroupListener listener)
Registers a listener that would receive events upon changes in server stored groups. |
void |
createServerStoredContactGroup(ContactGroup parent,
String groupName)
Creates a group with the specified name and parent in the server stored contact list. |
Contact |
createUnresolvedContact(String address,
String persistentData)
Creates and returns a unresolved contact from the specified address and persistentData. |
Contact |
createUnresolvedContact(String address,
String persistentData,
ContactGroup parentGroup)
Creates and returns a unresolved contact from the specified address and persistentData. |
ContactGroup |
createUnresolvedContactGroup(String groupUID,
String persistentData,
ContactGroup parentGroup)
Creates and returns a unresolved contact group from the specified address and persistentData. |
ContactMsnImpl |
createVolatileContact(net.sf.jml.MsnContact contact)
Creates a non persistent contact for the specified address. |
ContactMsnImpl |
createVolatileContact(String id,
net.sf.jml.Email email,
String displayName)
Creates a non persistent contact for the specified address. |
(package private) void |
earlyStatusesDispatch()
Fires all the saved statuses which were received before contact list init |
Contact |
findContactByID(String contactID)
Returns a reference to the contact with the specified ID in case we have a subscription for it and null otherwise/ |
protected void |
fireProviderStatusChangeEvent(PresenceStatus oldStatus,
PresenceStatus newStatus)
Notify all provider presence listeners of the corresponding event change |
(package private) AuthorizationHandler |
getAuthorizationHandler()
Returns the AuthorizationHandler. |
String |
getCurrentStatusMessage()
Returns the status message that was confirmed by the server |
Contact |
getLocalContact()
Returns the protocol specific contact instance representing the local user. |
PresenceStatus |
getPresenceStatus()
Returns a PresenceStatus instance representing the state this provider is currently in. |
(package private) ServerStoredContactListMsnImpl |
getServerStoredContactList()
Returns the server stored contact list registered in this operation set. |
ContactGroup |
getServerStoredContactListRoot()
Returns the root group of the server stored contact list. |
Iterator<PresenceStatus> |
getSupportedStatusSet()
Returns the set of PresenceStatus objects that a user of this service may request the provider to enter. |
void |
moveContactToGroup(Contact contactToMove,
ContactGroup newParent)
Removes the specified contact from its current parent and places it under newParent. |
(package private) MsnStatusEnum |
msnStatusToPresenceStatus(net.sf.jml.MsnUserStatus status)
Converts the specified msn status to one of the status fields of the MsnStatusEnum class. |
void |
publishPresenceStatus(PresenceStatus status,
String statusMessage)
Requests the provider to enter into a status corresponding to the specified parameters. |
PresenceStatus |
queryContactStatus(String contactIdentifier)
Get the PresenceStatus for a particular contact. |
void |
removeServerStoredContactGroup(ContactGroup group)
Removes the specified group from the server stored contact list. |
void |
removeServerStoredGroupChangeListener(ServerStoredGroupListener listener)
Removes the specified group change listener so that it won't receive any further events. |
void |
renameServerStoredContactGroup(ContactGroup group,
String newName)
Renames the specified group from the server stored contact list. |
void |
setAuthorizationHandler(AuthorizationHandler handler)
Handler for incoming authorization requests. |
void |
setDisplayName(Contact contact,
String newName)
Sets the display name for contact to be newName. |
(package private) void |
setMessenger(net.sf.jml.MsnMessenger messenger)
Sets the messenger instance impl of the lib which communicates with the server |
void |
subscribe(ContactGroup parent,
String contactIdentifier)
Persistently adds a subscription for the presence status of the contact corresponding to the specified contactIdentifier and indicates that it should be added to the specified group of the server stored contact list. |
void |
subscribe(String contactIdentifier)
Adds a subscription for the presence status of the contact corresponding to the specified contactIdentifier. |
void |
unsubscribe(Contact contact)
Removes a subscription for the presence status of the specified contact. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public OperationSetPersistentPresenceMsnImpl(ProtocolProviderServiceMsnImpl provider)
| Method Detail |
|---|
public void addServerStoredGroupChangeListener(ServerStoredGroupListener listener)
addServerStoredGroupChangeListener in interface OperationSetPersistentPresenceaddServerStoredGroupChangeListener in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceMsnImpl>listener - a ServerStoredGroupChangeListener impl that would
receive events upon group changes.
public void createServerStoredContactGroup(ContactGroup parent,
String groupName)
throws OperationFailedException
parent - the group where the new group should be createdgroupName - the name of the new group to create.
OperationFailedException - if such group already existspublic ContactMsnImpl createVolatileContact(net.sf.jml.MsnContact contact)
contact - the msn contact.
public ContactMsnImpl createVolatileContact(String id,
net.sf.jml.Email email,
String displayName)
id - the id of the MSN contactemail - the e-mail address of the MSN contactdisplayName - the display name of the MSN contact
public Contact createUnresolvedContact(String address,
String persistentData,
ContactGroup parentGroup)
address - an identifier of the contact that we'll be creating.persistentData - a String returned Contact's getPersistentData()
method during a previous run and that has been persistently stored
locally.parentGroup - the group where the unresolved contact is supposed
to belong to.
public Contact createUnresolvedContact(String address,
String persistentData)
address - an identifier of the contact that we'll be creating.persistentData - a String returned Contact's getPersistentData()
method during a previous run and that has been persistently stored
locally.
public ContactGroup createUnresolvedContactGroup(String groupUID,
String persistentData,
ContactGroup parentGroup)
groupUID - an identifier, returned by ContactGroup's
getGroupUID, that the protocol provider may use in order to create
the group.persistentData - a String returned ContactGroups's
getPersistentData() method during a previous run and that has been
persistently stored locally.parentGroup - the group under which the new group is to be
created or null if this is group directly underneath the root.
public Contact findContactByID(String contactID)
contactID - a String identifier of the contact which we're
seeking a reference of.
public String getCurrentStatusMessage()
public Contact getLocalContact()
public PresenceStatus getPresenceStatus()
public ContactGroup getServerStoredContactListRoot()
public Iterator<PresenceStatus> getSupportedStatusSet()
public void moveContactToGroup(Contact contactToMove,
ContactGroup newParent)
contactToMove - the Contact to movenewParent - the ContactGroup where Contact
would be placed.
public void publishPresenceStatus(PresenceStatus status,
String statusMessage)
throws IllegalArgumentException,
IllegalStateException,
OperationFailedException
status - the PresenceStatus as returned by
getRequestableStatusSetstatusMessage - the message that should be set as the reason to
enter that status
IllegalArgumentException - if the status requested is not a
valid PresenceStatus supported by this provider.
IllegalStateException - if the provider is not currently
registered.
OperationFailedException - with code NETWORK_FAILURE if
publishing the status fails due to a network error.
public PresenceStatus queryContactStatus(String contactIdentifier)
throws IllegalArgumentException,
IllegalStateException,
OperationFailedException
contactIdentifier - the identifier of the contact whose status
we're interested in.
IllegalArgumentException - if contact is not a contact
known to the underlying protocol provider
IllegalStateException - if the underlying protocol provider is
not registered/signed on a public service.
OperationFailedException - with code NETWORK_FAILURE if
retrieving the status fails due to errors experienced during
network communicationpublic void removeServerStoredContactGroup(ContactGroup group)
group - the group to remove.public void removeServerStoredGroupChangeListener(ServerStoredGroupListener listener)
removeServerStoredGroupChangeListener in interface OperationSetPersistentPresenceremoveServerStoredGroupChangeListener in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceMsnImpl>listener - the ServerStoredGroupChangeListener to remove
public void renameServerStoredContactGroup(ContactGroup group,
String newName)
group - the group to rename.newName - the new name of the group.public void setAuthorizationHandler(AuthorizationHandler handler)
handler - an instance of an AuthorizationHandler for
authorization requests coming from other users requesting
permission add us to their contact list.AuthorizationHandler getAuthorizationHandler()
public void subscribe(ContactGroup parent,
String contactIdentifier)
throws IllegalArgumentException,
IllegalStateException,
OperationFailedException
parent - the parent group of the server stored contact list
where the contact should be added. contactIdentifier - the contact whose status updates we are
subscribing for.
IllegalArgumentException - if contact or
parent are not a contact known to the underlying protocol
provider.
IllegalStateException - if the underlying protocol provider is
not registered/signed on a public service.
OperationFailedException - with code NETWORK_FAILURE if
subscribing fails due to errors experienced during network
communication
public void subscribe(String contactIdentifier)
throws IllegalArgumentException,
IllegalStateException,
OperationFailedException
contactIdentifier - the identifier of the contact whose status
updates we are subscribing for.
IllegalArgumentException - if contact is not a contact
known to the underlying protocol provider
IllegalStateException - if the underlying protocol provider is
not registered/signed on a public service.
OperationFailedException - with code NETWORK_FAILURE if
subscribing fails due to errors experienced during network
communication
public void unsubscribe(Contact contact)
throws IllegalArgumentException,
IllegalStateException,
OperationFailedException
contact - the contact whose status updates we are unsubscribing
from.
IllegalArgumentException - if contact is not a contact
known to the underlying protocol provider
IllegalStateException - if the underlying protocol provider is
not registered/signed on a public service.
OperationFailedException - with code NETWORK_FAILURE if
unsubscribing fails due to errors experienced during network
communicationMsnStatusEnum msnStatusToPresenceStatus(net.sf.jml.MsnUserStatus status)
status - the msn Status
protected void fireProviderStatusChangeEvent(PresenceStatus oldStatus,
PresenceStatus newStatus)
fireProviderStatusChangeEvent in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceMsnImpl>oldStatus - the status our stack had so farnewStatus - the status we have from now on
public void setDisplayName(Contact contact,
String newName)
throws IllegalArgumentException
setDisplayName in interface OperationSetPersistentPresencesetDisplayName in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceMsnImpl>contact - the Contact that we are renamingnewName - a String containing the new display name for
metaContact.
IllegalArgumentException - if contact is not an
instance that belongs to the underlying implementation.void setMessenger(net.sf.jml.MsnMessenger messenger)
messenger - MsnMessengervoid earlyStatusesDispatch()
ServerStoredContactListMsnImpl getServerStoredContactList()
|
Jitsi: the OpenSource Java VoIP and Instant Messaging client. | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||