Commit Graph

94 Commits

Author SHA1 Message Date
Michael Koch
651ba822d0 2004-07-17 Michael Koch <konqueror@gmx.de>
* java/nio/ByteOrder.java
	(static): Removed. Not needed.
	Thanks to Patrick Reali for noticing.
	* java/nio/charset/CharsetDecoder.java
	(decode): Fix for classpath bug #9177: Reset state before flipping.

From-SVN: r84856
2004-07-17 08:43:43 +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
1b2545bcf2 2004-05-30 Michael Koch <konqueror@gmx.de>
* java/nio/Buffer.java
	(limit): Fixed off by one error.
	* java/nio/CharBuffer.java
	(wrap): Fixed arguments, added javadocs.

From-SVN: r82448
2004-05-30 13:38:20 +00:00
Michael Koch
933522fbc3 2004-05-04 Michael Koch <konqueror@gmx.de>
* 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:
	(compareTo): Fixed bogus implementation in all buffer classes.

From-SVN: r81489
2004-05-04 21:31:30 +00:00
Michael Koch
5c09d725b1 2004-04-22 Michael Koch <konqueror@gmx.de>
* java/nio/charset/IllegalCharsetNameException.java
	(charsetName): Made private.
	(IllegalCharsetNameException): Added @param tag to javadoc.
	(getCharsetName): Added @return tag to javadoc.
	* java/nio/charset/MalformedInputException.java
	(MalformedInputException): Added @param tag to javadoc.
	(getInputLength): Revised method description, added @return tag.
	(getMessage): Added @return tag.

From-SVN: r81003
2004-04-22 06:41:36 +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
8a6c1d2951 Channels.java: Merged coding style with GNU classpath.
2004-04-20  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/Channels.java:
	Merged coding style with GNU classpath.

From-SVN: r80923
2004-04-20 20:35:14 +00:00
Michael Koch
92e1fe6748 Buffer.java, [...]: Fixed javadocs and jalopied all over java.nio.
2004-04-20  Michael Koch  <konqueror@gmx.de>

	* java/nio/Buffer.java,
	java/nio/channels/AlreadyConnectedException.java,
	java/nio/channels/AsynchronousCloseException.java,
	java/nio/channels/ByteChannel.java,
	java/nio/channels/CancelledKeyException.java,
	java/nio/channels/Channel.java,
	java/nio/channels/Channels.java,
	java/nio/channels/ClosedByInterruptException.java,
	java/nio/channels/ClosedChannelException.java,
	java/nio/channels/ClosedSelectorException.java,
	java/nio/channels/ConnectionPendingException.java,
	java/nio/channels/DatagramChannel.java,
	java/nio/channels/FileChannel.java,
	java/nio/channels/FileLock.java,
	java/nio/channels/FileLockInterruptionException.java,
	java/nio/channels/GatheringByteChannel.java,
	java/nio/channels/IllegalBlockingModeException.java,
	java/nio/channels/IllegalSelectorException.java,
	java/nio/channels/InterruptibleChannel.java,
	java/nio/channels/NoConnectionPendingException.java,
	java/nio/channels/NonReadableChannelException.java,
	java/nio/channels/NonWritableChannelException.java,
	java/nio/channels/NotYetBoundException.java,
	java/nio/channels/NotYetConnectedException.java,
	java/nio/channels/OverlappingFileLockException.java,
	java/nio/channels/Pipe.java,
	java/nio/channels/ReadableByteChannel.java,
	java/nio/channels/ScatteringByteChannel.java,
	java/nio/channels/SelectableChannel.java,
	java/nio/channels/SelectionKey.java,
	java/nio/channels/Selector.java,
	java/nio/channels/ServerSocketChannel.java,
	java/nio/channels/SocketChannel.java,
	java/nio/channels/UnresolvedAddressException.java,
	java/nio/channels/UnsupportedAddressTypeException.java,
	java/nio/channels/WritableByteChannel.java,
	java/nio/channels/spi/AbstractInterruptibleChannel.java,
	java/nio/channels/spi/AbstractSelectableChannel.java,
	java/nio/channels/spi/AbstractSelectionKey.java,
	java/nio/channels/spi/AbstractSelector.java,
	java/nio/channels/spi/SelectorProvider.java,
	java/nio/charset/spi/CharsetProvider.java:
	Fixed javadocs and jalopied all over java.nio.

