SAX: 1998-04-18 pre-release (I/O)
David.Brownell at Eng.Sun.COM
Sun Apr 19 16:55:03 BST 1998
This makes it an easy call -- "throws IOException". APIs should never
declare "throws Exception" except maybe in the earliest stage of coming
up with the exception model. And in this case, "IOException" is how any
code doing I/O will already throw exceptions; no need to for more.
By the way, the names "ByteStream" and "CharacterStream" imply they're
good for writing too. Far preferable to say "InputStream" and "Reader".
I/O in languages other than Java should obey those languages' rules, as
(and when) the SAX models are translated to them.
> Making the read methods on ByteStream and CharacterStream throw
> SAXException seems wrong to me. In a Java environment I need to be able
> to throw an IOException. So they should be declared as throwing either
> Exception or IOException. The approach in InputStreamAdapter of just
> passing through the message from IOExceptions is not acceptable. An
> application may need to deal with different classes of IOExceptions
> differently, so it needs to be possible to propagate the IOException up
> to Parser.parse.
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev