diff options
Diffstat (limited to 'libjava/java/nio/LongBufferImpl.java')
-rw-r--r-- | libjava/java/nio/LongBufferImpl.java | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/libjava/java/nio/LongBufferImpl.java b/libjava/java/nio/LongBufferImpl.java index 88a9d8c..df720ee 100644 --- a/libjava/java/nio/LongBufferImpl.java +++ b/libjava/java/nio/LongBufferImpl.java @@ -1,5 +1,5 @@ /* LongBufferImpl.java -- - Copyright (C) 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -98,10 +98,16 @@ final class LongBufferImpl extends LongBuffer } /** - * Relative get method. Reads the next <code>long</code> from the buffer. + * Reads the <code>long</code> at this buffer's current position, + * and then increments the position. + * + * @exception BufferUnderflowException If there are no remaining + * <code>longs</code> in this buffer. */ public long get () { + checkForUnderflow(); + long result = backing_buffer [position ()]; position (position () + 1); return result; @@ -110,14 +116,16 @@ final class LongBufferImpl extends LongBuffer /** * Relative put method. Writes <code>value</code> to the next position * in the buffer. - * + * + * @exception BufferOverflowException If there is insufficient space in this + * buffer. * @exception ReadOnlyBufferException If this buffer is read-only. */ public LongBuffer put (long value) { - if (readOnly) - throw new ReadOnlyBufferException (); - + checkIfReadOnly(); + checkForOverflow(); + backing_buffer [position ()] = value; position (position () + 1); return this; @@ -132,6 +140,8 @@ final class LongBufferImpl extends LongBuffer */ public long get (int index) { + checkIndex(index); + return backing_buffer [index]; } @@ -145,9 +155,9 @@ final class LongBufferImpl extends LongBuffer */ public LongBuffer put (int index, long value) { - if (readOnly) - throw new ReadOnlyBufferException (); - + checkIfReadOnly(); + checkIndex(index); + backing_buffer [index] = value; return this; } |