Commit Graph

74 Commits

Author SHA1 Message Date
Mohan Embar
7dcc98e25c * gnu/java/net/PlainSocketImpl.java
(inChannelOperation): New field.
	(isInChannelOperation): New accessor.
	(setInChannelOperation): New modifier.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(accept): Set and reset our server socket's PlainSocketImpl's
	"in channel operation" indicator before and after delegating
	the accept to our server socket.
	* gnu/java/nio/SocketChannelImpl.java
	(connect): Set and reset our socket's PlainSocketImpl's "in channel
	operation" indicator before and after delegating the operation to
	our socket.
	(read): Likewise.
	(write): Likewise.
	* java/net/ServerSocket.java (implAccept): Don't throw an
	IllegalBlockingModeException if we have a non-blocking
	channel which initiated this accept operation.
	* java/net/Socket.java (connect): Don't throw an
	IllegalBlockingModeException if we have a non-blocking
	channel which initiated this connect operation.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(configureBlocking): Only call implConfigureBlocking() if
	the desired blocking mode is different from our current one.

From-SVN: r76956
2004-01-30 13:43:21 +00:00
Michael Koch
9719e37cec FileLockImpl.java: Fixed filename in copyright.
2004-01-23  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileLockImpl.java:
	Fixed filename in copyright.
	(released): Removed.
	(finalize): New method.
	* gnu/java/nio/natFileLockImpl.cc
	(releaseImpl): Implemented.
	* java/nio/channels/FileChannelImpl.java:
	Reworked imports.
	(lock): Implemented.
	(lockImpl): New method.
	(tryLock): Implemented.
	(tryLockImpl): New method.
	* java/nio/channels/natFileChannelImpl.cc
	(lockImpl): New method.
	(tryLockImpl): New method.

From-SVN: r76422
2004-01-23 14:37:09 +00:00
Michael Koch
26067b8be8 2004-01-07 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(blocking): Removed.
	(DatagramChannelImpl): Call configureBlocking().
	(implConfigureBlocking): Dont initialize blocking.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(blocking): Removed.
	(ServerSocketChannelImpl): Call configureBlocking().
	(implConfigureBlocking): Dont initialize blocking.
	* gnu/java/nio/SocketChannelImpl.java
	(blocking): Removed.
	(SocketChannelImpl): Call configureBlocking().
	(implConfigureBlocking): Dont initialize blocking.
	(connect): Use isBlocking().
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(configureBlocking): Use blockingLock() instead of LOCK.
	Set blocking after successfully called implConfigureBlocking().
	(register): Use blockingLock() instead of LOCK.

From-SVN: r75507
2004-01-07 16:51:49 +00:00
Mohan Embar
677f99cce5 * gnu/java/nio/SelectorImpl.java
(selectThreadMutex): New field.
	(selectThread): New field.
	(unhandledWakeup): New field.
	(implCloseSelector): Added skeleton code which
	synchronizes as per Sun JRE JavaDoc.
	(keys): Throw ClosedSelectorException if selector
	is closed.
	(selectNow): Added comment that we're faking out
	an immediate select with a one-microsecond-timeout one.
	(select): Use 0 instead of -1 for infinite timeout.
	(implSelect): Changed comment in declaration.
	(select): Added synchronized to method declaration.
	Added synchronization and wakeup support as per Sun
	JRE JavaDoc.
	(selectedKeys): Throw ClosedSelectorException if selector
	is closed.
	(wakeup): Implemented.
	(deregisterCancelledKeys): Synchronize on cancelled key
	set before deregistering.
	(register): Synchronize on key set before registering.
	* java/nio/channels/spi/AbstractSelector.java
	Added import for java.nio.channels.ClosedSelectorException.
	(close): Added synchronized to method declaration.
	(cancelledKeys): Throw ClosedSelectorException if selector
	is closed.
	(cancelKey): Synchronize on cancelled key set before key.

