/** * *************************************************************** * JADE - Java Agent DEvelopment Framework is a framework to develop * multi-agent systems in compliance with the FIPA specifications. * Copyright (C) 2000 CSELT S.p.A. * * GNU Lesser General Public License * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation, * version 2.1 of the License. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. * ************************************************************** */ package jade.imtp.leap.sms; //#J2ME_EXCLUDE_FILE import jade.core.Runtime; import jade.core.Profile; import jade.core.ProfileImpl; import jade.core.ProfileException; /** Utility class that boots the JADE runtime system and automatically starts the SMSManager. @author Giovanni Caire - TILAB */ public class Boot extends jade.Boot { public static void main(String args[]) { try { // Create the Profile ProfileImpl p = null; if (args.length > 0) { if (args[0].startsWith("-")) { // Settings specified as command line arguments p = new ProfileImpl(parseCmdLineArgs(args)); } else { // Settings specified in a property file p = new ProfileImpl(args[0]); } } else { // Settings specified in the default property file p = new ProfileImpl(DEFAULT_FILENAME); } // Start a new JADE runtime system Runtime.instance().setCloseVM(true); // Check whether this is the Main Container or a peripheral container if (p.getBooleanProperty(Profile.MAIN, true)) { Runtime.instance().createMainContainer(p); } else { Runtime.instance().createAgentContainer(p); } // Activate the proper SMSManager SMSManager.getInstance(p.getProperties()); } catch (ProfileException pe) { System.err.println("Error creating the Profile ["+pe.getMessage()+"]"); pe.printStackTrace(); printUsage(); System.exit(-1); } catch (IllegalArgumentException iae) { System.err.println("Command line arguments format error. "+iae.getMessage()); iae.printStackTrace(); printUsage(); System.exit(-1); } } }