2003-03-02 Michael Koch <konqueror@gmx.de>

* java/net/DatagramSocket.java
	(closed): New member variable.
	(close): Use closed variable.
	(getInetAddress): No need to call isConnected().
	(getPort): No need to call isConnected().
	(disconnect): Reset remoteAddress and remotePort, fixed typo.
	(isClosed): Reimplemented.

From-SVN: r63662
This commit is contained in:
Michael Koch 2003-03-02 13:50:04 +00:00 committed by Michael Koch
parent c0daa90283
commit 37db829b93
2 changed files with 29 additions and 15 deletions

View File

@ -1,3 +1,13 @@
2003-03-02 Michael Koch <konqueror@gmx.de>
* java/net/DatagramSocket.java
(closed): New member variable.
(close): Use closed variable.
(getInetAddress): No need to call isConnected().
(getPort): No need to call isConnected().
(disconnect): Reset remoteAddress and remotePort, fixed typo.
(isClosed): Reimplemented.
2003-03-02 Michael Koch <konqueror@gmx.de>
* configure.in: Added check for memory mapping of files.

View File

@ -88,6 +88,11 @@ public class DatagramSocket
*/
private int remotePort = -1;
/**
* Indicates when the socket is closed.
*/
private boolean closed = false;
/**
* Creates a DatagramSocket from a specified DatagramSocketImpl instance
*
@ -201,9 +206,13 @@ public class DatagramSocket
*/
public void close()
{
impl.close();
remoteAddress = null;
remotePort = -1;
if (!closed)
{
impl.close();
remoteAddress = null;
remotePort = -1;
closed = true;
}
}
/**
@ -217,9 +226,6 @@ public class DatagramSocket
*/
public InetAddress getInetAddress()
{
if (!isConnected ())
return null;
return remoteAddress;
}
@ -234,9 +240,6 @@ public class DatagramSocket
*/
public int getPort()
{
if (!isConnected ())
return -1;
return remotePort;
}
@ -265,7 +268,7 @@ public class DatagramSocket
// s.checkConnect("localhost", -1);
try
{
return (InetAddress)impl.getOption(SocketOptions.SO_BINDADDR);
return (InetAddress)impl.getOption(SocketOptions.SO_BINDADDR);
}
catch (SocketException ex)
{
@ -273,12 +276,11 @@ public class DatagramSocket
try
{
return InetAddress.getLocalHost();
return InetAddress.getLocalHost();
}
catch (UnknownHostException ex)
{
// FIXME: This should never happen, so how can we avoid this construct?
return null;
return null;
}
}
@ -469,7 +471,7 @@ public class DatagramSocket
/**
* This method disconnects this socket from the address/port it was
* conencted to. If the socket was not connected in the first place,
* connected to. If the socket was not connected in the first place,
* this method does nothing.
*
* @since 1.2
@ -477,6 +479,8 @@ public class DatagramSocket
public void disconnect()
{
impl.disconnect();
remoteAddress = null;
remotePort = -1;
}
/**
@ -596,7 +600,7 @@ public class DatagramSocket
*/
public boolean isClosed()
{
return !impl.getFileDescriptor().valid();
return closed;
}
/**