From-SVN: r74879
2003-12-20 15:33:24 +00:00
Michael Koch
01da266767 ChannelOutputStream.java: New file.
2003-12-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ChannelOutputStream.java: New file.
	* java/nio/channels/Channels.java
	(newOutputStream): Implemented.
	* Makefile.am (ordinary_java_source_files)
	Added gnu/java/nio/ChannelOutputStream.java.
	* Makefile.in: Regenerated.

From-SVN: r74847
2003-12-19 20:42:00 +00:00
Michael Koch
26392535a7 ChannelInputStream.java: New file.
2003-12-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ChannelInputStream.java: New file.
	* java/nio/channels/Channels.java (newInputStream): Implemented.
	* java/nio/channels/FileChannelImpl.java
	(readImpl): Only put data into buffer if something was read.
	* Makefile.am (ordinary_java_source_files):
	Added gnu/java/nio/ChannelInputStream.java.
	* Makefile.in: Regenerated.

From-SVN: r74842
2003-12-19 19:06:34 +00:00
Michael Koch
9175d628d0 OutputStreamChannel.java: New file.
2003-12-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/OutputStreamChannel.java: New file.
	* java/nio/channels/Channels.java (newChannel): Implemented.
	* Makefile.am (ordinary_java_source_files):
	Added gnu/java/nio/OutputStreamChannel.java.
	* Makefile.in: Regenerated.

From-SVN: r74840
2003-12-19 16:31:59 +00:00
Michael Koch
b8362a2315 InputStreamChannel.java: New file.
2003-12-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/InputStreamChannel.java: New file.
	* java/nio/channels/Channels.java (newChannel): Implemented.

From-SVN: r74838
2003-12-19 15:22:33 +00:00
Michael Koch
d9b526cc1d 2003-12-02 Michael Koch <konqueror@gmx.de>
* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(opened): Removed.
	(closed): New field.
	(close): Check of channel is closed already.
	(isOpen): Return !closed.

From-SVN: r74182
2003-12-02 15:11:57 +00:00
Michael Koch
c824ce21ca 2003-11-11 Michael Koch <konqueror@gmx.de>
* java/nio/ByteBuffer.java
	(equals): Remove redundant obj == null check.

From-SVN: r73447
2003-11-11 11:56:58 +00:00
Michael Koch
c4ff410a6b ByteOrder.java, [...]: Add code to load library with code for native methods if needed.
2003-10-21  Michael Koch  <konqueror@gmx.de>

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

From-SVN: r72747
2003-10-21 12:55:02 +00:00
Michael Koch
1adef66864 2003-10-13 Michael Koch <konqueror@gmx.de>
* java/nio/Buffer.java
	(hasRemaining): Made implementation more clear.
	* java/nio/MappedByteBuffer.java
	(loaded): New member variable.
	(force): Added comment.
	(isLoaded): Return value of loaded.
	(load): Set loaded to true, added comment.

From-SVN: r72418
2003-10-13 04:45:03 +00:00
Michael Koch
81bc077a39 2003-10-12 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/PipeImpl.java
	(SourceChannelImpl): New inner class.
	(SinkChannelImpl): New inner class.
	(sink): New member variable.
	(source): New member variable.
	(PipeImpl): Add SelectorProvider argument, implemented.
	(nativeInit): New method.
	(sink): Return sink channel.
	(source): Return source channel.
	* gnu/java/nio/SelectorProviderImpl.java
	(openPipe): Give provider as argument to PipeImpl constructor.
	* java/nio/channels/spi/SelectorProvider.java
	(pr): Removed.
	(systemDefaultProvider): New member variable.
	(provider): Made it synchronized, use property
	java.nio.channels.spi.SelectorProvider.
	* gnu/java/nio/natPipeImpl.cc: New file.
	* Makefile.am (nat_source_files): Added gnu/java/nio/natPipeImpl.cc.
	* Makefile.in: Regenerated.

