|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectit.gotoandplay.smartfoxserver.data.buddylist.BuddyListManager
public class BuddyListManager
The BuddyManager class is responsible for managing the buddy lists inside its Zone.
Methods such as addBuddy, removeBuddy etc... will perform the change on the server side but won't dispatch any event back to the clients. When you have done all the changes to one or more buddy lists you can broadcast the changes by calling the sendBuddyListUpdate() method.
| Field Summary | |
|---|---|
static java.lang.String |
DEFAULT_ADVANCED_PERSISTER_CLASS
|
static int |
DEFAULT_MAX_BUDDY_VARS
|
static int |
DEFAULT_MAX_BUDDY_VARS_LEN
|
static int |
DEFAULT_MAX_BUDDY_VARS_NAME
|
static java.lang.String |
DEFAULT_MUTUAL_SETTINGS
|
static java.lang.String |
DEFAULT_PERMISSION_TIMEOUT
|
static java.lang.String |
DEFAULT_PERSISTER_CLASS
|
static java.lang.String |
DEFAULT_SECURITY_MODE
|
static int |
DEFAULT_SIZE
|
static java.lang.String |
DEFAULT_USE_OFFLINE_VARIABLES
|
static java.lang.String |
DEFAULT_USE_PERMISSION
|
static java.lang.String |
OFFLINE_VARS_PREFIX
|
static int |
SECURITY_MODE_ADVANCED
|
static int |
SECURITY_MODE_BASIC
|
| Constructor Summary | |
|---|---|
BuddyListManager(java.lang.String zoneName,
int maxLength)
|
|
BuddyListManager(java.lang.String zoneName,
int maxLength,
IBuddyListPersister persister)
|
|
| Method Summary | |
|---|---|
void |
addBuddy(java.lang.String owner,
java.lang.String buddyName)
|
void |
addPermissionRequest(java.lang.String sender,
java.lang.String target)
Manages the addition of a permissione request in the local cache. |
boolean |
checkBuddyListSize(java.lang.String name)
|
void |
checkValidAddRequest(User sender,
java.lang.String target)
|
void |
clearBuddyList(java.lang.String owner)
Clear the buddy list of the specified user |
void |
clearExpiredPermissionRequests()
|
void |
destroy(java.lang.Object param)
|
StorableBuddyList |
getBuddyList(java.lang.String name)
|
java.util.Map<java.lang.String,StorableBuddyList> |
getBuddyLists()
|
int |
getBuddyPermissionTimeout()
|
java.util.Map<java.lang.String,java.lang.String> |
getBuddyVariables(it.gotoandplay.smartfoxserver.data.buddylist.LoadableBuddyItem buddy)
Return the variables map of a buddy |
java.util.Map<java.lang.String,java.lang.String> |
getBuddyVariables(java.lang.String buddyName)
Return the variables map of a buddy |
java.util.LinkedList |
getClientsToUpdate(java.lang.String buddyName)
|
int |
getMaxBuddyVarLen()
Get the max length of a buddy variable, expressed in number of characters. |
int |
getMaxBuddyVars()
Get the max amount of buddy variables allowed |
java.util.Map<java.lang.String,java.lang.String> |
getOfflineBuddyVariables(java.lang.String ownerName)
|
java.lang.String |
getOwnerListFullErrorMessage()
Get the "Owner Buddy List Full" custom error message |
java.util.Map<it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequestKey,it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequest> |
getPendingRequests()
|
java.util.Map<it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequestKey,it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequest> |
getPermissionRequests()
|
IBuddyListPersister |
getPersister()
Get the IBuddyListPersister |
int |
getSecurityMode()
|
java.lang.String |
getTargetListFullErrorMessage()
Get the "Target Buddy List Full" custom error message |
boolean |
getUseOfflineVariables()
|
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> |
getVarCache()
|
void |
init(java.lang.Object param)
|
boolean |
isAddBuddyPermission()
|
boolean |
isAdvancedMode()
|
boolean |
isBuddyOnline(java.lang.String userName)
Return the current online status of a buddy / user |
boolean |
isMutualAddBuddy()
|
boolean |
isMutualRemoveBuddy()
|
it.gotoandplay.smartfoxserver.data.buddylist.LoadableBuddyList |
loadBuddyList(java.lang.String userName)
Load a buddy list |
boolean |
removeBuddy(java.lang.String owner,
java.lang.String buddyName)
|
void |
removeBuddyList(java.lang.String owner)
Remove a buddy list |
void |
saveAllBuddyLists()
Saves all buddy lists in memory. |
void |
saveAndRemove(java.lang.String owner)
Save a buddy list item and removes it |
boolean |
saveBuddyList(java.lang.String userName)
Save the buddy list of a specific user. |
void |
sendBuddyListUpdate(User user)
Send an update about the specified User to all clients that have him/her in their buddy list |
void |
setAddBuddyPermission(boolean addBuddyPermission)
|
void |
setBuddyBlockStatus(User owner,
java.lang.String buddyName,
boolean status)
Set buddy block status |
void |
setBuddyPermissionTimeout(int buddyPermissionTimeout)
|
void |
setBuddyVariables(java.lang.String ownerName,
java.util.Map<java.lang.String,java.lang.String> variables)
Set the buddyVariables of User |
java.util.List<java.lang.String> |
setBuddyVariables(User user,
java.util.Map<java.lang.String,java.lang.String> variables)
Set one or more buddy variables |
void |
setMaxBuddyVars(int maxBuddyVars)
Set the max amount of buddy variables allowed |
void |
setMaxBuddyVarsLen(int value)
Set the max length of a buddy variable, expressed in number of characters. |
void |
setMutualAddBuddy(boolean mutualAddBuddy)
|
void |
setMutualRemoveBuddy(boolean mutualRemoveBuddy)
|
void |
setOwnerListFullErrorMessage(java.lang.String message)
Set a custom message for the "Owner Buddy List Full" error. |
boolean |
setPermissionStatus(java.lang.String sender,
java.lang.String target,
it.gotoandplay.smartfoxserver.data.buddylist.PermissionStatus status)
Set the status of the permission request |
void |
setPersister(IBuddyListPersister persister)
Set the buddy list persister |
void |
setSecurityMode(int securityMode)
|
void |
setTargetListFullErrorMessage(java.lang.String message)
Set a custom message for the "Target Buddy List Full" error. |
void |
setUseOfflineVariables(boolean useOfflineVariables)
|
boolean |
validateRecipient(User sender,
User recipient)
Check a sender/receiver pair for a private message from BuddyList |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int SECURITY_MODE_BASIC
public static final int SECURITY_MODE_ADVANCED
public static final java.lang.String DEFAULT_PERSISTER_CLASS
public static final java.lang.String DEFAULT_ADVANCED_PERSISTER_CLASS
public static final int DEFAULT_SIZE
public static final int DEFAULT_MAX_BUDDY_VARS
public static final java.lang.String DEFAULT_USE_OFFLINE_VARIABLES
public static final java.lang.String DEFAULT_SECURITY_MODE
public static java.lang.String OFFLINE_VARS_PREFIX
public static final java.lang.String DEFAULT_MUTUAL_SETTINGS
public static final java.lang.String DEFAULT_USE_PERMISSION
public static final java.lang.String DEFAULT_PERMISSION_TIMEOUT
public static final int DEFAULT_MAX_BUDDY_VARS_NAME
public static final int DEFAULT_MAX_BUDDY_VARS_LEN
| Constructor Detail |
|---|
public BuddyListManager(java.lang.String zoneName,
int maxLength)
public BuddyListManager(java.lang.String zoneName,
int maxLength,
IBuddyListPersister persister)
| Method Detail |
|---|
public void init(java.lang.Object param)
init in interface it.gotoandplay.smartfoxserver.lib.IServicepublic void destroy(java.lang.Object param)
destroy in interface it.gotoandplay.smartfoxserver.lib.IServicepublic IBuddyListPersister getPersister()
public void setPersister(IBuddyListPersister persister)
persister - a valid persister object
public void addBuddy(java.lang.String owner,
java.lang.String buddyName)
throws it.gotoandplay.smartfoxserver.exceptions.BuddyListException
it.gotoandplay.smartfoxserver.exceptions.BuddyListException
public boolean removeBuddy(java.lang.String owner,
java.lang.String buddyName)
public StorableBuddyList getBuddyList(java.lang.String name)
public boolean saveBuddyList(java.lang.String userName)
userName - the user name
public void removeBuddyList(java.lang.String owner)
owner - the owner namepublic void saveAndRemove(java.lang.String owner)
owner - the owner namepublic void saveAllBuddyLists()
public it.gotoandplay.smartfoxserver.data.buddylist.LoadableBuddyList loadBuddyList(java.lang.String userName)
userName - the name of the user
public java.util.List<java.lang.String> setBuddyVariables(User user,
java.util.Map<java.lang.String,java.lang.String> variables)
user - the variable ownervariables - a map of variables (key, value)
public java.util.LinkedList getClientsToUpdate(java.lang.String buddyName)
public void clearExpiredPermissionRequests()
public void clearBuddyList(java.lang.String owner)
owner - name of the user whose buddy list should be cleared.public int getMaxBuddyVars()
public void setMaxBuddyVars(int maxBuddyVars)
maxBuddyVars - the max number of buddy variablespublic int getMaxBuddyVarLen()
public void setMaxBuddyVarsLen(int value)
value - the max length of a buddy variable, expressed in number of characters.public boolean isBuddyOnline(java.lang.String userName)
userName - the name of the buddy
public java.util.Map<java.lang.String,java.lang.String> getBuddyVariables(java.lang.String buddyName)
buddyName - name of the buddy
public java.util.Map<java.lang.String,java.lang.String> getBuddyVariables(it.gotoandplay.smartfoxserver.data.buddylist.LoadableBuddyItem buddy)
buddy - the buddy
public void setBuddyVariables(java.lang.String ownerName,
java.util.Map<java.lang.String,java.lang.String> variables)
ownerName - name of the uservariables - a map of variablespublic java.util.Map<java.lang.String,java.lang.String> getOfflineBuddyVariables(java.lang.String ownerName)
ownerName -
public void sendBuddyListUpdate(User user)
user - A Userpublic boolean getUseOfflineVariables()
public void setUseOfflineVariables(boolean useOfflineVariables)
public int getSecurityMode()
public void setSecurityMode(int securityMode)
public boolean isAdvancedMode()
public java.util.Map<it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequestKey,it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequest> getPermissionRequests()
public boolean isMutualAddBuddy()
public void setMutualAddBuddy(boolean mutualAddBuddy)
public boolean isMutualRemoveBuddy()
public void setMutualRemoveBuddy(boolean mutualRemoveBuddy)
public int getBuddyPermissionTimeout()
public void setBuddyPermissionTimeout(int buddyPermissionTimeout)
public void setAddBuddyPermission(boolean addBuddyPermission)
public boolean isAddBuddyPermission()
public void setBuddyBlockStatus(User owner,
java.lang.String buddyName,
boolean status)
owner - the owner of the buddy listbuddyName - the name of the buddystatus - the block status (true = blocked, false = unblocked)
public boolean validateRecipient(User sender,
User recipient)
sender - the senderrecipient - the receiver
public void checkValidAddRequest(User sender,
java.lang.String target)
throws it.gotoandplay.smartfoxserver.exceptions.BuddyListException
it.gotoandplay.smartfoxserver.exceptions.BuddyListExceptionpublic boolean checkBuddyListSize(java.lang.String name)
public void addPermissionRequest(java.lang.String sender,
java.lang.String target)
sender - the sender user nametarget - the target user name
public boolean setPermissionStatus(java.lang.String sender,
java.lang.String target,
it.gotoandplay.smartfoxserver.data.buddylist.PermissionStatus status)
sender - the sender nametarget - the target namestatus - the status of the request
public java.lang.String getOwnerListFullErrorMessage()
public void setOwnerListFullErrorMessage(java.lang.String message)
message - the error messagepublic java.lang.String getTargetListFullErrorMessage()
public void setTargetListFullErrorMessage(java.lang.String message)
message - the error messagepublic java.util.Map<java.lang.String,StorableBuddyList> getBuddyLists()
public java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> getVarCache()
public java.util.Map<it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequestKey,it.gotoandplay.smartfoxserver.data.buddylist.PermissionRequest> getPendingRequests()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||