From-SVN: r80909
2004-04-20 15:27:38 +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
Michael Koch
138f5109c1 2004-03-18 Michael Koch <konqueror@gmx.de>
* java/nio/channels/spi/AbstractSelectableChannel.java
	(keys): Initialize at declaration.
	(locate): keys cant be null.
	(add): Removed.
	(addSelectionKey): New method.
	(removeSelectionKey): New method.
	* java/nio/channels/spi/AbstractSelectionKey.java
	(cancel): Call AbstractSelector.cancelKey(SelectionKey key).
	* java/nio/channels/spi/AbstractSelector.java
	(provider): Javadoc added.
	(cancelledKeys): Javadoc added.
	(cancelKey): Javadoc added, add key to cancelledKeys.
	(deregister): Implemented.

From-SVN: r79640
2004-03-18 21:32:22 +00:00
Per Bothner
dd0a905f24 Channels.java (newInputStream, [...]): Optimize when argument is a FileChannelImpl.
* java/nio/channels/Channels.java (newInputStream, newOutputStream):
	Optimize when argument is a FileChannelImpl.
	(newInputStream(FileChannelImpl), newOutputStream(FileChannelImpl)):
	New native methods.
	* java/nio/channels/natChannels.cc:  New file for new native methods.
	* Makefile.am:  Update accordingly.

From-SVN: r78867
2004-03-03 15:50:03 -08: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
d5fe0403cc FileChannelImpl.java: Moved to package gnu/java/nio/channels, since we need to refer to it from java.io.
* java/nio/channels/FileChannelImpl.java:  Moved to package
	gnu/java/nio/channels, since we need to refer to it from java.io.
	* java/nio/channels/natFileChannelImpl.cc:  Removed file.

	* Makefile.am, configure.in:  Updated accordingly.

From-SVN: r78660
2004-02-29 11:10:46 -08:00
Michael Koch
ca67f27850 2004-02-28 Michael Koch <konqueror@gmx.de>
* java/nio/ByteOrder.java
	(nativeOrder): Use equals() to compare strings.

From-SVN: r78626
2004-02-28 21:16:17 +00:00
Michael Koch
f57db409bc 2004-02-26 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileLockImpl.java
	(finalize): Made protected.
	* java/nio/channels/FileChannel.java
	(MapMode.READ_ONLY): Made final.
	(MapMode.READ_WRITE): Made final.
	(MapMode.PRIVATE): Made final.
	* java/nio/channels/SocketChannel.java
	(open): Simplified code.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(registered): Unused, removed.
	(keyFor): Check channel is open, only locate key
	and not add a new one.
	(register): Don't delete attachments.

From-SVN: r78519
2004-02-26 19:45:51 +00: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
5693912a7d CharViewBufferImpl.java: New convenience constructor.
* java/nio/CharViewBufferImpl.java:  New convenience constructor.
	Fix buggy call to super constructor.
	* 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.

From-SVN: r77917
2004-02-16 11:54:49 -08:00
Per Bothner
cf68bacaad CharBufferImpl.java: Inline super constructor.
* java/nio/CharBufferImpl.java:  Inline super constructor.
	* java/nio/DoubleBufferImpl.java:  Likewise.
	* java/nio/FloatBufferImpl.java:  Likewise.
	* java/nio/IntBufferImpl.java:  Likewise.
	* java/nio/LongBufferImpl.java:  Likewise.
	* java/nio/ShortBufferImpl.java:  Likewise.
	* java/nio/CharBuffer.java:  Remove unused constructor.
	* java/nio/DoubleBuffer.java:  Likewise.
	* java/nio/FloatBuffer.java:  Likewise.
	* java/nio/IntBuffer.java:  Likewise.
	* java/nio/LongBuffer.java:  Likewise.
	* java/nio/ShortBuffer.java:  Likewise.

From-SVN: r77916
2004-02-16 11:53:27 -08:00
Per Bothner
19b17484d0 AbstractInterruptibleChannel.java (close): Set closed before calling implCloseChannel, as in the spec.
* java/nio/channels/spi/AbstractInterruptibleChannel.java (close):
	Set closed before calling implCloseChannel, as in the spec.

From-SVN: r77809
2004-02-14 10:41:48 -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
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