diff options
Diffstat (limited to 'java/test/Ice/udp/Server.java')
-rw-r--r-- | java/test/Ice/udp/Server.java | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/java/test/Ice/udp/Server.java b/java/test/Ice/udp/Server.java new file mode 100644 index 00000000000..a0d9e541f0a --- /dev/null +++ b/java/test/Ice/udp/Server.java @@ -0,0 +1,76 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2008 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +public class Server +{ + private static int + run(String[] args, Ice.Communicator communicator) + { + Ice.Properties properties = communicator.getProperties(); + if(args.length == 1 && args[0].equals("1")) + { + properties.setProperty("TestAdapter.Endpoints", "udp -p 12010"); + Ice.ObjectAdapter adapter = communicator.createObjectAdapter("TestAdapter"); + adapter.add(new TestIntfI(), communicator.stringToIdentity("test")); + adapter.activate(); + } + + String host; + if(properties.getProperty("Ice.IPv6") == "1") + { + host = "\"ff01::1:1\""; + } + else + { + host = "239.255.1.1"; + } + properties.setProperty("McastTestAdapter.Endpoints", "udp -h " + host + " -p 12020"); + Ice.ObjectAdapter mcastAdapter = communicator.createObjectAdapter("McastTestAdapter"); + mcastAdapter.add(new TestIntfI(), communicator.stringToIdentity("test")); + mcastAdapter.activate(); + + communicator.waitForShutdown(); + return 0; + } + + public static void + main(String[] args) + { + int status = 0; + Ice.Communicator communicator = null; + + try + { + Ice.StringSeqHolder argHolder = new Ice.StringSeqHolder(args); + communicator = Ice.Util.initialize(argHolder); + status = run(argHolder.value, communicator); + } + catch(Exception ex) + { + ex.printStackTrace(); + status = 1; + } + + if(communicator != null) + { + try + { + communicator.destroy(); + } + catch(Ice.LocalException ex) + { + ex.printStackTrace(); + status = 1; + } + } + + System.gc(); + System.exit(status); + } +} |