Fix compile problems on j2se 1.5 - our Queue class conflicted with one in java.util. Also fix an API issue when running the server on Windows - the println method sends '\r\n' on Windows instead of '\n' on Unix, which confuses applications such as ihost. Patch provided by: skel
Catch a lot of old URL's and update them. Also remove a couple of old files that aren't used.
Addition to the protocol which completely breaks backwards compatibility. Seeing as we sent the FQDN, we may as well tell them the IP too. It seems oddly hard to reliably work these out on the host itself.
Now sends error when something unexpected is received before disconnecting.
More explict checking of the last modified value.
Changed message when new config is available to "EXPIRED", instead of "ERROR" :-)
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.
Changed the server to use the external util package. Quite a minor change, but does affect a lot of files.
Fix for upgrade to Jacorb 1.4.1. It's our fault actually, we've not been correctly using the names when binding to the Naming Service. This needs to be fixed properly at some point, but for now I've changed changed the code so it "means" the same as it did before the upgrade.
Added URL to GPL headers.
A fix for a COMM_FAILURE that keeps getting out. I think this is happening when the FilterManager tries to query the filter. It shouldn't really happen, but it seems it does. It begs the question as to whether every CORBA communication should be wrapped in one of these... which would unfortunately include every logging line :/
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 support for the ConfigurationProxy. Also made the HostInit more "safe", with checking for null's from the host.
Given all the classes that extend Thread a name using Thread.setName(). It is only representative as far as it will tell us which class the Thread is, but this will go some way to aiding debugging. If time permitted, more effort could be taken to name each thread according to what it was dealing with.
The filtermanager returns something more useful to the Host if it can't find a filter for it.
Now catches a more specific exception to the problem. Note that the ReferenceManager catches the CORBA exception, and throws it's own, so we need to catch that instead.
One can now specify a list of Filter's for a host. This allows a priority list to be given to a host, and is helpful if a filter isn't active. NOTE: the exception caught when looking for a Filter could be better. PROBLEM?: what if the host gets the secondary filter, but the primary comes back online at a later date ? it won't get it unless told to reconfigure...
We'll send FQDN's in lower case... just to be consistent.
Don't need to try/catch anymore.
That was such a dumb mistake. I should learn not to copy and paste from other code :)
Added support for the new FQDN command.
Better error printing.
Made use of the autoflush feature of PrintWriter.
Some tidying up.
Changes to reflect move of Component, ComponentStartException, and the ReferenceManager from util to componentmanager.
fixed typo
is now a component class also tidied the code a bit
Had a tidy up. The Filter Manager now makes use of the Reference Manager, which ensures that we don't have lots of messy reference passing.
Prepended the configuration request with Host.<name> .
Made changes to fit into the new package structure.
modified the configuration obtaining to fit with the project standard Host configs
Added the required extra functionality that the was required to complete the setup with the host.
A lot of changes from Configurator to ConfigurationManager.
Added features to support the verbosity levels now provided by the logging system.
Better conformance to Protocol.
Stupid mistake. :-(
Added sending of LastModified date/time of Configuration to host (as per the minutes-20001113b.txt).
Initial check in of the FilterManager Current support for Host connections and passing back configuration. Support missing for filter contacting etc. Not finished or fully commented.
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.