/* * @(#)IXCMain.java 1.5 03/01/16 * * Copyright 1990-2008 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version * 2 only, as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License version 2 for more details (a copy is * included at /legal/license.txt). * * You should have received a copy of the GNU General Public License * version 2 along with this work; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa * Clara, CA 95054 or visit www.sun.com if you need additional * information or have any questions. * */ package IXCDemo; import java.io.IOException; import com.sun.xlet.XletLifecycleHandler; import com.sun.xlet.XletManager; /** * Main launching class. This is a minimalistic test that hard-codes * the launching of two Xlets. It then waits 20 seconds, destroys the * client, waits 5 seconds, destroys the server, and terminates. */ public class IXCMain { private static void sleep(long delay) { long goal = System.currentTimeMillis() + delay; while (delay > 0) { try { Thread.sleep(1000); } catch (InterruptedException ignored) {} delay = goal - System.currentTimeMillis(); } } public static void main(String args[]) { XletLifecycleHandler client = null; XletLifecycleHandler server = null; try { String classpath = System.getProperty("java.class.path", "."); // XletClassLoader does not see the classpath anymore String path[] = {classpath}; //String path2[] = {"IXCDemo/ixcXlets/serverXlet", classpath}; client = XletManager.createXlet("IXCDemo.ixcXlets.clientXlet.PlaneClient", path, null); System.out.println("Manager: client created"); server = XletManager.createXlet("IXCDemo.ixcXlets.serverXlet.PlaneServer", path, null); System.out.println("Manager: server created"); } catch (IOException ex) { ex.printStackTrace(); System.exit(1); } client.postInitXlet(); server.postInitXlet(); client.postStartXlet(); sleep(1000); server.postStartXlet(); sleep(20000); client.postDestroyXlet(true); System.out.println("Manager: client destroyed"); client = null; sleep(5000); server.postDestroyXlet(true); System.out.println("Manager: server destroyed"); System.out.println("Manager exiting"); server = null; } }