Commit Graph

71 Commits

Author SHA1 Message Date
Michael Koch
1287fd01cd 2004-02-26 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(send): Check if target address is resolved.

From-SVN: r78508
2004-02-26 17:17:19 +00:00
Michael Koch
99814868c1 2004-02-05 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/NIOServerSocket.java
	(impl): Unused, removed.
	* gnu/java/nio/SocketChannelImpl.java
	(finnishConnect): Don't throw NoConnectionPendingException if not
	connected or no connection pending.

From-SVN: r77317
2004-02-05 15:57:01 +00:00
Mohan Embar
8696d927c0 * gnu/java/nio/DatagramChannelImpl.java
(inChannelOperation): New field.
	(isInChannelOperation): New accessor.
	(setInChannelOperation): New modifier.
	(receive): Use capacity() - position() of destination
	buffer instead of remaining(). Set and reset our "in
	channel operation indicator" before and after delegating
	the receive to our datagram socket. Removed testing code.
	Update destination buffer's current position if it is
	backed by a byte array (hasArray() is true).
	(send): Set and reset our "in channel operation indicator"
	before and after delegating the send to our datagram socket.
	Removed testing code. Update source buffer's current position
	if it is backed by a byte array (hasArray() is true).
	* gnu/java/nio/SocketChannelImpl.java (read(ByteBuffer)):
	Use capacity() - position() of destination buffer instead
	of remaining().
	* java/net/DatagramSocket.java (receive): Don't throw an
	IllegalBlockingModeException if we have a non-blocking
	channel which initiated this operation.
	(send): Likewise.

From-SVN: r77173
2004-02-03 16:07:24 +00: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
69f2de23b2 FileLockImpl.java: Compile fixes.
2004-01-23  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileLockImpl.java: Compile fixes.

From-SVN: r76427
2004-01-23 15:53:51 +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
Mohan Embar
5cd4d463f9 win32.cc (WSAEventWrapper): Implemented default constructor and init() methods.
* win32.cc (WSAEventWrapper): Implemented default
	constructor and init() methods.
	(_Jv_select): Removed.
	* gnu/java/nio/natSelectorImplWin32.cc
	(helper_put_filedescriptors): Removed.
	(helper_get_filedescriptors): Removed.
	(implSelect): Implemented in terms of WSAEventWrapper
	and WSAWaitForMultipleEvents instead of _Jv_select().
	Added support for thread interruption.
	* include/win32.h (WSAEventWrapper): Minor formatting
	changes; added default constructor declaration, init(),
	getFD() and getEventHandle() methods.
	(_Jv_select): Removed.

From-SVN: r74715
2003-12-16 22:54:22 +00:00
Mohan Embar
c1fb3625ae * gnu/java/nio/SocketChannelImpl.java
(write): Removed diagnostic trace.
	* gnu/java/nio/natSelectorImplPosix.cc: Added
	includes for java.lang.Thread and java.io.InterruptedIOException.
	(helper_put_filedescriptors): Don't put invalid file descriptors
	in select set.
	(helper_get_filedescriptors): Clear invalid file descriptors
	from select set.
	(helper_reset): New method for clearing our file descriptor
	array.
	(implSelect): Correctly calculate timeout if specified and
	legal.
	Intercept and deal with any java.io.InterruptedIOException
	thrown by _Jv_select().

From-SVN: r74537
2003-12-11 15:35:13 +00:00
Michael Koch
25a23f3b26 2003-12-09 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SelectorImpl.java
	(implSelect): Throws IOException.
	(select): Likewise.

From-SVN: r74468
2003-12-09 15:34:07 +00:00
Mohan Embar
148c8e7b51 * gnu/java/nio/natSelectorImplPosix.cc
(implSelect): A timeout of 0 means an infinite
	timeout.

From-SVN: r74259
2003-12-04 00:31:27 +00:00
Michael Koch
598e749df6 2003-12-02 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(blocking): Initialize with true by default.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(serverSocket): Made private.
	(blocking): Likewise.
	(connected): Likewise.
	* gnu/java/nio/SocketChannelImpl.java
	(connectionPending): Made private.
	* gnu/java/nio/FileLockImpl.java
	(static): Load native library (needed for classpath).
	* gnu/java/nio/SelectorImpl.java
	(static): Load native library (needed for classpath).

