mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-25 13:59:49 +08:00
f2ed9e9656
1999-05-26 Bryce McKinlay <bryce@albatross.co.nz> * java/net/DatagramSocket.java (getSoTimeout): Verify class type. * java/net/DatagramSocketImpl.java (getOption): Made abstract. (setOption): Made abstract. * java/net/PlainDatagramSocketImpl.java: Mirror SocketOptions fields to avoid cpp conflicts in native code. * java/net/PlainSocketImpl.java: Mirror SocketOptions fields to avoid cpp conflicts in native code. * java/net/ServerSocket.java (toString): Prepended "ServerSocket". * java/net/Socket.java (getLocalAddress): Implemented. (setTcpNoDelay): Implemented. (getTcpNoDelay): Implemented. (setSoLinger): Implemented. (getSoLinger): Implemented. (getSoTimeout): Verify class type. (setSendBufferSize): Implemented. (getSendBufferSize): Implemented. (setReceiveBufferSize): Implemented. (getReceiveBufferSize): Implemented. (toString): Prepended "Socket". * java/net/SocketImpl.java (toString): Rewritten. (getOption): Made abstract. (setOption): Made abstract. * java/net/natPlainSocketImpl.cc (connect): Set localport properly. (setOption): Implemented. (getOption): Implemented. 1999-05-26 Warren Levy <warrenl@cygnus.com> * java/net/DatagramSocket.java (DatagramSocket): Get local host address when null. Set SO_REUSEADDR for multicasts. (getSoTimeout): Implemented. (setSoTimeout): Implemented. * java/net/DatagramSocketImpl.java: Implement SocketOptions interface. * java/net/MulticastSocket.java (getInterface): Implemented. (setInterface): Implemented. (setTimeToLive): Check for invalid ttl. (joinGroup): Verify multicast address and security. (leaveGroup): Verify multicast address and security. (send): Implemented. * java/net/PlainDatagramSocketImpl.java (timeout): Added. (iface): Added. (ttl): Added. (setOption): Added. (getOption): Added. (mcastGrp): Added. (getTTL): Implemented as non-native. (setTTL): ditto. (join): ditto. (leave): ditto. * java/net/ServerSocket.java (setSoTimeout): Implemented. (getSoTimeout): Implemented. (setSocketFactory): Made synchronized. * java/net/Socket.java (setSoTimeout): Implemented. (getSoTimeout): Implemented. (close): Made synchronized. (setSocketImplFactory): Made synchronized. * java/net/SocketImpl.java: Implement SocketOptions interface. * java/net/natInetAddress.cc: Corrected module name at top of file. * java/net/natPlainDatagramSocketImpl.cc (McastReq): Added union. (bind): Added FIXME. (peek): Implemented. (setTTL): Removed. (getTTL): Removed. (join): Removed. (leave): Removed. (mcastGrp): Added. (setOption): Implemented for SO_REUSEADDR. (getOption): Implemented for SO_REUSEADDR. From-SVN: r27184
77 lines
1.9 KiB
Java
77 lines
1.9 KiB
Java
// SocketImpl.java - Abstract socket implementation.
|
|
|
|
/* Copyright (C) 1999 Cygnus Solutions
|
|
|
|
This file is part of libgcj.
|
|
|
|
This software is copyrighted work licensed under the terms of the
|
|
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
|
details. */
|
|
|
|
package java.net;
|
|
import java.io.*;
|
|
|
|
/**
|
|
* @author Per Bothner <bothner@cygnus.com>
|
|
* @date January 6, 1999.
|
|
*/
|
|
|
|
/** Written using on-line Java Platform 1.2 API Specification.
|
|
* Believed complete and correct.
|
|
*/
|
|
|
|
public abstract class SocketImpl implements SocketOptions
|
|
{
|
|
protected InetAddress address;
|
|
|
|
protected FileDescriptor fd;
|
|
|
|
protected int localport;
|
|
|
|
protected int port;
|
|
|
|
public SocketImpl ()
|
|
{
|
|
}
|
|
|
|
protected abstract void create (boolean stream) throws IOException;
|
|
|
|
protected abstract void connect (String host, int port) throws IOException;
|
|
|
|
protected abstract void connect (InetAddress host, int port)
|
|
throws IOException;
|
|
|
|
protected abstract void bind (InetAddress host, int port) throws IOException;
|
|
|
|
protected abstract void listen (int backlog) throws IOException;
|
|
|
|
protected abstract void accept (SocketImpl s) throws IOException;
|
|
|
|
protected abstract InputStream getInputStream() throws IOException;
|
|
|
|
protected abstract OutputStream getOutputStream() throws IOException;
|
|
|
|
protected abstract int available () throws IOException;
|
|
|
|
protected abstract void close () throws IOException;
|
|
|
|
protected FileDescriptor getFileDescriptor () { return fd; }
|
|
|
|
protected InetAddress getInetAddress () { return address; }
|
|
|
|
protected int getPort () { return port; }
|
|
|
|
protected int getLocalPort () { return localport; }
|
|
|
|
public abstract Object getOption(int optID) throws SocketException;
|
|
|
|
public abstract void setOption(int optID, Object value)
|
|
throws SocketException;
|
|
|
|
public String toString ()
|
|
{
|
|
return "[addr=" + address.toString() + ",port=" + Integer.toString(port) +
|
|
",localport=" + Integer.toString(localport) + "]";
|
|
}
|
|
}
|