// ********************************************************************** // // Copyright (c) 2003-2010 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. // // ********************************************************************** package test.Ice.objects; import test.Ice.objects.Test.InitialPrx; public class Client extends test.Util.Application { private static class MyObjectFactory implements Ice.ObjectFactory { public Ice.Object create(String type) { if(type.equals("::Test::B")) { return new BI(); } else if(type.equals("::Test::C")) { return new CI(); } else if(type.equals("::Test::D")) { return new DI(); } else if(type.equals("::Test::E")) { return new EI(); } else if(type.equals("::Test::F")) { return new FI(); } else if(type.equals("::Test::I")) { return new II(); } else if(type.equals("::Test::J")) { return new JI(); } else if(type.equals("::Test::H")) { return new HI(); } assert (false); // Should never be reached return null; } public void destroy() { // Nothing to do } } public int run(String[] args) { Ice.Communicator communicator = communicator(); Ice.ObjectFactory factory = new MyObjectFactory(); communicator.addObjectFactory(factory, "::Test::B"); communicator.addObjectFactory(factory, "::Test::C"); communicator.addObjectFactory(factory, "::Test::D"); communicator.addObjectFactory(factory, "::Test::E"); communicator.addObjectFactory(factory, "::Test::F"); communicator.addObjectFactory(factory, "::Test::I"); communicator.addObjectFactory(factory, "::Test::J"); communicator.addObjectFactory(factory, "::Test::H"); InitialPrx initial = AllTests.allTests(communicator, false, getWriter()); initial.shutdown(); return 0; } protected Ice.InitializationData getInitData(Ice.StringSeqHolder argsH) { Ice.InitializationData initData = new Ice.InitializationData(); initData.properties = Ice.Util.createProperties(argsH); initData.properties.setProperty("Ice.Package.Test", "test.Ice.objects"); return initData; } public static void main(String[] args) { Client app = new Client(); int result = app.main("Client", args); System.gc(); System.exit(result); } }