From-SVN: r74181
2003-12-02 15:03:21 +00:00
Michael Koch
d3f010ec28 2003-11-22 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(getNativeFD): Use getPlainDatagramSocketImpl().
	* gnu/java/nio/NIODatagramSocket.java
	(getPlainDatagramSocketImpl): Renamed from getImpl().
	* gnu/java/nio/NIOSocket.java
	(getPlainSocketImpl): Renamed from getImpl().
	(setChannel): Use getPlainSocketImpl().
	* gnu/java/nio/SocketChannelImpl.java
	(SocketChannelImpl): Use getPlainSocketImpl().
	(getPlainSocketImpl): Renamed from getImpl().
	(getNativeFD): Use getPlainSocketImpl().

From-SVN: r73840
2003-11-22 15:13:01 +00:00
Mohan Embar
650dc9b332 * gnu/java/nio/natSelectorImplPosix.cc
(helper_put_filedescriptors): Change to static linkage.
	(helper_get_filedescriptors): Likewise.

From-SVN: r73545
2003-11-13 10:09:40 +00:00
Michael Koch
4ba6d1c3e2 natPipeImpl.cc, [...]: Removed
2003-11-11  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natPipeImpl.cc,
	gnu/java/nio/natSelectorImpl.cc: Removed
	* gnu/java/nio/natPipeImplEcos.cc,
	gnu/java/nio/natPipeImplPosix.cc,
	gnu/java/nio/natPipeImplWin32.cc,
	gnu/java/nio/natSelectorImplEcos.cc,
	gnu/java/nio/natSelectorImplPosix.cc,
	gnu/java/nio/natSelectorImplWin32.cc: New files
	* configure.in: Create links for gnu/java/nio/natPipeImpl.cc and
	gnu/java/nio/natSelectorImpl.cc
	* configure: Regenerated.

From-SVN: r73446
2003-11-11 11:49:12 +00:00
Mohan Embar
ef050c9e23 win32.cc: (_Jv_pipe) Implemented.
* win32.cc: (_Jv_pipe) Implemented.
	* gnu/java/nio/natPipeImpl.cc: (nativeInit) Use
	_Jv_pipe instead of ::pipe.
	* include/posix.h: (_Jv_pipe) New inline.
	* include/win32.h: (_Jv_pipe) New declaration.

From-SVN: r72616
2003-10-17 18:44:42 +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
1b2bfbc218 Really remove it.
From-SVN: r72346
2003-10-11 18:05:00 +00:00
Michael Koch
51914674f4 NIOSocket.java (setChannel): Initialize impl.
2003-10-11  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/NIOSocket.java (setChannel): Initialize impl.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(serverSocket): Made it a NIOServerSocket.
	(impl): Removed.
	(ServerSocketChannelImpl): Initialize only serverSocket.
	(initServerSocket): Removed.
	(getNativeFD): Rewritten.
	(implConfigureBlocking): Set socket timeout and removed comment.
	(accept): Rewritten.
	* gnu/java/nio/SocketChannelImpl.java
	(impl): New variable.
	(connected): Removed.
	(SocketChannelImpl): Initialize impl too.
	(getImpl): New method.
	(isConnected): Rewritten.
	(read): Rewritten, set position in buffer correctly.
	(write): Set position in buffer correctly.
	* java/net/ServerSocket.java (getImpl): New method.
	* gnu/java/nio/NIOServerSocket.java,
	gnu/java/nio/natNIOServerSocket.cc: New files.
	* gnu/java/nio/natServerSocketChannelImpl.cc: Removed.
	* Makefile.am
	(ordinary_java_source_files):
	Added gnu/java/nio/NIOServerSocket.java.
	(nat_source_files):
	Removed gnu/java/nio/natServerSocketChannelImpl.cc
	and added gnu/java/nio/natNIOServerSocket.cc.
	* Makefile.in: Regenerated.