From-SVN: r72397
2003-10-12 13:39:07 +00:00
Michael Koch
eb0043a057 Channel.java, [...]: Removed redundant modifiers.
2003-10-11  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/Channel.java,
	java/nio/channels/GatheringByteChannel.java,
	java/nio/channels/ReadableByteChannel.java,
	java/nio/channels/ScatteringByteChannel.java,
	java/nio/channels/WritableByteChannel.java:
	Removed redundant modifiers.

From-SVN: r72355
2003-10-11 18:45:10 +00:00
Michael Koch
4e3cb200a5 2003-10-09 Michael Koch <konqueror@gmx.de>
* java/nio/channels/spi/AbstractSelectableChannel.java
	(registered): Made private.
	(blocking): Likewise.
	(LOCK): Likewise.
	(provider): Likewise.
	(keys): Made it a private LinkedList.
	(AbstractSelectableChannel): Initialize keys.
	(isRegistered): New implementation.
	(locate): Rewritten.
	(register): Rewritten.
	* java/nio/channels/spi/AbstractSelectionKey.java
	(ok): Removed.
	(cancelled): New member variable.
	(cancel): Rewritten.
	(isValid): Rewritten.
	* java/nio/channels/spi/AbstractSelector.java:
	Some methods moved.
	(closed): Make private.
	(provider): Likewise.
	(cancelledKeys): New member variable.
	(AbstractSelector): Initialize cancelledKeys.
	(cancelKey): New method.

From-SVN: r72275
2003-10-09 17:34:10 +00:00
Michael Koch
a08a2b7514 ByteBufferHelper.java: Rewrote all methods by suggestions from Eric Blake.
2003-10-02  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBufferHelper.java:
	Rewrote all methods by suggestions from Eric Blake.

From-SVN: r72030
2003-10-02 15:02:32 +00:00
Michael Koch
853ca657f0 ByteBufferHelper.java: Totally reworked with help from Eric Blake.
2003-09-26  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBufferHelper.java:
	Totally reworked with help from Eric Blake.

From-SVN: r71823
2003-09-26 16:22:09 +00: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
1226b900dc 2003-06-27 Michael Koch <konqueror@gmx.de>
* 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.

From-SVN: r68571
2003-06-27 13:34:12 +00:00
Michael Koch
3a63ab4010 2003-06-24 Michael Koch <konqueror@gmx.de>
* java/nio/Buffer.java
	(cap): Made package-private.
	(pos): Likewise.
	(limit): Likewise.
	(mark): Likewise.

From-SVN: r68417
2003-06-24 11:19: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
Michael Koch
6f3aed57fb 2003-06-17 Michael Koch <konqueror@gmx.de>
* 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.

From-SVN: r68105
2003-06-17 19:09:56 +00:00
Michael Koch
6bd883297e MappedByteBuffer.java, [...]: Removed unneeded imports.
2003-06-11  Michael Koch  <konqueror@gmx.de>

	* java/nio/MappedByteBuffer.java,
	java/nio/channels/Channels.java,
	java/nio/channels/ServerSocketChannel.java,
	java/nio/channels/spi/AbstractSelector.java:
	Removed unneeded imports.

From-SVN: r67756
2003-06-11 10:38:58 +00:00
Michael Koch
3a5eb28322 ByteBufferImpl.java, [...]: Moved files to java/nio.
2003-05-20  Michael Koch  <konqueror@gmx.de>

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

From-SVN: r66990
2003-05-20 08:58:31 +00:00
Michael Koch
27d645f767 2003-05-19 Michael Koch <konqueror@gmx.de>
* java/nio/CharBuffer.java
	(toString): Compile fix.

