summaryrefslogtreecommitdiffstats
path: root/libjava/java/nio/DirectByteBufferImpl.java
Commit message (Collapse)AuthorAgeFilesLines
* 2005-01-07 Michael Koch <konqueror@gmx.de>mkoch2005-01-071-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | PR libgcj/18115 * java/nio/Buffer.java (address): New field. * java/nio/DirectByteBufferImpl.java (address): Removed. * java/nio/MappedByteBufferImpl.java (address): Likewise. * java/nio/CharViewBufferImpl.java (CharViewBufferImpl): Explicitly initialize Buffer.address if needed. * java/nio/DoubleViewBufferImpl.java (DoubleViewBufferImpl): Likewise. * java/nio/FloatViewBufferImpl.java (FloatViewBufferImpl): Likewise. * java/nio/IntViewBufferImpl.java (IntViewBufferImpl): Likewise. * java/nio/LongViewBufferImpl.java (LongViewBufferImpl): Likewise. * java/nio/ShortViewBufferImpl.java (ShortViewBufferImpl): Likewise. * jni.cc (_Jv_JNI_GetDirectBufferAddress): Don't assume buffer is a DirectByteBufferImpl object. (_Jv_JNI_GetDirectBufferCapacity): Likewise. * testsuite/libjava.jni/directbuffer.c, testsuite/libjava.jni/directbuffer.java, testsuite/libjava.jni/directbuffer.out, testsuite/libjava.jni/bytebuffer.c, testsuite/libjava.jni/bytebuffer.java, testsuite/libjava.jni/bytebuffer.out: New files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@93046 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-24 Michael Koch <konqueror@gmx.de>mkoch2004-11-241-0/+12
| | | | | | | | | | | | | | * java/nio/DirectByteBufferImpl.java (ReadWrite.ReadWrite): New constructor. (DirectByteBufferImpl): Likewise. * jni.cc (_Jv_JNI_NewDirectByteBuffer): Use DirectByteBufferImpl.ReadWrite. * Makefile.am: Generate java/nio/DirectByteBufferImpl$ReadWrite.h. * Makefile.in: Rgenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91150 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-24 Jeroen Frijters <address@bogus.example.com>mkoch2004-11-241-32/+90
| | | | | | | | | | | | | | | | | | | | | | * java/nio/DirectByteBufferImpl.java (ReadOnly): New inner subclass. (ReadWrite): New inner subclass. (owner): Made final and private. (address): Made final. (DirectByteBufferImpl(int)): New constructor. (DirectByteBufferImpl(Object,RawData,int,int,int)): New constructor. (DirectByteBufferImpl(Object,RawData,int,int,int,boolean)): Removed. (allocate): Modified to instantiate ReadWrite subclass. (finalize): Fixed to only free the buffer, if we own it. (put): Removed read-only check. (slice, duplicate): Modified to instantiate appropriate subclass. (isReadOnly): Removed. * java/nio/MappedByteBufferImpl.java (slice, duplicate): Modified to instantiate appropriate DirectByteBufferImpl subclass. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91147 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-24 Michael Koch <konqueror@gmx.de>mkoch2004-11-241-35/+13
| | | | | | | | | | | | | | | | | | * gnu/java/nio/NIOServerSocket.java: Added email to @author tag. * java/nio/DirectByteBufferImpl.java: Moved native methods to java.nio.VMDirectByteBuffer class. * java/nio/MappedByteBufferImpl.java: Use native methods from java.nio.VMDirectByteBuffer class. * java/nio/VMDirectByteBuffer.java: New file, * java/nio/natDirectByteBufferImpl.cc: Moved all methods into java.nio.VMDirectByteBuffer class. * java/nio/channels/spi/AbstractSelectableChannel.java (register): Only re-use valid keys. * Makefile.am: Added java/nio/VMDirectByteBuffer.java. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91146 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-24 Michael Koch <konqueror@gmx.de>mkoch2004-11-241-70/+70
| | | | | | | | | * java/nio/DirectByteBufferImpl.java, java/nio/MappedByteBufferImpl.java: Reformatted. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91141 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-17 Michael Koch <konqueror@gmx.de>mkoch2004-11-171-1/+9
| | | | | | | | | * java/nio/DirectByteBufferImpl.java (owner): Updated comment. (allocate): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90804 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-07-09 Dalibor Topic <robilad@kaffe.org>mkoch2004-07-091-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * java/nio/Buffer.java, java/nio/ByteBuffer.java, java/nio/ByteBufferHelper.java, java/nio/ByteBufferImpl.java, java/nio/CharBuffer.java, java/nio/CharBufferImpl.java, java/nio/CharViewBufferImpl.java, java/nio/DirectByteBufferImpl.java, java/nio/DoubleBuffer.java, java/nio/DoubleBufferImpl.java, java/nio/DoubleViewBufferImpl.java, java/nio/FloatBuffer.java, java/nio/FloatBufferImpl.java, java/nio/FloatViewBufferImpl.java, java/nio/IntBuffer.java, java/nio/IntBufferImpl.java, java/nio/IntViewBufferImpl.java, java/nio/LongBuffer.java, java/nio/LongBufferImpl.java, java/nio/LongViewBufferImpl.java, java/nio/MappedByteBufferImpl.java, java/nio/ShortBuffer.java, java/nio/ShortBufferImpl.java, java/nio/ShortViewBufferImpl.java: Fixed javadocs all over. Improved input error checking. * java/nio/Buffer.java (checkForUnderflow, checkForOverflow, checkIndex, checkIfReadOnly, checkArraySize): New helper methods for error checking. * java/nio/ByteBufferHelper.java (checkRemainingForRead, checkRemainingForWrite, checkAvailableForRead, checkAvailableForWrite): Removed no longer needed methods. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84366 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-21 Michael Koch <konqueror@gmx.de>mkoch2004-04-211-2/+7
| | | | | | | | | | | | | | * java/nio/DirectByteBufferImpl.java (shiftDown): Made static, give address as argument and provide a convenience method that overwrites shiftDown in ByteBufferImpl and calls the native shiftDown. * java/nio/MappedByteBufferImpl.java (): Use optimized method in DirectByteBufferImpl. * java/nio/natDirectByteBufferImpl.cc (shiftDown): Changed method signature. Removed usage of array_offset. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80967 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-04-20 Michael Koch <konqueror@gmx.de>mkoch2004-04-201-25/+25
| | | | | | | | | | | | | | | | | | | | | | * java/nio/ByteBufferImpl.java, java/nio/CharBufferImpl.java, java/nio/DirectByteBufferImpl.java, java/nio/DoubleBufferImpl.java, java/nio/DoubleViewBufferImpl.java, java/nio/FloatBufferImpl.java, java/nio/FloatViewBufferImpl.java, java/nio/IntBufferImpl.java, java/nio/IntViewBufferImpl.java, java/nio/LongBufferImpl.java, java/nio/LongViewBufferImpl.java, java/nio/MappedByteBufferImpl.java, java/nio/ShortBufferImpl.java, java/nio/ShortViewBufferImpl.java: Made sure all classes are final and removed final keyword from all methods. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80907 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/nio/ByteBuffer.java (endian): Make non-private so otherbothner2004-02-161-49/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | java.nio classes can inherit it. (<init>): Don't bother clearing array_offset. * java/nio/ByteBuffer.java (allocate): Re-implement using wrap. * java/nio/ByteBuffer.java (get(byte[],int,int)): Check underflow. Remove redundant test. * java/nio/ByteBufferImpl.java (asCharBuffer, asShortBuffer, asIntBuffer, asLongBuffer, asFloatBuffer, asDoubleBuffer): Use new XxxViewBufferImpl constructors. * java/nio/MappedByteBufferImpl.java: Likewise. * java/nio/DirectByteBufferImpl.java: Likewise. * java/nio/ByteBufferImpl.java: Remove one constructor. Inline super in remaining constructor. * java/nio/ByteBuffer.java: Remove unused constructor. * java/nio/ByteBufferImpl.java (shiftDown): New optimized method. * java/nio/ByteBufferImpl.java (get, put): Add array_offset. * java/nio/DirectByteBufferImpl.java (owner): New field. (offset): Remove unused field. (<init>): Modify one and add another constructor. Change callers. (allocateDirect): Removed - not used. (getImpl, putImpl): Make static and pass address explicitly, to make them useful for MappedByteBufferImpl. (get, put): Check for underflow. Modify for new getImpl. (getImpl): New native method where target is array. (get(byte[],int,int)): Use the above. (adjustAddress): New static native method. (slice, duplicate, asReadOnly): New implementations. * java/nio/natDirectByteBufferImpl.cc (getImpl, putImpl, shiftDown, adjustAddress): New or updated native methods. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77919 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/nio/ByteBuffer.java (shiftDown): New helper method.bothner2004-02-081-79/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * java/nio/natDirectByteBufferImpl.cc (shiftDown): New implementation. * java/nio/ByteBufferImpl.java (compact): Use new shiftDown method. * sava/nio/ByteBufferHelper.java: Remove redundant 'final' specifiers. Pass ByteOrder parameter to most methods, since the underlying ByteBuffer's order isn't always what we should use. * java/nio/ByteBufferImpl.java: Pass byte-order various places. * java/nio/DirectByteBufferImpl.java: Likewise. Use ByteBufferHelper methods. * java/nio/MappedByteBufferImpl.java: Likewise. (compact): Use shiftDown. * java/nio/CharViewBufferImpl.java (<init>): Pass byte-order. (get, put): Use ByteBufferHelper. (compact): Use new shiftDown method. (duplicate(boolean)): New helper method. (duplicate, asReadOnlyBuffer): Use it. (order): Return endian field. * java/nio/DoubleViewBufferImpl.java: Likewise. * java/nio/FloatViewBufferImpl.java: Likewise. * java/nio/IntViewBufferImpl.java: Likewise. * java/nio/LongViewBufferImpl.java: Likewise. * java/nio/ShortViewBufferImpl.java: Likewise. * java/nio/CharViewBufferImpl.java (subsequence): Redundant test. * java/nio/DirectByteBufferImpl.java (shiftDown): New native method. (compact): Re-implement using shiftDown. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77501 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-21 Michael Koch <konqueror@gmx.de>mkoch2003-10-211-0/+10
| | | | | | | | | | * java/nio/ByteOrder.java, java/nio/DirectByteBufferImpl.java, java/nio/channels/FileChannelImpl.java: Add code to load library with code for native methods if needed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72747 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-25 Michael Koch <konqueror@gmx.de>mkoch2003-09-251-90/+12
| | | | | | | | | | | | | | | * java/nio/ByteBufferHelper.java: New file. * java/nio/ByteBufferImpl.java, java/nio/DirectByteBufferImpl.java, java/nio/MappedByteBufferImpl.java (getType,putType): Use new helper class ByteBufferHelper. * Makefile.am (ordinary_java_source_files): Added java/nio/ByteBufferHelper.java. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71757 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-08-02 Michael Koch <konqueror@gmx.de>mkoch2003-08-021-60/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * java/nio/ByteBufferImpl.java (getChar): Check remaining bytes, fixed comment about endianess. (putChar): Likewise. (getShort): Likewise. (putShort): Likewise. (getInt): Check remaining bytes, fixed conversion, fixed comment about endianess. (putInt): Likewise. (getLong): Likewise. (putLong): Likewise. (getFloat): Likewise. (putFloat): Likewise. (getDouble): Likewise. (putDouble): Likewise. * java/nio/DirectByteBufferImpl.java (getChar): Wrapped code, fixed comment about endianess. (putchar): Likewise. (getShort): Likewise. (putShort): Likewise. (getInt): Fixed conversion, fixed comment about endianess. (putInt): Likewise. (getLong): Likewise. (putLong): Likewise. (getFloat): Likewise. (putFloat): Likewise. (getDouble): Likewise. (putDouble): Likewise. * java/nio/MappedByteBufferImpl.java (compact): Implemented. (getChar): Implemented. (putChar): Implemented. (getDouble): Implemented. (putdouble): Implemented. (getFloat): Implemented. (putFloat): Implemented. (getInt): Implemented. (putInt): Implemented. (getLong): Implemented. (putLong): Implemented. (getShort): Implemented. (putShort): Implemented. * java/nio/channels/FileChannelImpl.java (read): Set position where to access file. (write): Likewise. (transferTo): Flip buffer after read and before write. (transferFrom): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70102 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-06-27 Michael Koch <konqueror@gmx.de>mkoch2003-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | * java/nio/ByteBufferImpl.java (ByteBufferImpl): Made it a package-private class * java/nio/CharBufferImpl.java (CharBufferImpl): Made it a package-private class * java/nio/DirectByteBufferImpl.java (DirectByteBufferImpl): Made it a package-private class * java/nio/DoubleBufferImpl.java (DoubleBufferImpl): Made it a package-private class * java/nio/FloatBufferImpl.java (FloatBufferImpl): Made it a package-private class * java/nio/IntBufferImpl.java (IntBufferImpl): Made it a package-private class * java/nio/LongBufferImpl.java (LongBufferImpl): Made it a package-private class * java/nio/ShortBufferImpl.java (ShortBufferImpl): Made it a package-private class * java/nio/channels/FileChannel.java (write): Made final. * java/nio/channels/ServerSocketChannel.java (ServerSocketChanne): Made protected. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68571 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-06-17 Michael Koch <konqueror@gmx.de>mkoch2003-06-171-1/+6
| | | | | | | | | | | | | | | | | | * java/nio/DirectByteBufferImpl.java (address): Made package private. (DirectByteBufferImpl): New constructor. * java/nio/natDirectByteBufferImpl.cc (allocateImpl): Moved to java.nio namespace, implemented. (freeImpl): Likewise. (getImpl): Likewise. (putImpl): Likewise. * jni.cc (_Jv_JNI_NewDirectByteBuffer): Implemented. (_Jv_JNI_GetDirectBufferAddress): Implemented. (_Jv_JNI_GetDirectBufferCapacity): Implemented. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68105 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-05-20 Michael Koch <konqueror@gmx.de>mkoch2003-05-201-0/+416
* gnu/java/nio/ByteBufferImpl.java, gnu/java/nio/CharBufferImpl.java, gnu/java/nio/CharViewBufferImpl.java, gnu/java/nio/DirectByteBufferImpl.java, gnu/java/nio/DoubleBufferImpl.java, gnu/java/nio/DoubleViewBufferImpl.java, gnu/java/nio/FloatBufferImpl.java, gnu/java/nio/FloatViewBufferImpl.java, gnu/java/nio/IntBufferImpl.java, gnu/java/nio/IntViewBufferImpl.java, gnu/java/nio/LongBufferImpl.java, gnu/java/nio/LongViewBufferImpl.java, gnu/java/nio/natDirectByteBufferImpl.cc, gnu/java/nio/ShortBufferImpl.java, gnu/java/nio/ShortViewBufferImpl.java: Moved files to java/nio. * gnu/java/nio/SocketChannelImpl.java * java/nio/ByteBuffer.java, java/nio/CharBuffer.java, java/nio/DoubleBuffer.java, java/nio/FloatBuffer.java, java/nio/IntBuffer.java, java/nio/LongBuffer.java, java/nio/ShortBuffer.java: Dont import anything. * java/nio/ByteBufferImpl.java, java/nio/CharBufferImpl.java, java/nio/CharViewBufferImpl.java, java/nio/DirectByteBufferImpl.java, java/nio/DoubleBufferImpl.java, java/nio/DoubleViewBufferImpl.java, java/nio/FloatBufferImpl.java, java/nio/FloatViewBufferImpl.java, java/nio/IntBufferImpl.java, java/nio/IntViewBufferImpl.java, java/nio/LongBufferImpl.java, java/nio/LongViewBufferImpl.java, java/nio/natDirectByteBufferImpl.cc, java/nio/ShortBufferImpl.java, java/nio/ShortViewBufferImpl.java: Moved from gnu/java/nio. * Makefile.am (ordinary_java_source_files): Moved files from gnu/java/nio to java/nio. (nat_source_files): Moved natDirectByteBufferImpl.cc from gnu/java/nio to java/nio. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66990 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud