summaryrefslogtreecommitdiff
path: root/libjava/classpath/compat/java.net/GetSocketOptionInfo.java
blob: 1a5f351e6aeb144e19a10052b839595959c7503d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Class to identify socket option constants.

import java.io.*;
import java.net.*;

public class GetSocketOptionInfo extends Socket implements SocketImplFactory
{

public SocketImpl 
createSocketImpl()
{
  return(new PlainSocketImpl());
}

public static void
main(String[] argv) throws IOException
{
  Socket.setSocketImplFactory(new GetSocketOptionInfo());

  Socket s = new Socket();

  System.err.println("Setting TCP_NODELAY on");
  s.setTcpNoDelay(true);
  System.err.println("Setting TCP_NODELAY off");
  s.setTcpNoDelay(false);

  System.err.println("Setting SO_LINGER on");
  s.setSoLinger(true, 10);
  System.err.println("Setting SO_LINGER off");
  s.setSoLinger(false, 1);

  System.err.println("Setting SO_TIMEOUT to 15");
  s.setSoTimeout(15);
  System.err.println("Setting SO_TIMEOUT to 0");
  s.setSoTimeout(0);
}

}