From-SVN: r66953
2003-05-19 07:48:35 +00:00
Michael Koch
10832fce7c 2003-05-19 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/ByteBufferImpl.java
	(putLong): Fixed conversion to bytes.
	(putDouble): Fixed conversion to bytes.
	* gnu/java/nio/DirectByteBufferImpl.java
	(putLong): Fixed conversion to bytes.
	(putDouble): Fixed conversion to bytes.
	* gnu/java/nio/FileLockImpl.java
	(isValid): Reformatted.
	* java/nio/Buffer.java
	(Buffer): Fixed off-by-one bug in handling mark.
	* java/nio/ByteBuffer.java:
	Added newline.
	* java/nio/CharBuffer.java
	(toString): Don't use relative get to get string data.

From-SVN: r66946
2003-05-19 06:59:23 +00:00
Michael Koch
cc1b3d6b64 2003-05-14 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileLockImpl.java
	(released): New member variable.
	(FileLockImpl): Initialize released.
	(releaseImpl): New native method.
	(release): Implemented.
	* gnu/java/nio/SelectorImpl.java: Reformatted.
	* gnu/java/nio/SelectionKeyImpl.java: Reformatted.
	* gnu/java/nio/ServerSocketChannelImpl.java: Reformatted.
	(accept): Throws IOException.
	* gnu/java/nio/SocketChannelImpl.java: Reformatted.
	(implConfigureBlocking): Throws IOException.
	(connect): Likewise.
	(read): Likewise.
	(write): Likewise.
	* gnu/java/nio/natFileLockImpl.cc: New file.
	* java/nio/channels/FileLock.java: Reformatted.
	* Makefile.am:
	(ordinary_java_source_files): Added gnu/java/nio/FileLockImpl.java.
	(nat_source_files): Added gnu/java/nio/natFileLockImpl.cc.
	* Makefile.in: Regenerated.

From-SVN: r66799
2003-05-14 06:37:59 +00:00
Michael Koch
c6f824e248 2003-05-13 Michael Koch <konqueror@gmx.de>
* java/nio/channels/FileChannel.java
	(MapMode.m): Made it package-private to match JDK 1.4.
	* java/nio/charset/Charset.java
	(decode): Made it final to match JDK 1.4.

From-SVN: r66756
2003-05-13 10:25:00 +00:00
Michael Koch
3b6b673dab 2003-05-13 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/ByteBufferImpl.java
	(ByteBufferImpl): All constructors revised.
	(slice): Reimplemented.
	(duplicate): Reimplemented.
	(asReadOnlyBuffer): Reimplemented.
	* java/nio/ByteBuffer.java:
	Reformatted.
	(array_offset): Renamed from "offset" to match all other buffer
	classes.
	(ByteBuffer): All constructors revised.
	(allocateDirect): Implemented.
	(allocate): New implementation, documentation reworked.
	(wrap): Likewise.
	(get): Documentation reworked.
	(put): New implementation, documentation reworked.
	(hasArray): Documentation reworked.
	(arrayOffset): Likewise.
	(hashCode): Likewise.
	(equals): Likewise.
	(compareTo): Likewise.
	(order): Likewise.
	(compact): Likewise.
	(isDirect): Likewise.
	(slice): Likewise.
	(duplicate): Likewise.
	(asReadOnlyBuffer): Likewise.
	* Makefile.am
	(ordinary_java_source_files):
	Added gnu/java/nio/DirectByteBufferImpl.java.
	(nat_source_files):
	Added gnu/java/nio/natDirectByteBufferImpl.cc.
	* Makefile.in: Regenerated.

