Catch a lot of old URL's and update them. Also remove a couple of old files that aren't used.
Tidy up of the client interface code - more commonly known as the "right hand side of the server". Right since the start the filter side of the server has been nice and tree like - every Filter sent data to another Filter. At the top of the tree there was a "special" Filter known as the RootFilter, which to the other Filters just looked like a normal Filter. This was nice, and simple, and expandable. The Client Interface on the other hand was messy. The root filter had some hacky wrapper threads which pulled from a queue and pushed to the relevant client interfaces (one for real time stuff, and the other for databases). There was no simple room for expandability - it was all hardwired to do just what was needed at the time. This commit changes that. A Client Interface now connects to another Client Interface, with a special one being found in the RootFilter (yes, maybe that needs a name change now :-). So we can chain client interfaces, and move other bits and bobs around in the server - for example, alerting no longer needs to be connected to the Client Interface, it can connect straight to the RootFilter (or, wherever the config tells it ;). Hopefully this sanitizes the underlying layout of the server a bit. As a final note, I dropped the DBInterface. This used to insert data in to a MySQL database. We've long since stopped using that, and it's fallen behind and is way out of date. For now, it's gone in to the attic.
Fairly major commit. This will break the current version of ihost, but this had to be done really to give Pete something to test the new ihost against. The main change here is removal of the TCP Heartbeat functionality from the filter. This meant the following features stopped working :- - Heartbeat testing - Configuration checking - Service checks The heartbeat testing, specifically the monitor, now looks at the presence of UDP packets instead. Before it just looked for the presence of a TCP heartbeat packet, so the change their is fairly negligible. Of course this means heartbeat testing now relies on the UDP working... but I don't see this as a problem. Configuration checking has been repositioned in to the filtermanager. This is a backwards compatible change - the filtermanager should still perform as it should for older hosts. But now there's an extra command to check the configuration is up-to-date, with a similar format to the old TCP protocol in the filter. (although we may optimise this soon) The service checks are broken. This isn't a major issue for us as they were pretty useless in the first place. The concept is good, but the checks are just far too primitive. I expect at some point I'll work on a seperate component that just monitors services, which will replace this function. Further changes in the server include removal of the key checking code, as this relied on a bolt on to the TCP heartbeat protocol to ship the key. This got more akward than originally planned, so I'm happy to drop the idea. In the long term we hope to replace this with a public key systems for signing and even encryption. Finally, general tidy up to remove other bits of code that check for TCP heartbeat packets when they don't need to any more.
Added URL to GPL headers.
i-scream is now licensed under the GPL. I've added the GPL headers to every source file, and put a full copy of the license in the appropriate places. I think I've covered everything. This is going to be a mad commit ;)
Split the CORBA side of the filter in two. The Filter interface still does the receiving of data, just like it used to. This can optionally be turned off in the configuration if required. The new interface, FilterInfo, is used to provide information (host and ports) to other parts of the server about the Filter - namely the FilterManager. This split has been done so that the data receiving part of the Filter can be turned off, without breaking the FilterManager.
Major change in the java package naming. This has been held off for some time now, but it really needed doing. The future packaging of all i-scream products will be; uk.org.iscream.<product>.<subpart>.* In the case of the central monitoring system server this will be; uk.org.iscream.cms.server.* The whole server has been changed to follow this structure, and tested to a smallish extent. Further changes in other parts of the CMS will follow.
The whole server package structure has been changed. Old Package: uk.ac.ukc.iscream.* New Package: uk.org.iscream.*
Added a disconnect() method to the CorbaControlHandler.
Added a disconnect() method to the Configuration object. This method disconnects the object from the ORB.
A CORBA client must now send a name to the Client Interface.
CorbaHandler changed name to CorbaControlHandler.
Added the bits for the CORBA stuff in the ClientInterface, and a skelton for new Clients.
Added the new bits for the CORBA-based "local clients".
Added the ClientInterface bits.
You complained, I fixed it...
Added the methods for querying a Filter, and removed the FilterManager.
Added methods to the Filter and FilterManager.
ajm4: Added getFileList() to the Configuration. This method returns a list of the files that are included in the configuration.
Added the Filter to the IDL.
A typo correction.
Modified to change the name of the Configurator -> ConfigurationManager
Added integers values to represent different verbosity levels. Will allow more expansion of the verbosity levels in the future.
Changes in light of new Logger system.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.