Commit Graph

17 Commits

Author SHA1 Message Date
Kelley Cook
917b04f492 Update FSF address
From-SVN: r101453
2005-06-30 03:22:09 +00:00
Michael Koch
59fc63fcf8 [multiple changes]
2005-02-17  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/nio/ByteBufferImpl.java (compact):
	Set position and limit even if no bytes were moved.

2005-02-17  Michael Koch  <konqueror@gmx.de>

	* java/nio/CharViewBufferImpl.java (compact): Likewise.
	* java/nio/DirectByteBufferImpl.java (compact): Likewise.
	* java/nio/DoubleViewBufferImpl.java (compact): Likewise.
	* java/nio/FloatViewBufferImpl.java (compact): Likewise.
	* java/nio/IntViewBufferImpl.java (compact): Likewise.
	* java/nio/LongViewBufferImpl.java (compact): Likewise.
	* java/nio/MappedByteBufferImpl.java (compact): Likewise.
	* java/nio/ShortViewBufferImpl.java (compact): Likewise.
	* java/nio/FloatBufferImpl.java (compact): Set position.
	* java/nio/CharBufferImpl.java (compact): Likewise.
	* java/nio/DoubleBufferImpl.java (compact): Likewise.
	* java/nio/IntBufferImpl.java (compact): Likewise.
	* java/nio/LongBufferImpl.java (compact): Likewise.
	* java/nio/ShortBufferImpl.java (compact): Likewise.

2005-02-17  Jeroen Frijters  <jeroen@frijters.net>

	* java/nio/ByteBufferImpl.java,
	java/nio/CharBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/DoubleBufferImpl.java,
	java/nio/FloatBufferImpl.java,
	java/nio/IntBufferImpl.java,
	java/nio/LongBufferImpl.java,
	java/nio/MappedByteBufferImpl.java,
	java/nio/ShortBufferImpl.java
	(compact): Added explicit read-only check and invalidate mark.

From-SVN: r95176
2005-02-17 18:13:07 +00:00
Michael Koch
d2ba8a75ef re PR libgcj/18115 (JNI nio buffer functions only work with byte buffers)
2005-01-07  Michael Koch  <konqueror@gmx.de>

	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.

From-SVN: r93046
2005-01-07 11:32:07 +00:00
Jeroen Frijters
b4345a57d8 2004-11-24 Jeroen Frijters <address@bogus.example.com>
* 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.

From-SVN: r91147
2004-11-24 11:11:46 +00:00
Michael Koch
11dde1bb18 NIOServerSocket.java: Added email to @author tag.
2004-11-24  Michael Koch  <konqueror@gmx.de>

	* 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.

From-SVN: r91146
2004-11-24 10:44:18 +00:00
Michael Koch
b38cd28c43 DirectByteBufferImpl.java, [...]: Reformatted.
2004-11-24  Michael Koch  <konqueror@gmx.de>

	* java/nio/DirectByteBufferImpl.java,
	java/nio/MappedByteBufferImpl.java:
	Reformatted.

From-SVN: r91141
2004-11-24 09:13:33 +00:00
Michael Koch
2c661756f4 [multiple changes]
2004-10-18  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/protocol/http/Connection.java,
	java/nio/MappedByteBufferImpl.java,
	java/text/RuleBasedCollator.java,
	java/util/ResourceBundle.java:
	Reworked import statements.

2004-10-18  Jeroen Frijters  <jeroen@frijters.net>

	* java/security/IdentityScope.java
	(systemScope): Removed useless initializer.
	* java/security/Policy.java
	(currentPolicy): Likewise.

From-SVN: r89210
2004-10-18 12:22:51 +00:00
Dalibor Topic
23c41c0833 Buffer.java, [...]: Fixed javadocs all over.
2004-07-09  Dalibor Topic  <robilad@kaffe.org>

	* 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.

From-SVN: r84366
2004-07-09 13:40:29 +00:00
Michael Koch
86a80fc352 2004-04-21 Michael Koch <konqueror@gmx.de>
* 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.

From-SVN: r80967
2004-04-21 15:33:53 +00:00
Michael Koch
08c5d75719 ByteBufferImpl.java, [...]: Made sure all classes are final and removed final keyword from all methods.
2004-04-20  Michael Koch  <konqueror@gmx.de>

	* 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.

From-SVN: r80907
2004-04-20 14:54:37 +00:00
Per Bothner
d199feb748 MappedByteBuffer.java: (forceImpl...
* java/nio/MappedByteBuffer.java: (forceImpl, isLoadedImpl, loadImpl,
	unmapImpl):  New dummy methods, to be overridden by subclass.
	(finalize, isLoaded, load, force):  New methods.
	* java/nio/MappedByteBufferImpl.java:  More-or-less rewrite.
	Now works, at least for read mapping.

From-SVN: r78662
2004-02-29 11:12:45 -08:00
Per Bothner
35d0b14df6 ByteBuffer.java (endian): Make non-private so other java.nio classes can inherit it.
* java/nio/ByteBuffer.java (endian):  Make non-private so other
	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.

From-SVN: r77919
2004-02-16 12:00:33 -08:00
Per Bothner
40c23042f4 ByteBuffer.java (shiftDown): New helper method.
* java/nio/ByteBuffer.java (shiftDown):  New helper method.
	* 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.

From-SVN: r77501
2004-02-08 13:02:53 -08:00
Michael Koch
5e2ba18bc1 ByteBufferHelper.java: New file.
2003-09-25  Michael Koch  <konqueror@gmx.de>

	* 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.

From-SVN: r71757
2003-09-25 06:43:52 +00:00
Michael Koch
7318eb21d1 2003-08-02 Michael Koch <konqueror@gmx.de>
* 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.

From-SVN: r70102
2003-08-02 11:17:40 +00:00
Michael Koch
ae26c8e25f FileChannelImpl.java, [...]: Removed.
2003-07-13  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java,
	gnu/java/nio/natFileChannelImpl.cc: Removed.
	* java/io/FileInputStream.java,
	java/io/FileOutputStream.java,
	java/io/RandomAccessFile.java,
	java/nio/MappedByteBufferImpl.java:
	Import java.nio.channels.FileChannelImpl instead of
	gnu.java.nio.FileChannelImpl.
	* java/nio/channels/FileChannelImpl.java,
	java/nio/channels/natFileChannelImpl.cc:
	New files.
	* Makefile.am
	(ordinary_java_source_files):
	Removed gnu/java/nio/FileChannelImpl.java and added
	java/nio/channels/FileChannelImpl.java.
	(nat source_files):
	Removed gnu/java/nio/natFileChannelImpl.cc and added
	java/nio/channels/natFileChannelImpl.cc.
	* Makefile.in: Regenerated.

From-SVN: r69296
2003-07-13 16:53:05 +00:00
Michael Koch
c52c9fec50 MappedByteFileBuffer.java, [...]: Removed
2003-06-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/MappedByteFileBuffer.java,
	gnu/java/nio/natMappedByteFileBuffer.cc:
	Removed
	* java/nio/MappedByteBufferImpl.java:
	New file.
	* gnu/java/nio/FileChannelImpl.java:
	Use MappedByteBufferImpl instead of MappedByteFileBuffer.
	* Makefile.am
	(ordinary_java_source_files): Removed
	gnu/java/nio/MappedByteFileBuffer.java and added
	java/nio/MappedByteBufferImpl.java.
	(nat_source_files): Removed gnu/java/nio/natMappedByteFileBuffer.cc
	* Makefile.in: Regenerated.

From-SVN: r68259
2003-06-20 12:01:54 +00:00