summaryrefslogtreecommitdiff
path: root/java/demo/Ice/latency/Client.java
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2001-12-08 23:14:00 +0000
committerMark Spruiell <mes@zeroc.com>2001-12-08 23:14:00 +0000
commite40f5d7243a46310b2facce9445aeaa78802dce8 (patch)
tree2219fcc48d743f37744bfd99908d861f33a777b3 /java/demo/Ice/latency/Client.java
parentpossible JVM bug (diff)
downloadice-e40f5d7243a46310b2facce9445aeaa78802dce8.tar.bz2
ice-e40f5d7243a46310b2facce9445aeaa78802dce8.tar.xz
ice-e40f5d7243a46310b2facce9445aeaa78802dce8.zip
initial check-in
Diffstat (limited to 'java/demo/Ice/latency/Client.java')
-rw-r--r--java/demo/Ice/latency/Client.java90
1 files changed, 90 insertions, 0 deletions
diff --git a/java/demo/Ice/latency/Client.java b/java/demo/Ice/latency/Client.java
new file mode 100644
index 00000000000..8a9a5110239
--- /dev/null
+++ b/java/demo/Ice/latency/Client.java
@@ -0,0 +1,90 @@
+// **********************************************************************
+//
+// Copyright (c) 2001
+// MutableRealms, Inc.
+// Huntsville, AL, USA
+//
+// All Rights Reserved
+//
+// **********************************************************************
+
+public class Client
+{
+ private static int
+ run(String[] args, Ice.Communicator communicator)
+ {
+ Ice.Properties properties = communicator.getProperties();
+ final String refProperty = "Latency.Ping";
+ String ref = properties.getProperty(refProperty);
+ if (ref == null)
+ {
+ System.err.println("property `" + refProperty + "' not set");
+ return 1;
+ }
+
+ Ice.ObjectPrx base = communicator.stringToProxy(ref);
+ PingPrx ping = PingPrxHelper.checkedCast(base);
+ if (ping == null)
+ {
+ System.err.println("invalid object reference");
+ return 1;
+ }
+
+ // Initial ping to setup the connection.
+ ping.ice_ping();
+
+ long tv1 = System.currentTimeMillis();
+ final int repetitions = 100000;
+ System.out.println("pinging server " + repetitions +
+ " times (this may take a while)");
+ for (int i = 0; i < repetitions; i++)
+ {
+ ping.ice_ping();
+ }
+
+ long tv2 = System.currentTimeMillis();
+ double total = (double)(tv2 - tv1);
+ double perPing = total / repetitions;
+
+ System.out.println("time for " + repetitions + " pings: " + total +
+ "ms");
+ System.out.println("time per ping: " + perPing + "ms");
+
+ return 0;
+ }
+
+ public static void
+ main(String[] args)
+ {
+ int status = 0;
+ Ice.Communicator communicator = null;
+
+ try
+ {
+ Ice.Properties properties =
+ Ice.Util.createPropertiesFromFile(args, "config");
+ communicator = Ice.Util.initializeWithProperties(properties);
+ status = run(args, communicator);
+ }
+ catch (Ice.LocalException ex)
+ {
+ ex.printStackTrace();
+ status = 1;
+ }
+
+ if (communicator != null)
+ {
+ try
+ {
+ communicator.destroy();
+ }
+ catch (Ice.LocalException ex)
+ {
+ ex.printStackTrace();
+ status = 1;
+ }
+ }
+
+ System.exit(status);
+ }
+}