cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Ziegeler" <cziege...@s-und-n.de>
Subject RE: ThreadSafe Parser
Date Wed, 31 Oct 2001 11:14:51 GMT
Hi Sylvain,

unfortunately the underlying JAXP classes (SAXParserFactory etc.)
are not guaranteed to be thread safe. As the parser uses them
in the parse method, it cannot be thread safe either.

But changing the parser interface in a way you suggest, will be
considered when it's moved to Avalon (except the thread-safe point).

Carsten

> 
> Hi team,
> 
> After seeing the recent changes to Parser, I wondered why this component
> cannot be ThreadSafe. The answer is simple : Parser extends XMLProducer
> and thus setConsumer() must be called before parse().
> 
> Searching for Parser use in the sources, I found that it doesn't seem to
> be used as an XMLProducer, but always as a Parser, and that the two
> calls setConsumer() and parse() always come together.
> 
> So, what about a stateless interface for parsing, which would simply
> mean moving the XMLConsumer parameter from setConsumer() to parse() ?
> 
> interface StatelessParser extends DOMFactory {
>   void parse(InputSource source, XMLConsumer consumer);
>   void parse(InputSource source, ContentHandler ch);
>   Document parseDocument(InputSource is);
> }
> 
> Since XML parsing is widely used, this would be a step further for
> speeding up Cocoon.
> 
> Thoughts ?
> -- 
> Sylvain Wallez
> Anyware Technologies - http://www.anyware-tech.com
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> For additional commands, email: cocoon-dev-help@xml.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


Mime
View raw message