|
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 | |||||||||
public interface OperationSetServerStoredAccountInfo
The Account Info Operation set is a means of accessing and modifying detailed information on the user/account that is currently logged in through this provider. This operation set is more or less reciproce to OperationSetServerStoredContactInfo with the most essential difference being the fact that the account info operation set allows you to modify data in addition to reading it (quite natural given that it's your own info that you're dealing with).
Examples of account details are your picture, postal or e-mail addresses, work, hobbies, interests, and many many others.
Various types of details have been defined in the ServerStoredDetails class and can be used with the get methods of this interface. Implementors may also define their own details by extending or instantiating the ServerStoredDetails.GenericDetail class. Yet, they are encouraged to use existing detail types as fully as possible. Defining your own detail type may lead to limited visualization of its value.
As mentioned earlier the operation set supports adding, removing or replaing various details. The exact set of details that can be manipulated through this operation set depends on the implementation and can be retrieved through the getSupportedDetailTypes() method. The maximum number of detail instances supported for a given type of details can be retrieved through the getMaxDetailInstances() method.
The OperationSetServerStoredAccountInfo only concerns us (the user currently logged through this provider) and our own details. In order to query details concerning Contacts in our contact list we'd need to use the OperationSetServerStoredContactInfo
| Method Summary | |
|---|---|
void |
addDetail(ServerStoredDetails.GenericDetail detail)
Adds the specified detail to the list of details registered on-line for this account. |
void |
addServerStoredDetailsChangeListener(ServerStoredDetailsChangeListener listener)
Registers a ServerStoredDetailsChangeListener with this operation set so that it gets notifications of details change. |
Iterator<ServerStoredDetails.GenericDetail> |
getAllAvailableDetails()
Returns all details currently available and set for our account. |
Iterator<ServerStoredDetails.GenericDetail> |
getDetails(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
Returns an iterator over all details that are instances of exactly the same class as the one specified. |
Iterator<ServerStoredDetails.GenericDetail> |
getDetailsAndDescendants(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
Returns an iterator over all details that are instances or descendants of the specified class. |
int |
getMaxDetailInstances(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
The method returns the number of instances supported for a particular detail type. |
Iterator<Class<? extends ServerStoredDetails.GenericDetail>> |
getSupportedDetailTypes()
Returns all detail Class-es that the underlying implementation supports setting. |
boolean |
isDetailClassSupported(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
Determines whether a detail class represents a detail supported by the underlying implementation or not. |
boolean |
removeDetail(ServerStoredDetails.GenericDetail detail)
Removes the specified detail from the list of details stored online for this account. |
void |
removeServerStoredDetailsChangeListener(ServerStoredDetailsChangeListener listener)
Unregisters listener so that it won't receive any further notifications upon details change. |
boolean |
replaceDetail(ServerStoredDetails.GenericDetail currentDetailValue,
ServerStoredDetails.GenericDetail newDetailValue)
Replaces the currentDetailValue detail with newDetailValue and returns true if the operation was a success or false if currentDetailValue did not previously exist (in this case an additional call to addDetail is required). |
| Method Detail |
|---|
Iterator<ServerStoredDetails.GenericDetail> getDetailsAndDescendants(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
detailClass - one of the detail classes defined in the
ServerStoredDetails class, indicating the kind of details we're
interested in.
Iterator<ServerStoredDetails.GenericDetail> getDetails(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
detailClass - one of the detail classes defined in the
ServerStoredDetails class, indicating the kind of details we're
interested in.
Iterator<ServerStoredDetails.GenericDetail> getAllAvailableDetails()
Iterator<Class<? extends ServerStoredDetails.GenericDetail>> getSupportedDetailTypes()
boolean isDetailClassSupported(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
detailClass - the class the support for which we'd like to
determine.
int getMaxDetailInstances(Class<? extends ServerStoredDetails.GenericDetail> detailClass)
detailClass - the class whose max instance number we'd like to find
out.
void addDetail(ServerStoredDetails.GenericDetail detail)
throws IllegalArgumentException,
OperationFailedException,
ArrayIndexOutOfBoundsException
detail - the detail that we'd like registered on the server.
IllegalArgumentException - if such a detail already exists and its
max instances number has been atteined or if the underlying
implementation does not support setting details of the corresponding
class.
OperationFailedException - with code Network Failure if putting the
new value online has failed
ArrayIndexOutOfBoundsException - if the number of
instances currently registered by the application is already equal to the
maximum number of supported instances (@see getMaxDetailInstances())
boolean removeDetail(ServerStoredDetails.GenericDetail detail)
throws OperationFailedException
detail - the detail to remove
OperationFailedException - with code Network Failure if removing the
detail from the server has failed
boolean replaceDetail(ServerStoredDetails.GenericDetail currentDetailValue,
ServerStoredDetails.GenericDetail newDetailValue)
throws ClassCastException,
OperationFailedException
currentDetailValue - the detail value we'd like to replace.newDetailValue - the value of the detail that we'd like to replace
currentDetailValue with.
ClassCastException - if newDetailValue is not an instance of the
same class as currentDetailValue.
OperationFailedException - with code Network Failure if putting the
new value back online has failedvoid addServerStoredDetailsChangeListener(ServerStoredDetailsChangeListener listener)
listener - the ServerStoredDetailsChangeListener
to register.void removeServerStoredDetailsChangeListener(ServerStoredDetailsChangeListener listener)
listener - the ServerStoredDetailsChangeListener
to unregister.
|
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 | |||||||||