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