summaryrefslogtreecommitdiff
path: root/java/JACE/tests/netsvcs/Naming/ClientTest.java
blob: f6af6f906ea75e9ea5f225da9567f08d5f551021 (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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package JACE.tests.netsvcs.Naming;

import java.io.*;
import java.net.*;
import java.util.*;
import JACE.OS.*;
import JACE.Connection.*;
import JACE.SOCK_SAP.*;
import JACE.netsvcs.Naming.*;

/**
 * Simple test program for NameProxy and the naming service.
 *
 * Command line: (hostname) (port)
 */
public class ClientTest
{
  public static void print_usage_and_die ()
  {
    System.out.println ("Usage: ClientTest <hostname> [<port>]");
    System.exit (0);
  }
  public static void main (String [] args)
    throws UnknownHostException, 
	   SocketException,
	   InstantiationException,
	   IllegalAccessException,
	   IOException
  {
    ACE.enableDebugging ();

    int port = ACE.DEFAULT_SERVER_PORT;

    if (args.length == 0 || args.length > 2)
      print_usage_and_die ();

    if (args.length == 2) {
      try
	{
	  port = Integer.parseInt (args[1]);
	}
      catch (NumberFormatException e)
	{
	  print_usage_and_die ();
	}
    }

    System.out.println("Trying to open port " + port + " on " + args[0]);

    NameProxy proxy = new NameProxy ();

    Connector c = new Connector ();
    c.open (args[0], port);
    c.connect (proxy);

    System.out.println("---- Beginning tests ----");

    try {

      System.out.println("Binding (five, six, seven):  " 
			 + proxy.bind("five", "six", "seven"));
      System.out.println("Binding (filth, rat, eats):  " 
			 + proxy.bind("filth", "rat", "eats"));

      Vector res = proxy.resolve("five");

      System.out.println("Resolve (five)            :  " 
			 + (String)res.elementAt(1) + " " 
			 + (String)res.elementAt(2));

      System.out.println("Binding (fish, words, him):  " 
			 + proxy.bind("fish", "words", "him"));

      System.out.println("Unbind  (five, six, seven):  " 
			 + proxy.unbind("five"));

      res = proxy.resolve("five");

      System.out.println("Resolve (five)            :  " 
			 + (String)res.elementAt(1) + " " 
			 + (String)res.elementAt(2));

      System.out.println("Binding (fiction, us, you):  " 
			 + proxy.bind("fiction", "us", "you"));

      System.out.println("\nGetting all records whose names begin with fi:\n");
      Vector res2 = proxy.listNameEntries("fi");

      Enumeration iter = res2.elements();

      while (iter.hasMoreElements()) {
	Vector res3 = (Vector)(iter.nextElement());

	System.out.println((String)res3.elementAt(0) 
			   + "\t" + (String)res3.elementAt(1) 
			   + "\t" + (String)res3.elementAt(2));
      }

    } catch (Exception e) {
      System.err.println ("" + e);
      e.printStackTrace ();
    } finally {
      proxy.close ();
    }
  }
}