i-scream documentation viewer
minutes-20001120.txt
Minutes of meeting 20/11/00 @ 2pm
Location: UKC Computer Science Meeting Room
Present: ab11, ajm4, pjm2, tdb1
Absent: None
AJ & Tim reported back about the latest modifications to the
CORE of the system. The main point was the hierarchical
layering of includes within the configuration files. The
following format was decided;
include = file1.conf,file2.conf,file3.conf
This line would be in the root configuration file. Each
include would be processed in turn, checking to see if they
have any includes. All of these would then be brought
together into one list.
Assuming the root configuration above is root.conf, and that
each of the includes has two includes, we would get the
following list of configuration files.
root.conf, file1.conf, file1a.conf, file1b.conf,
file2.conf, file2a.conf, file2b.conf, file3.conf,
file3a.conf, file3b.conf
When a property is requested each of these files will be
checked, in order, until the requested property is found. It
was noted that this would allow a very manageable and
maintainable setup for the configuration system.
NB: The Configurator is now known as the
ConfigurationManager in the CORE.
Paul reported back that the XML/UDP stuff was finished, and
a few bugs had been fixed. Ash reported back that the Java
host application was coming along.
Next to be discussed was the hierarchical filter system, and
how this would all be tided together into the existing
system. Firstly, the system was defined as such.
Each Filter object will listen for UDP packets (containing
an XML string) on a given port, and they will also have a
method that can be invoked (passing an xml string). Both of
these ways of receiving an XML string result in the same
process of events.
The Filter then passes the XML data through a chain of
events that will ultimately dictate whether the data will be
passed on. The Filter has a "parent" reference to another
filter, to be contacting over CORBA. This parent could be
the root Filter, or indeed just another filter. The data, if
it hasn't been filtered out, will be delivered to the
parent.
Internally a filter has a series of plugins. These plugins
will be given the XML data (probably through an XMLPacket
object) and will return a boolean. True indicates the packet
is fine, False indicates it should be rejected. As soon as a
plugin returns false the packet is dropped.
Filters will obtain their configuration over CORBA from the
ConfigurationManager. This will include their parent filter
reference, and possibly which port to listen on.
It was decided that AJ & Tim would sort out the few areas
left in the CORE, and then prepare a base Filter (just the
CORBA related stuff). Paul would then attach his UDP/XML
code onto this to produce an almost complete Filter. This
should hopefully be done by the next meeting, when
implementation of plugins can be arranged.
Another issue that needed addressing was the effect CORBA
referencing has on GarbageCollection. Ian has already said
he'll look into it, but Paul has offered to question Richard
Jones about it.
In terms of Goals it was decided that by next Monday the
basics of the Server should be written (this includes the
CORE and the Filter system). For the remaining three weeks
it was put forward that we should attempt to have the Client
Interface written at a basic level, the database setup
sorted, and a basic client running. A good Java host should
also be completed. This target is important as there is a
lot more to do during the next term.
The next meeting is planned and booked for Wednesday 22nd,
between 3pm and 5pm. Group members should see above for what
they should aim to have completed by this date.