Technology
Have a cup of Java.
Messages
Messages are used to exchange events (information) between the server and the client (and may later be used for internal communications between subsystems).
Messages are either loaded at server startup or during runtime by uploading
and registrating a subsystem via a jar file with the jmx admin console. The
SubsystemLoader class handles the loading of the classes. The
registrating of the subsystem and the messages is done by the EventHandler
class. There the subsystem will be registrated in the list of subsystems and
from the manifest file the eventhandler knows which messages it has to assign to
the new subsystem. The message which will be assigned to the subsystem doesn't
have to be packed with the subsystem but must have been loaded with or before the
subsystem and so must be registrated at the server classloader.
The keyword for the messages in the manifest file of the subsystem jar file is Message-Class. After that keyword the various message classes are listed which should be registrated with the stated subsystem.
Manifest-Version: 1.0
Subsystem-Version: 0.0.1
Minimum-Client-Version: 0.0.1
Message-Class: org.werewolf.server.subsystem.chat.ChatMessage
Subsystem-Class: org.werewolf.server.subsystem.chat.ChatSubsystem