Re: New class diagram and use case

Paul de Vrieze <[email protected]>
Newsgroups gmane.linux.gentoo.installer
Message-ID <[email protected]>
On Tuesday 03 February 2004 17:46, Eric Sammer wrote:
> Paul de Vrieze wrote:
> > On Tuesday 03 February 2004 04:37, Eric Sammer wrote:
> >
> > Just remember to use a progressive xml parsing strategy like SAX (forget
> > DOM) so at least you can do things as pause. In this case you just do
> > things as you find them in the xml file. If the file/pipe blocks you
> > have a pause, else you continue, all for free.
>
> I almost always use sax because of the memory footprint size compared to
> DOM. That said, the XML parsing would have nothing to do with pausing.
> The profile would be parsed to an object if we're loading one and as the
> user goes through the process, instance variables would be filled in in
> the GLIInstallProfile object. Once it was done, a call to serialize()
> will build and write the XML. So, they are 100% separate and one would
> never effect the other.

I don't see what you mean with GLIInstallProfile, but there are basically two 
cases:
- single xml file
- multiple xml files (possibly a way to put multiple ones into one file)

In the case where there is a single xml file it is necessary that the backend 
is able to allready perform tasks at the moment that a complete task has been 
received (but following tasks not yet). As DOM works in a parse completely 
first way it is inappropriate (unless there is a dom that doesn't work that 
way).

Say that the interface between the backend and the frontend is a pipe. In that 
case a way to control the backend would be by sending an xml file over. 

How would that work together with an interactive frontend. The backend would 
try to read the pipe. At the moment that a task has been closed it will 
execute the task. If there is a task in the pipe's buffer at that moment it 
will execute the next task etc. If there is no task in the buffer, the pipe 
will block and the backend will automatically pause until the frontend tells 
it to do more.

For the backend it would not matter whether all the tasks are comming from a 
file, at once from the frontend or gradually by the frontend.

I don't care that much how or if you implement this in the frontend, but 
implementing it in the backend (where it is simpler anyway) would make it 
easy to add interactivity in a later stage.

Paul

-- 
Paul de Vrieze
Gentoo Developer
Mail: [email protected]
Homepage: http://www.devrieze.net
signature.asc (application/pgp-signature, 189 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQBAH/KEbKx5DBjWFdsRAgmqAJ42Pz4cAYNtyFPbpIwzX7YhFsWUhQCg40uE
4+dpZD0XelFlHeEzVVYI+us=
=Jqf0
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.