Opps... if both were null it would try and start them :)
Arg.. more bugs. Need to check both independently.
Now only enforces a dependency on either the Client Interface or the Database Interface if it is configured. This ensures that the startup order is still correct (which it wouldn't if the checks were removed), but also doesn't enforce the checks when one of the interfaces is disabled.
Some debugging information, so we can closer track what's happening.
Added queue size limit. This is provisional, if it is a success it will be mirrored across the whole server.
The whole server package structure has been changed. Old Package: uk.ac.ukc.iscream.* New Package: uk.org.iscream.*
Of course, being my usual sensible self, I potentially had a situation where by I would log to the Logger than the Logger isn't running. Clever eh ? :)
We weren't grabbing a ReferenceManager reference until startup, although there is no reason (unlike the Logger) why we can't grab it on construction.
New dependency checking. The old method was to attempt to start a Component, and if it failed, it probably had a depdency problem. The approach now is to ask the Component to perform a dependency check first, then if this suceeds, have a go at actually starting it up. The actual dependency check is a bit neater and more precise than before, and should be much more fool proof. The order the components are specified in the default.properties file is now irrelevant, although the "correct" order would certainly increase booting time.
Now makes use of the ConfigurationProxy.
now doesn't worry if it can't find certain configuration options mainly if it hasn't got a configured interface as it just crashed and burned up till now if you selected NOT to start one I'm sure it used to work, but it didn't today so I changed it ;)
now only uses the reference manager on calls to start()
Modification to the Queue system; - interval of monitor is now configurable. - attempt to identify each Queue better, although this is still hard.
Now we monitor the Queue here every 60 seconds.
A tidy up of the configuration getting section.
Removed temporary code.
Best catch some exceptions... correctly.
Best catch some exceptions.
TEMPORARY: Added some temporary code to log the queue status. Messy, and will definately need to be fixed. (error in previous commit)
TEMPORARY: Added some temporary code to log the queue status. Messy, and will definately need to be fixed.
Changes to reflect move of Component, ComponentStartException, and the ReferenceManager from util to componentmanager.
Changes to reflect move of Component, ComponentStartException, and the ReferenceManager from util to componentmanager.
Implemented use of the CIWrapper class, and the Queue.
fixed naming problem by only using the static
fixed some silly bugs
fixed mistake where it creates both interfaces but should only create one
supports not starting particular interfaces.
updated code componeterized the system
Modified to use the dbinterface
modified to use the ClientInterface system
added line to redefine the toString() its temporary...but what the hell...when we do our funky class to have a standard toString() it might be better! ;-p
Fixed error of wrong class name
Updated to use the uk.ac.ukc.iscream.util.ReferenceManager
Package updates.
Made changes to fit in with the new package structure. Also made sure all files conform to the template class.
Whoops, should have changed the class header with the filename :)
Main method for a Root Filter. The Root Filter lives at the root of the filter system, and will ultimately deal with the deliver of data into the 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.