version 1.1 - NOTE: this is a development version, some things may be broken... - databus: - introduced component descriptor - contains short name, class name, description, input / output and information about configuration for the component - allows use of graphical configuration tools (which are to be written yet) - descriptors are stored in bin/components.xml - therefore removed the methods listenTo, produces, isGenericProducer - this now in the descriptor - components can now be referenced by their name (from components.xml), not only by class (attribute "name") - removed the methods getId / setId - the component IDs are now handled through a ComponentInstance-object, which stores runtime information - added an optional attribute "position" to the components, which will determine the startup order - added preStartup / postStartup to the components methods - allows better handling of interdependend actions - log4j is not reconfigured. this has lead to recreating the logfile, so all old messages were lost - NOTE: reconfiguration is currently broken! - gcp: - renamed packages and modules (see doc/config) - added new module: CommandScheduler - sends a command to the server in defineable periods - see cfg/events.xml - allows: - COMMAND - send as RCon command (command is set as attribute 'parameter') - KILLSERVER - STARTUP - SHUTDOWN - NOTE: if a server is shutdown, watchdog modules will not be notified of this, so they will reposrt false alarms! - added howto's to the documentation (they are empty in the moment :) - introduced MessageTransformer for handling server specific message formats (especially handling of color coded messages and special characters) - currently Transformers for Q3A and QControl are available - merged QControlFileInputFilter and LogFileInputFilter into a generic LogFileInput - reads logfiles - uses MessageTransformer - can do a steady listening on the logfile - can remove the logfile at startup - can detect if there is no input for a specified time - bugfix in MapLogWriter: there was no check for a valif program name during map changes - bugfix in QWProtocolHandler: the instance variable _bus was overwritten from the base class :( - QRunnerInputFiler is now known as ServerRunner - it now accepts ProcessControlEvents for startup and shutdown - this allows for server which run only for specified times (e.g. 8pm to 4am) - the 'command' element has now a parameter 'dontstart'. If it is specified, the server will only be started at request - if the started process has finished or is shutdown, the component now doesn't de-register from the databus - build.xml converted to ant 1.2 - added new distribution 'all' - source + binary version 1.0.2 - new email for contacts (gcp@hendriklipka.de, hli@hendriklipka.de) - build.xml: basedir is now absolute (so we can use AntRunner from JBuilder 4) - new component: Q3AServerwatcher send UDP packets to the server and if its not responding, kills the server (if its started by a QRunnerInputFilter) - changed components: - QRunnerInputFilter now responds to ProcessControlEvents to kill the running server detects if program output is missing for a specified time and then kills the server - LogFileInputFilter detects if program output is missing for a specified time and then kills the server (if its started by a QRunnerInputFilter) - fixed bug in QRunnerInputFilter - time between restarts was never used, restart occured immediately version 1.0.1 - reworked makefile (build.xml) - changed directory structure - /bin now holds the class files and the gcp.jar - /lib now holds the external jars - /dist now holds the distribution files - the creation of the the jar file now includes the external classes - removed the creation of javadoc - new targets for creating binary and source distribution (I'm too lazy to copy everything around everytime...) - new module: ProgramOnEventHandler - calls external program if a specified GameEvent occurs - changed MapLogWriter - can now call external program with the old map + logfile as parameters if a new map starts - the current time is now inserted as long (stabdard unix time), not as string this is then the same for all platforms and does not contain special characters version 1.0 - initial release