Package jade.imtp.leap.sms

Source Code of jade.imtp.leap.sms.Boot

/**
* ***************************************************************
* 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);
    }
  }
}
   
TOP

Related Classes of jade.imtp.leap.sms.Boot

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.