From-SVN: r72345
2003-10-11 18:01:35 +00:00
Michael Koch
137f5e8417 SelectorImpl.java (register): Use ServerSocketChannelSelectionKey for server socket channels...
2003-10-09  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/SelectorImpl.java (register):
	Use ServerSocketChannelSelectionKey for server socket channels,
	removed unneeded comments.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(ServerSocketChannelImpl): Made class public final.
	(impl): New member variable.
	(ServerSocketChannelImpl): Initialize member variables correctly.
	(initServerSocket): New method.
	(getNativeFD): Likewise.
	* gnu/java/nio/ServerSocketChannelSelectionKey.java,
	gnu/java/nio/natServerSocketChannelImpl.cc: New files.
	* Makefile.am (ordinary_java_source_files):
	Added gnu/java/nio/ServerSocketChannelSelectionKey.java.
	(nat_source_files): Added gnu/java/nio/natServerSocketChannelImpl.cc.
	* Makefile.in: Regenrated.

From-SVN: r72277
2003-10-09 18:01:08 +00:00
Michael Koch
36805693cb 2003-10-08 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SocketChannelImpl.java
	(read): Write only read data to buffer.

From-SVN: r72232
2003-10-08 16:03:06 +00:00
Michael Koch
fc40b902f4 re PR java/12426 (gcj allows access to private members from superclass)
2003-09-27  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/SelectionKeyImpl.java
	(ch): Make package-private again. Jikes found this bug.
	Jeff Sturm submitted PR12426 for this to bugzilla
	to fix this bug in gcj.

From-SVN: r71841
2003-09-26 22:02:05 +00:00
Jeff Sturm
eac559b624 Fix build failure.
* gnu/java/nio/SelectorImpl.java (getFDsAsArray): Use getNativeFD().
(select): Likewise.
(register): Use DatagramChannelSelectionKey, SocketChannelSelectionKey.

From-SVN: r71812
2003-09-26 03:50:45 +00:00
Michael Koch
1bfb64ff9a 2003-09-25 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(getNativeFD): New method.
	* gnu/java/nio/SelectionKeyImpl.java
	(SelectionKeyImpl): Class made abstract.
	(fd): Removed.
	(SelectionKeyImpl): Remove fd argument.
	(getNativeFD): New method.
	* gnu/java/nio/SocketChannelImpl.java
	(getNativeFD): New method.
	gnu/java/nio/DatagramChannelSelectionKey.java,
	* gnu/java/nio/SocketChannelSelectionKey.java:
	New files.
	* Makefile.am (ordinary_java_source_files):
	Added new files gnu/java/nio/DatagramChannelSelectionKey.java and
	gnu/java/nio/SocketChannelSelectionKey.java.
	* Makefile.in: Regenerated.

From-SVN: r71797
2003-09-25 21:14:43 +00:00
Michael Koch
c5fd8041ed 2003-09-25 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SelectorImpl.java
	(implSelect): Renamed from java_do_select.
	(select): Call native implSelect() and add support for Thread
	interruption.
	* gnu/java/nio/natSelectorImpl.cc
	(implSelect): Renamed from java_do_select.

From-SVN: r71781
2003-09-25 17:09:23 +00:00
Michael Koch
6cbaf0385b 2003-09-25 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SelectorImpl.java
	(selectNow): Made final, throws IOException.
	(select): Likewise.
	(getFDsAsArray): Made final.
	(selectedKeys): Likewise.
	(wakeup): Likewise.
	(deregisterCancelledKeys): Likewise.
	(register): Likewise.
	(ass): Removed.
	(add_selected): Removed.
	* gnu/java/nio/natSelectorImpl.cc:
	No need to include bstring.h or gcj/cni.h.
	(helper_put_filedescriptors): Rewritten.
	(helper_get_filedescriptors): Rewritten.