From-SVN: r66749
2003-05-13 06:04:19 +00:00
Michael Koch
36d4669b73 ByteBufferImpl.java: Reformatted.
2003-05-12  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java: Reformatted.
	(nio_get_*): Removed.
	(nio_put_*): Removed.
	(as*Buffer): Implemented.
	(compact): Implemented.
	(get): Documentation added.
	(put): Documentation added.
	(get*): Newly implemented.
	(put*): Newly implemented.
	* gnu/java/nio/CharBufferImpl.java: Reformatted.
	(CharBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* gnu/java/nio/DirectByteBufferImpl.java
	(allocateDirect): objects can be null not 0.
	* gnu/java/nio/DoubleBufferImpl.java: Reformatted.
	(DoubleBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* gnu/java/nio/FloatBufferImpl.java: Reformatted.
	(FloatBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* gnu/java/nio/IntBufferImpl.java: Reformatted.
	(IntBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* gnu/java/nio/LongBufferImpl.java: Reformatted.
	(LongBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* gnu/java/nio/ShortBufferImpl.java: Reformatted.
	(ShortBufferImpl): Revised.
	(slice): New implementation.
	(duplicate): New implementation.
	(compact): New implementation.
	(asReadOnlyBuffer): New implementation.
	(get): Documentation revised.
	(order): Return native byte order.
	* java/nio/CharBuffer.java: Reformatted, much documentation rewritten.
	(CharBuffer): Revised.
	(order): Removed.
	* java/nio/DoubleBuffer.java: Reformatted, much documentation rewritten.
	(DoubleBuffer): Revised.
	(allocateDirect): Removed.
	(order): Removed.
	* java/nio/FloatBuffer.java: Reformatted, much documentation rewritten.
	(FloatBuffer): Revised.
	(allocateDirect): Removed.
	(order): Removed.
	* java/nio/IntBuffer.java: Reformatted, much documentation rewritten.
	(IntBuffer): Revised.
	(allocateDirect): Removed.
	(order): Removed.
	* java/nio/LongBuffer.java: Reformatted, much documentation rewritten.
	(LongBuffer): Revised.
	(allocateDirect): Removed.
	(order): Removed.
	* java/nio/ShortBuffer.java: Reformatted, much documentation rewritten.
	(ShortBuffer): Revised.
	(allocateDirect): Removed.
	(order): Removed.
	* gnu/java/nio/natByteBufferImpl.cc: Removed.
	* gnu/java/nio/natCharBufferImpl.cc: Removed.
	* Makefile.am
	(ordinary_java_source_files): Added the following files:
	gnu/java/nio/CharViewBufferImpl.java,
	gnu/java/nio/DoubleViewBufferImpl.java,
	gnu/java/nio/FloatViewBufferImpl.java,
	gnu/java/nio/IntViewBufferImpl.java,
	gnu/java/nio/LongViewBufferImpl.java,
	gnu/java/nio/ShortViewBufferImpl.java
	(nat_source_files): Removed the following files:
	gnu/java/nio/natByteBufferImpl.cc,
	gnu/java/nio/natCharBufferImpl.cc
	* Makefile.in: Regenerated.

From-SVN: r66733
2003-05-12 20:45:20 +00:00
Michael Koch
ddf87cfafa 2003-05-10 Michael Koch <konqueror@gmx.de>
* java/nio/CharBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.
	* java/nio/DoubleBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.
	(put): Reformatted.
	* java/nio/FloatBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.
	* java/nio/IntBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.
	* java/nio/LongBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.
	* java/nio/ShortBuffer.java
	(offset): Make it package-private.
	(backing_buffer): Likewise.

From-SVN: r66657
2003-05-10 07:50:00 +00:00
Michael Koch
c363e02d01 2003-05-10 Michael Koch <konqueror@gmx.de>
* java/nio/CharBuffer.java
	(put): Fixed precondtion check.
	(toString): Make it work without backing array.
	(put): Skip one level of method calling.

From-SVN: r66656
2003-05-10 07:41:59 +00:00
Michael Koch
4b6eac52d5 2003-05-02 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileChannelImpl.java
	(read): New implementation.
	(implRead): New methods.
	(write): New implementation, call other write insteal of read method.
	(implWrite): New methods.
	(map): Added comment.
	(transferFrom): Implemented.
	(transferTo): Implemented.
	(lock): Added checks to throw exceptions.
	(truncate): Added check to throw exception.
	* gnu/java/nio/natFileChannelImpl.cc
	(implRead): New method.
	(implWrite): New method.
	* java/nio/ByteBuffer.java
	(hashCode): Fixed comment.
	(get): Fixed exception documentation.
	(put): Fixed exception documentation.
	* java/nio/CharBuffer.java:
	Added comment for later optimizations.

From-SVN: r66373
2003-05-02 05:35:57 +00:00
Michael Koch
f1b62339fa 2003-03-17 Michael Koch <konqueror@gmx.de>
* java/net/DatagramSocket.java
	(connect): Fixed comment.
	* java/nio/ByteBuffer.java
	(hasArray): Fixed comment.

From-SVN: r64487
2003-03-17 15:31:33 +00:00
Michael Koch
b772d2f592 2003-03-11 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/ByteBufferImpl.java
	(putInt): Use limit() instead of limit.
	* gnu/java/nio/CharBufferImpl.java
	(slice): Fixed implementation.
	(subSequence): Better bounds checking.
	* gnu/java/nio/MappedByteFileBuffer.java:
	Import all needed classes directly.
	* java/nio/ByteBuffer.java
	(hashCode): New dummy method.
	* java/nio/CharBuffer.java
	(array_offset): New member variable.
	(hasArray): Fixed documentation.
	(arrayOffset): Return array_offset.

From-SVN: r64165
2003-03-11 10:30:52 +00:00
Michael Koch
2e65e47e26 2003-03-10 Michael Koch <konqueror@gmx.de>
* java/nio/ByteOrder.java
	(nativeOrder): Working implementation, added documentation.
	(toString): Added documentation.

From-SVN: r64085
2003-03-10 15:31:03 +00:00
Michael Koch
681979f075 2003-02-19 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/ByteBufferImpl.java
	(ByteBufferImpl): Renamed two variables.
	* gnu/java/nio/CharBufferImpl.java
	(CharBufferImpl): Renamed two variables.
	* gnu/java/nio/DoubleBufferImpl.java
	(DoubleBufferImpl): Renamed two variables.
	* gnu/java/nio/FloatBufferImpl.java
	(FloatBufferImpl): Renamed two variables.
	* gnu/java/nio/IntBufferImpl.java
	(IntBufferImpl): Renamed two variables.
	* gnu/java/nio/LongBufferImpl.java
	(LongBufferImpl): Renamed two variables.
	* gnu/java/nio/ShortBufferImpl.java
	(ShortBufferImpl): Renamed two variables.
	* java/nio/CharBuffer.java
	(wrap): Fixed arguments to CharBufferImpl constructor.
	(hasArray): Only not read-only buffers have backing arrays.
	(length): Documentation added.
	(subSequence): Documentation added.
	* java/nio/DoubleBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/FloatBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/IntBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/LongBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/ShortBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.

From-SVN: r63101
2003-02-19 11:47:49 +00:00
Michael Koch
69c107efe4 2003-02-18 Michael Koch <konqueror@gmx.de>
* java/nio/channels/FileChannel.java
	(toString): New implementation, added documentation.
	(map): Added exception documentation.
	(size): Added exception documentation.
	(write): New methods, documentation work.
	(read): New methods, documentation work.
	(implCloseChannel): Rewrote exception documentation.
	(force): Throws IOException, added documentation.
	(lock): New methods.
	(tryLock): New methods.
	(position): New methods.
	(transferTo): New method.
	(transferFrom): New method.
	(truncate): New method.
	* java/nio/channels/spi/SelectorProvider.java
	(provider): Implemented.
	* Makefile.am
	(ordinary_java_source_files): Added the following files:
	gnu/java/nio/DatagramChannelImpl.java
	gnu/java/nio/FileChannelImpl.java
	gnu/java/nio/PipeImpl.java
	gnu/java/nio/SelectionKeyImpl.java
	gnu/java/nio/SelectorImpl.java
	gnu/java/nio/SelectorProviderImpl.java
	gnu/java/nio/ServerSocketChannelImpl.java
	gnu/java/nio/SocketChannelImpl.java
	java/nio/channels/FileLock.java
	(nat_java_source_files): Added the following files:
	gnu/java/nio/natFileChannelImpl.cc
	gnu/java/nio/natSelectorImpl.cc
	gnu/java/nio/natSocketChannelImpl.cc
	* Makefile.in: Regenerated.

From-SVN: r63028
2003-02-18 07:26:20 +00:00
Jesse Rosenstock
a59159654b 2003-02-15 Jesse Rosenstock <jmr@ugcs.caltech.edu>
* java/nio/charset/Charset.java
	(isRegistered): Fixed method args and implementation.
	* java/nio/charset/CharsetEncoder.java
	(unmappableCharacterAction): New method.

From-SVN: r62934
2003-02-15 09:39:51 +00:00
Michael Koch
8c9c9dfb8f 2003-02-13 Michael Koch <konqueror@gmx.de>
* java/nio/ByteBuffer.java
	(endian): New member variable.
	(get): New methods.
	(equals): New method.
	(compareTo): New method.
	(order): New methods.
	(compact): New method.
	(isDirect): New method.
	(slice): New method.
	(duplicate): New method.
	(asReadOnlyBuffer): New method.
	(asCharBuffer): New method.
	(asDoubleBuffer): New method.
	(asFloatBuffer): New method.
	(asIntBuffer): New method.
	(asLongBuffer): New method.
	(asShortBuffer): New method.
	(get*): New methods.
	(put*): New methods.
	(toString): New method.
	* java/nio/CharBuffer.java
	(CharBuffer): Implement Comparable instead of Cloneable.
	(get): May not be final.
	(put): May not be final.

From-SVN: r62836
2003-02-13 11:37:10 +00:00
Michael Koch
9038b8b4d3 natByteBufferImpl.cc, [...]: Added copyright and license.
2003-02-13  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natByteBufferImpl.cc,
	gnu/java/nio/natCharBufferImpl.cc,
	gnu/java/nio/natDoubleBufferImpl.cc,
	gnu/java/nio/natFloatBufferImpl.cc,
	gnu/java/nio/natIntBufferImpl.cc,
	gnu/java/nio/natLongBufferImpl.cc,
	gnu/java/nio/natShortBufferImpl.cc:
	Added copyright and license.
	* java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/ShortBuffer.java
	(array): Throw exceptions.
	(arrayOffset): Throw exceptions.

From-SVN: r62832
2003-02-13 08:40:35 +00:00
Michael Koch
0e0335e36a Channels.java: New file.
2003-02-12  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/Channels.java: New file.
	* Makefile.am
	(ordinary_java_source_files): Added java/nio/channels/Channels.java.
	* Makefile.in: Regenerated.

From-SVN: r62762
2003-02-12 10:10:28 +00:00
Michael Koch
ad2e63d5df 2003-02-12 Michael Koch <konqueror@gmx.de>
* java/nio/ByteBuffer.java
	(allocate): Implemented.
	(wrap): Implemented.
	* java/nio/CharBuffer.java:
	Some documentation added and reworked.
	(endian): Removed.
	(allocate): Implemented.
	(wrap): Implemented.
	(array): Throw exceptions.
	(arrayOffset): Throw exceptions.
	(toString): Implemented.
	(length): Implemented.
	(put): Implemented.
	(charAt): Implemented.

From-SVN: r62760
2003-02-12 08:01:10 +00:00
Michael Koch
194ea9ced6 2003-02-11 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/natCharBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natDoubleBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natFloatBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natIntBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natLongBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natShortBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/SelectorProviderImpl.java
	(openDatagramChannel): Throws IOException.
	(openPipe): Throws IOException.
	(openSelector): Throws IOException.
	(openServerSocketChannel): Throws IOException.
	(openSocketChannel): Throws IOException.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(ServerSocketChannelImpl): Throws IOException.
	(implCloseSelectableChannel): Throws IOException.
	(implConfigureBlocking): Throws IOException.
	* java/nio/ByteBuffer.java
	(readOnly): Removed.
	(hasArray): Use isReadOnly() instead of readOnly.
	(array): Use isReadOnly() instead of readOnly.
	(arrayOffset): Use isReadOnly() instead of readOnly.
	* java/nio/CharBuffer.java
	(CharBuffer): Implements Cloneable and CharSequence.

From-SVN: r62688
2003-02-11 09:44:57 +00:00
Michael Koch
d19e783c45 2003-02-11 Michael Koch <konqueror@gmx.de>
* java/nio/Buffer.java
	(cap, lim, pos, mark): Made private
	(Buffer): Added package private constructor.
	* java/nio/ByteBuffer.java
	(ByteBuffer): Implements Cloneable.
	(offset): New member variable.
	(readOnly): New member variable.
	(backing_buffer): New member variable.
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet, documentation added.
	(allocate): Documentation added.
	(wrap): Documentation added.
	(ByteBuffer): New constructor.
	(hasArray): New method.
	(array): New method.
	(arrayOffset): New method.
	(get): Documentation added.
	(put): Documentation added.
	* java/nio/CharBuffer.java
	(CharBuffer): New constructor.
	(compareTo): Don't access member variables of Buffer directly.
	* java/nio/DoubleBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/FloatBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/IntBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/LongBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/MappedByteBuffer.java
	(MappedByteBuffer): New method.
	(force): New method.
	(isLoaded): New method.
	(load): New method.
	* java/nio/ShortBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.

From-SVN: r62685
2003-02-11 07:42:17 +00:00
Michael Koch
c0da264129 2003-02-11 Michael Koch <konqueror@gmx.de>
* java/nio/DoubleBuffer.java
	(DoubleBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(DoubleBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/FloatBuffer.java
	(FloatBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(FloatBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/IntBuffer.java
	(IntBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(IntBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/LongBuffer.java
	(LongBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(LongBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/ShortBuffer.java
	(ShortBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(ShortBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.

From-SVN: r62684
2003-02-11 06:51:34 +00:00
Michael Koch
c34ce2a637 2003-02-11 Michael Koch <konqueror@gmx.de>
* java/nio/channels/SelectionKey.java
	(OP_ACCEPT, OP_CONNECT, OP_READ, OP_WRITE): Initialize with correct
	values.

From-SVN: r62683
2003-02-11 06:50:13 +00:00
Michael Koch
d62f8f8dc7 2003-02-11 Michael Koch <konqueror@gmx.de>
* java/nio/channels/DatagramChannel.java
	(write): Throws IOException.
	(connect): Throws IOException.
	(disconnect): Throws IOException.
	(read): Throws IOException.
	(receive): Throws IOException.
	(send): Throws IOException.
	* java/nio/channels/Pipe.java
	(open): Throws IOException.
	* java/nio/channels/SelectableChannel.java
	(configureBlocking): Throws IOException.
	* java/nio/channels/ServerSocketChannel.java
	(accept): Throws IOException.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): Implements ByteChannel, ScatteringByteChannel,
	GatheringByteChannel.
	(read): Throws IOException.
	(write): Throws IOException.
	(finishConnect): Throws IOException.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(end): Throws AsynchronousCloseException.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(configureBlocking): Throws IOException.
	(implCloseChannel): Throws IOException.
	(implCloseSelectableChannel): Throws IOException.
	(implConfigureBlocking): Throws IOException.
	* java/nio/channels/spi/SelectorProvider.java
	(openDatagramChannel): Throws IOException.
	(openPipe): Throws IOException.
	(openSelector): Throws IOException.
	(openServerSocketChannel): Throws IOException.
	(openSocketChannel): Throws IOException.

From-SVN: r62682
2003-02-11 06:48:53 +00:00