2006/4/24, Anton Avtamonov <[EMAIL PROTECTED]>:
> On 4/24/06, Mikhail Loenko <[EMAIL PROTECTED]> wrote:
> > Look at HARMONY-387.
> >
> > Example:
> > 1) java.io.ByteArrayOutputStream.write(byte[] b , int off, int len):
> > Harmony throws ArrayIndexOutOfBoundsException when off<0 or/and len
> > <0, while RI throws IndexOutOfBoundsException.
> > Specification mentions neither ArrayIndexOutOfBoundsException nor
> > IndexOutOfBoundsException.
> >
> >
> > Actually ArrayIndexOutOfBoundsException is a sub class of
> > IndexOutOfBoundsException.
> >
> > So the statement "both Harmony and RI throw IndexOutOfBoundsException" is
> > true.
> >
> > But do we have to throw exactly those exceptions that are thrown by RI?
>
> I think so. If RI behavior is reasonable and doesn't contradict to the
> spec (as above) we should unconditionally copy RI behavior.
>
> Really, why do we need additional differences even though we
> absolutely sure that particular minor deviation would have no impact
> on client apps?
>
>
> > Can we throw
> > o.a.h.VMRisenNPE that extends NullPointerException?
> >
> > What if they throw kind of
> > sun.internal.SunFavoriteSubClassOfNullPointerException ?
>
> Yeah, in case RI operates with classes not from public API I would
> propose to base on spec. Or use the nearest class from public API if
> spec doesn't work for some reasons.
> Actually, spec even contains sometimes references to the classes from
> not public API...

Really? You mean that the spec is not transitively close?
Can you give an example?

Thanks,
Mikhail

>
> Wishes,
> --
> Anton Avtamonov,
> Intel Middleware Products Division
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to