From-SVN: r71779
2003-09-25 15:35:21 +00:00
Michael Koch
21e69789dd 2003-09-25 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(DatagramChannelImpl): Made class final.
	(blocking): Made private.
	(socket): Made it a NIODatagramSocket and private.
	(DatagramChannelImpl): create NIODatagramSocket instead of
	DatagramSocket.
	(implConfigureBlocking): Set socket timeout.
	(connect): Check that channel is not closed.
	(write): Implemented.
	(write): Rewritten.
	(read): Implemented.
	(read): Rewritten.
	(receive): Implemented.
	(send): Implemented.
	* gnu/java/nio/SelectionKeyImpl.java
	(readyOps): Made private.
	(interestOps): Made private.
	(impl): Made private.
	(ch): Made private.
	(readyOps): Check if selection key is valid.
	(interestOps): Likewise.
	* gnu/java/nio/SelectorImpl.java
	(closed): Removed.
	(keys): Made private.
	(selected): Made private.
	(finalize): New method.
	(implCloseSelector): Rewritten.
	(keys): Return unmodifiable Set.
	(deregisterCancelledKeys): Fixed typo in method name.
	* gnu/java/nio/SocketChannelImpl.java
	(SocketChannelImpl): Made class final.
	(socket): Made it a NIOSocket and private.
	(blocking): Made private.
	(connected): Made private.
	(connectionPending): New member variable.
	(SocketChannelImpl): New implementation.
	(finalizer): Use isConnected().
	(connect): Rewritten.
	(finishConnect): Throws IOException, implemented.
	(isConnectionPending): Return connectionPending.
	(read): Rewritten.
	(write): Rewritten.
	* gnu/java/nio/NIOConstants.java: New file.
	* Makefile.am (ordinary_java_source_files):
	Added gnu/java/nio/NIOConstants.java.
	* Makefile.in: Regenerated.

From-SVN: r71769
2003-09-25 10:17:00 +00:00
Michael Koch
309cecc625 NIODatagramSocket.java, [...]: New files.
2003-09-19  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/NIODatagramSocket.java,
	gnu/java/nio/NIOSocket.java: New files.
	* Makefile.am (ordinary_java_source_files):
	Added gnu/java/nio/NIODatagramSocket.java and
	gnu/java/nio/NIOSocket.java.
	* Makefile.in: Regenerated.

From-SVN: r71592
2003-09-19 21:12:58 +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
c938cb682b 2003-06-27 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileChannelImpl.java
	(write): Removed.

From-SVN: r68572
2003-06-27 13:41:25 +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
98a91a724e 2003-06-19 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/DatagramChannelImpl.java
	(fd): Removed.
	(blocking): New member variable.
	(socket): Likewise.
	(DatagramChannelImpl): Throws IOException, initialize socket.
	(socket):Implemented.
	(implCloseSelectableChannel): Throws IOException, implemented.
	(implConfigureBlocking): Likewise.
	(connect): Likewise.
	(disconnect): Likewise.
	(isConnected): Likewise.
	(write): Likewise.
	(read): Likewise.
	(receive): Throws IOException.
	(send): Likewise.
	* gnu/java/nio/SocketChannelImpl.java
	(read): Implemented.
	(write): Implemented.

From-SVN: r68208
2003-06-19 16:42:25 +00:00
Michael Koch
b7a793afb7 2003-06-19 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileChannelImpl.java
	(map_address): Made public.
	(FileChannelImpl): Merged with classpath.
	* gnu/java/nio/natFileChannelImpl.cc
	(nio_mmap_file): Commented out unused arguments.
	(nio_unmmap_file): Likewise.
	(niu_msync): Likewise.

From-SVN: r68186
2003-06-19 09:33:58 +00:00
Michael Koch
299f5809e2 2003-06-18 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/SelectorImpl.java
	(register): Use fd with value 0 for now, will be fixed later.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(fd): Removed.
	(local_port): Removed.
	(InetSocketAddress): Removed.
	(ServerSocketChannelImpl): Just initialize internal socket object.
	(implCloseSelectableChannel): Close internal socket object.
	(implConfigureBlocking): Added comment.
	(accept): Use jaba.net stuff to accept socket.
	* gnu/java/nio/SocketChannelImpl.java
	(fd): Removed.
	(local_port): Removed.
	(InetSocketAddress): Removed.
	(SocketCreate): Removed.
	(SocketConnect): Removed.
	(SocketBind): Removed.
	(SocketListen): Removed.
	(SocketAvailable): Removed.
	(SocketClose): Removed.
	(SocketRead): Removed.
	(SocketWrite): Removed.
	(SocketChannelImpl): Just initialize internal socket object.
	(implCloseSelectableChannel): Close internal socket object.
	(implConfigureBlocking): Fixed implementation, added comment.
	(connect): Use internal socket object to connect.
	(socket): No need for sanity checks.
	(read): Comment out some stuff, this will be reimplemented in the next
	commit.
	(write): Likewise.
	* gnu/java/nio/natFileChannelImpl.cc
	(nio_mmap_file): Line wrapped.
	* gnu/java/nio/natSocketChannelImpl.cc: Removed.
	* Makefile.am
	(nat_source_files): Removeded gnu/java/nio/natSocketChannelImpl.cc.
	* Makefile.in: Regenerated.

