|
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<ProtocolProviderServiceYahooImpl>
net.java.sip.communicator.impl.protocol.yahoo.OperationSetPersistentPresenceYahooImpl
public class OperationSetPersistentPresenceYahooImpl
The Yahoo 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 | |
|---|---|
OperationSetPersistentPresenceYahooImpl(ProtocolProviderServiceYahooImpl provider)
|
|
| Method Summary | |
|---|---|
void |
addServerStoredGroupChangeListener(ServerStoredGroupListener listener)
Registers a listener that would receive events upong 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. |
ContactYahooImpl |
createVolatileContact(String id)
Creates a non persistent contact for the specified address. |
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 |
String |
getCurrentStatusMessage()
Returns the status message that was confirmed by the serfver |
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. |
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. |
(package private) void |
handleContactStatusChange(ContactYahooImpl sourceContact,
ymsg.network.YahooUser yFriend)
|
void |
moveContactToGroup(Contact contactToMove,
ContactGroup newParent)
Removes the specified contact from its current parent and places it under newParent. |
void |
publishPresenceStatus(PresenceStatus status,
String statusMessage)
Requests the provider to enter into a status corresponding to the specified paramters. |
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 |
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. |
(package private) YahooStatusEnum |
yahooStatusToPresenceStatus(long status)
Converts the specified yahoo status to one of the status fields of the YahooStatusEnum class. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public OperationSetPersistentPresenceYahooImpl(ProtocolProviderServiceYahooImpl provider)
| Method Detail |
|---|
public void addServerStoredGroupChangeListener(ServerStoredGroupListener listener)
addServerStoredGroupChangeListener in interface OperationSetPersistentPresenceaddServerStoredGroupChangeListener in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceYahooImpl>listener - a ServerStoredGroupChangeListener impl that would
receive events upong 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 ContactYahooImpl createVolatileContact(String id)
id - the address of the contact to create.
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<ProtocolProviderServiceYahooImpl>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.
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
communicationYahooStatusEnum yahooStatusToPresenceStatus(long status)
status - the yahoo Status
protected void fireProviderStatusChangeEvent(PresenceStatus oldStatus,
PresenceStatus newStatus)
fireProviderStatusChangeEvent in class AbstractOperationSetPersistentPresence<ProtocolProviderServiceYahooImpl>oldStatus - the status our stack had so farnewStatus - the status we have from now on
void handleContactStatusChange(ContactYahooImpl sourceContact,
ymsg.network.YahooUser yFriend)
|
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 | |||||||||