1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package examples.iterator;
18
19 import java.rmi.registry.LocateRegistry;
20 import java.rmi.registry.Registry;
21 import java.util.Arrays;
22 import java.util.List;
23
24 import com.healthmarketscience.rmiio.SerialRemoteIteratorClient;
25 import com.healthmarketscience.rmiio.SerialRemoteIteratorServer;
26
27
28
29
30
31
32
33 public class TestClient {
34
35 public static void main(String[] args) throws Exception
36 {
37 if(args.length < 1) {
38 System.err.println("Usage: <string1> [<string2> ...]");
39 System.exit(1);
40 }
41
42
43 List<String> strings = Arrays.asList(args);
44
45
46 Registry registry = LocateRegistry.getRegistry(TestServer.REGISTRY_PORT);
47 RemoteStringServer stub = (RemoteStringServer)
48 registry.lookup("RemoteStringServer");
49
50 System.out.println("Sending " + strings.size() + " strings");
51
52 SerialRemoteIteratorServer<String> server = null;
53 try {
54
55
56
57
58 server = new SerialRemoteIteratorServer<String>(strings.iterator());
59 SerialRemoteIteratorClient<String> client =
60 new SerialRemoteIteratorClient<String>(server);
61
62
63
64
65 stub.sendStrings(client);
66
67 } finally {
68
69 if(server != null) {
70 server.close();
71 }
72 }
73
74 System.out.println("Finished sending " + strings.size() + " strings");
75
76 }
77
78 }