From-SVN: r68145
2003-06-18 08:56:55 +00:00
Michael Koch
81d2d258f5 2003-06-14 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileChannelImpl.java
        (map_address): Removed incorrect comment.
	* gnu/java/nio/SelectorImpl.java
        (register): Remove code duplication and code for file channel handling.
	* gnu/java/nio/ServerSocketChannelImpl.java
        (serverSocket): Renamed from sock_object.
        (ServerSocketChannel): Initialize serverSocket.
        (socket): Return serverSocket.
	* gnu/java/nio/SocketChannelImpl.java
        (socket): Renamed from sock_object.
        (isConnectionPenging): Simplified.
        (socket): Return socket.

From-SVN: r67940
2003-06-14 11:53:02 +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
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
d24273abda 2003-05-13 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/CharViewBufferImpl.java
	(CharViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/DoubleViewBufferImpl.java
	(DoubleViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/FloatViewBufferImpl.java
	(FloatViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/IntViewBufferImpl.java
	(IntViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/LongViewBufferImpl.java
	(LongViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.
	* gnu/java/nio/ShortViewBufferImpl.java
	(ShortViewBufferImpl): Fixed super constructor call, initialize offset.
	(get): Shift bits to the right direction.
	(put): Likewise.

From-SVN: r66780
2003-05-13 20:11:02 +00:00
Michael Koch
c484a5fbd3 2003-05-13 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/natDirectByteBufferImpl.cc
	(allocateImpl): jlong -> RawData*.
	(freeImpl): Likewise.

From-SVN: r66760
2003-05-13 12:57:32 +00:00
Michael Koch
e48d8b8886 2003-05-13 Michael Koch <konqueror@gmx.de>
* java/io/FileDescriptor.java
       (SYNC): New constant.
       (DSYNC): Likewise.
       (getLength): Renamed from lenght() to match classpath's
       FileDescriptor.java.
       * java/io/RandomAccessFile.java
       (RandomAccessFile): Removed unneeded mode check, implemented mode
       "rws" and "rwd", merged documentation from classpath.
       (setLength): Reformatted.
       (length): Use new getLength() of FileDescriptor.
       * java/io/natFileDescriptorEcos.cc
       (getLength): Renamed from length().
       * java/io/natFileDescriptorPosix.cc
       (open): Implemented support for SYNC and DSYNC.
       (seek): Use getLength() instead of length().
       (getLength): Renamed from length().
       * java/io/natFileDescriptorWin32.cc
       (getLength): Renamed from length().
       (seek): Use getLength() instead of length().
       (available): Likewise.
       * gnu/java/nio/natFileChannelImpl.cc
       (size): Use getLength() instead of length().

From-SVN: r66755
2003-05-13 09:13:31 +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
5560b019e4 CharViewBufferImpl.java, [...]: New files, not yet to be compiled.
2003-05-12  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/CharViewBufferImpl.java,
	gnu/java/nio/DirectByteBufferImpl.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,
	gnu/java/nio/natDirectByteBufferImpl.cc:
	New files, not yet to be compiled.

From-SVN: r66727
2003-05-12 18:32:17 +00:00
Tom Tromey
553ada109d Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Removed old files.
	* gnu/java/nio/natDoubleBufferImpl.cc: Removed.
	* gnu/java/nio/natFloatBufferImpl.cc: Removed.
	* gnu/java/nio/natIntBufferImpl.cc: Removed.
	* gnu/java/nio/natLongBufferImpl.cc: Removed.
	* gnu/java/nio/natShortBufferImpl.cc: Removed.

From-SVN: r66640
2003-05-09 19:16:54 +00:00