Scott Boag/CAM/Lotus wrote:
>
> Stefano Mazzocchi said:
> > propose to start discussing some XML Output API to propose an addiction
> > to the proposed Sun's XML Java API that currently lack output features:
> >
> > interface Serializer() extends DocumentHandler {
> >
> > void setOutputFormat(OutputFormat);setOutputByteStream(OutputStream
> > output);
> > void setOutputCharStream(Writer output);
> >
> > void serialize(Element elem) throws IOException;
> > void serialize(Document doc) throws IOException;
> > }
>
> I'm not sure what the point to this is. The whole point of DocumentHandler
> is that you don't want to know that it is serializing, constructing a DOM
> tree, or doing something totally different.
Correct. The whole point of extentions is to add features inheriting the
old ones.
> I don't know what is gained by
> making the Serializer interface an extension to DocumentHandler.
because a DocumentHandler, like you said, doesn't have a clue on what
it's doing. The DocumentHandler caller doesn't care, but you _do_ care
about where the serialized data is going.
So, like the interface clearly states, a Serializer is a consumer, so
implements DocumentHandler, but it serializes on an output stream with
the given output format.
It also allows for DOM serialization.
> > class SerializerFactory() {
> >
> > Serializer makeSerializer(Writer writer, OutputFormat format);
> > Serializer makeSerializer(OutputStream output, OutputFormat
> > format) throws UnsupportedEncodingException;
> >
> > }
>
> I'm with Assaf Arken that I would like to see a registerSerializerFactory
> method on Serializer. The concept of the SerializerFactory is good.
Good.
Stefano.