atavism.agis.plugins
Class AgisProxyPlugin
java.lang.Object
atavism.server.engine.EnginePlugin
atavism.server.plugins.ProxyPlugin
atavism.agis.plugins.AgisProxyPlugin
- All Implemented Interfaces:
- MessageCallback, StatusMapCallback, ClientConnection.AcceptCallback, ClientConnection.MessageCallback, java.lang.Runnable
public class AgisProxyPlugin
- extends ProxyPlugin
- implements java.lang.Runnable
handles client traffic to the rest of the servers
Nested classes/interfaces inherited from class atavism.server.engine.EnginePlugin |
EnginePlugin.DeleteHook, EnginePlugin.DeleteSubObjHook, EnginePlugin.GenerateSubObjectHook, EnginePlugin.GetPropertyMessage, EnginePlugin.GetPropertyNamesMessage, EnginePlugin.LoadHook, EnginePlugin.LoadSubObjHook, EnginePlugin.PluginActivateHook, EnginePlugin.PluginStateMessage, EnginePlugin.SaveHook, EnginePlugin.SaveSubObjHook, EnginePlugin.SetPropertyMessage, EnginePlugin.SubObjData, EnginePlugin.TransferFilter, EnginePlugin.TransferObjectMessage, EnginePlugin.UnloadHook, EnginePlugin.UnloadSubObjHook |
Fields inherited from class atavism.server.plugins.ProxyPlugin |
capacityError, clientPort, commandMapLock, defaultAllowClientToClientMessage, extensionHooks, extensionMessageRegistry, extraPlayerMessageTypes, idleTimeout, log, maxByteCountBeforeConnectionReset, MaxConcurrentUsers, maxMessagesBeforeConnectionReset, MSG_TYPE_ACCOUNT_LOGIN, MSG_TYPE_ADD_STATIC_PERCEPTION, MSG_TYPE_GET_MATCHING_PLAYERS, MSG_TYPE_GET_PLAYER_LOGIN_STATUS, MSG_TYPE_LOGIN_SPAWNED, MSG_TYPE_LOGOUT_PLAYER, MSG_TYPE_PLAYER_IGNORE_LIST, MSG_TYPE_PLAYER_IGNORE_LIST_REQ, MSG_TYPE_PLAYER_PATH_REQ, MSG_TYPE_RELAY_UPDATE_PLAYER_IGNORE_LIST, MSG_TYPE_REMOVE_STATIC_PERCEPTION, MSG_TYPE_UPDATE_PLAYER_IGNORE_LIST, MSG_TYPE_VOICE_PARMS, PERCEPTION_GAIN_THRESHOLD, perceptionFilter, perceptionSubId, playerManager, proxyCallbackHistogram, proxyQueueHistogram, responderFilter, responderSubId, serverCapabilitiesSentToClient, serverSocket, silenceLoadingTimeout, silenceTimeout, tokenError, voiceServerHost, voiceServerPort |
Fields inherited from class atavism.server.engine.EnginePlugin |
deleteSubObjectSubscription, dumpAllThreadSubscription, dumpAllThreadSubscriptionLock, loadSubObjectSubscription, lock, MSG_TYPE_DUMP_ALL_THREAD_STACKS, MSG_TYPE_GET_PROPERTY, MSG_TYPE_GET_PROPERTY_NAMES, MSG_TYPE_PLUGIN_STATE, MSG_TYPE_SET_PROPERTY, MSG_TYPE_SET_PROPERTY_NONBLOCK, MSG_TYPE_TRANSFER_OBJECT, pluginStateSubscription, propertySubscription, saveSubObjectSubscription, selectionFilter, selectionSubscription, setSubObjectPersistenceSubscription, subObjectSubscription, unloadSubObjectSubscription |
Methods inherited from class atavism.server.plugins.ProxyPlugin |
acceptConnection, addAdmin, addExtraPlayerExtensionMessageType, addExtraPlayerMessageType, addFilteredProperty, addPlayerMessage, addPlayerSpecificProperty, addProxyExtensionHook, addStaticPerception, addStaticPerception, allowClientToClientMessage, connectionReset, createMBeanInstance, getAdmins, getExtensionMessageType, getExtraPlayerMessageTypes, getInstanceEntryCallback, getPlayer, getPlayerNames, getPlayerOids, getPlayers, getProxyExtensionHooks, getProxyLoginCallback, getStatusMap, handleFreeRoad, handleFullInstance, incrementChatCount, incrementPrivateChatCount, initializeVoiceServerInformation, isAdmin, isDevMode, loadPlayerObject, matchingPlayers, processAbilityStatusEvent, processActivateItem, processAutoAttack, processCom, processCommand, processConnectionResetInternal, processDirLocOrient, processExtensionMessageEvent, processLoginHelper, processLogout, processPacket, processPlayerIgnoreList, processQuestResponse, processReqConcludeQuest, processRequestQuestInfo, processSceneLoaded, pushInstanceRestorePoint, recreatePlayerSpecificCache, registerCommand, registerCommand, registerExtensionSubtype, removeStaticPerception, sendOceanData, sendPlayerIgnoreList, setDevMode, setExtraPlayerMessageTypes, setInstanceEntryCallback, setProxyLoginCallback, specialCaseFreeProcessing, specialCaseNewProcessing, unregisterExtensionSubtype, updateIgnoredOids, verifyPlayer |
Methods inherited from class atavism.server.engine.EnginePlugin |
activate, createSubscription, getHookManager, getMessageHandler, getName, getObjectLockManager, getObjectProperties, getObjectProperties, getObjectProperty, getObjectPropertyNames, getPercentCPULoad, getPluginAvailable, getPluginInfo, getPluginNamespaces, getPluginState, getPluginStatus, getPluginType, getPropertyImpl, getPropertyNamesImpl, handleMessage, handleMessageImpl, logDepsOutstanding, processKeysAndValues, registerActivateHook, registerDeleteHook, registerLoadHook, registerPluginNamespace, registerPluginNamespaces, registerPluginNamespaces, registerPluginNamespaces, registerSaveHook, registerTransferHook, registerUnloadHook, sendSubObjectResponse, sendSubObjectResponse, sendSubObjectResponse, setMessageHandler, setName, setObjectProperties, setObjectProperties, setObjectProperties, setObjectPropertiesNoResponse, setObjectPropertiesNoResponse, setObjectPropertiesNoResponse, setObjectProperty, setObjectPropertyNoResponse, setPercentCPULoad, setPluginAvailable, setPluginInfo, setPluginType, setPropertyImpl, transferObject |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
bannedUsers
public static java.util.HashMap<OID,java.lang.Long> bannedUsers
friendReverseMap
public static java.util.HashMap<OID,java.util.ArrayList<OID>> friendReverseMap
chatChannelSubscribers
public static java.util.HashMap<java.lang.String,java.util.ArrayList<OID>> chatChannelSubscribers
scheduledLogouts
public static java.util.HashMap<OID,atavism.agis.plugins.AgisProxyPlugin.ScheduledLogout> scheduledLogouts
LOGOUT_TIME
public static int LOGOUT_TIME
LOGOUT_TO_CHARACTER_SELECTION
public static boolean LOGOUT_TO_CHARACTER_SELECTION
AgisProxyPlugin
public AgisProxyPlugin()
onActivate
public void onActivate()
- Description copied from class:
ProxyPlugin
- onActivate() is the real startup method. It:
- Initializes the
PacketAggregator, which groups together messages to the client if they
are created in a short interval, defaulting to 25ms.
- Initilizes
display of message processing time histograms.
- Enumerates the
list of properties in PropertyMessages that don't need to be sent to the
client, because the client doesn't pay attention to them. This is not yet
customizable, but should be.
- Calls registerHooks to enumerate
the proxy's message processing hooks.
- Establishes the
PerceptionFilter for the many message types sent by other plugins, to
which players and other objects will be added as the are created, and
creates the master subscription using the PerceptionFilter. This is not
yet customizable, but should be.
- Creates and opens the RDP listener
using the proxy listener port.
- Creates and opens the TCP
listener using the proxy listern port.
- Overrides:
onActivate
in class ProxyPlugin
- See Also:
ProxyPlugin.registerHooks()
,
ProxyPlugin.EventCallback.doWork(java.lang.Object, java.lang.Object)
registerProxyHooks
protected void registerProxyHooks()
run
public void run()
- Specified by:
run
in interface java.lang.Runnable
processLogin
protected boolean processLogin(ClientConnection con,
AuthorizedLoginEvent loginEvent)
- process login message from the client.
- Overrides:
processLogin
in class ProxyPlugin
- Parameters:
con
- The connection to the client.loginEvent
- The client message that asks to log the client in.
logPlayerOut
protected void logPlayerOut(OID playerOid)
sendPlayersOnline
protected void sendPlayersOnline(boolean loggingOut)
getOids
public java.util.Set<OID> getOids()
- Used to get a Set of all players logged in.
- Returns:
getPlayerOid
public OID getPlayerOid(java.lang.String name)
isPlayerOnline
public boolean isPlayerOnline(OID oid)
removeAccountFromBanList
protected static void removeAccountFromBanList(OID accountID)
SendFriendsList
public void SendFriendsList(OID playerOid)