Package jade.core

Class ProfileImpl

  • Direct Known Subclasses:
    BootProfileImpl

    public class ProfileImpl
    extends Profile
    This class allows the JADE core to retrieve configuration-dependent classes and boot parameters.

    Take care of using different instances of this class when launching different containers/main-containers on the same JVM otherwise they would conflict!

    Version:
    1.0, 22/11/00
    Author:
    Federico Bergenti, Giovanni Rimassa - Universita' di Parma, Giovanni Caire - TILAB
    • Constructor Detail

      • ProfileImpl

        public ProfileImpl​(Properties aProp)
        Creates a Profile implementation using the given properties to configure the platform startup process.
        Parameters:
        aProp - The names and values of the configuration properties to use.
      • ProfileImpl

        public ProfileImpl​(boolean isMain)
        Creates a Profile implementation with the following default configuration:
        if isMain is true, then the profile is configured to launch a main-container on the localhost, RMI internal Message Transport Protocol, port number 1099, HTTP MTP.
        if isMain is false, then the profile is configured to launch a remote container on the localhost, connecting to the main-container on the localhost through RMI internal Message Transport Protocol, port number 1099.
      • ProfileImpl

        public ProfileImpl()
        This is equivalent to ProfileImpl(true)
      • ProfileImpl

        public ProfileImpl​(String fileName)
                    throws ProfileException
        Create a Profile object initialized with the settings specified in a given property file
        Throws:
        ProfileException
      • ProfileImpl

        public ProfileImpl​(String host,
                           int port,
                           String platformID)
        This constructor creates a default Profile for launching a platform (i.e. a main container!!).
        Parameters:
        host - is the name of the host where the main-container should be listen to. A null value means use the default (i.e. localhost)
        port - is the port number where the main-container should be listen for other containers. A negative value should be used for using the default port number.
        platformID - is the symbolic name of the platform, if different from default. A null value means use the default (i.e. localhost)
      • ProfileImpl

        public ProfileImpl​(String host,
                           int port,
                           String platformID,
                           boolean isMain)
        This constructor creates a default Profile for launching a main (or non-main) container (depending on the value of isMain)
        Parameters:
        host - is the name of the host where the main-container should be listen to. A null value means use the default (i.e. localhost)
        port - is the port number where the main-container should be listen for other containers. A negative value should be used for using the default port number.
        platformID - is the symbolic name of the platform, if different from default. A null value means use the default (i.e. localhost)
        isMain - if isMain is false, then the profile is configured to launch a remote container, if true a main-container
    • Method Detail

      • getProperties

        public Properties getProperties()
        Return the underlying properties collection.
        Returns:
        Properties The properties collection.
      • getBootProperties

        public Properties getBootProperties()
        Retrieve the configuration properties as they were passed to this Profile object, i.e. without internal initializations automatically performed by the Profile class.
        Specified by:
        getBootProperties in class Profile
      • setParameter

        public void setParameter​(String key,
                                 String value)
        Assign the given value to the given property name.
        Specified by:
        setParameter in class Profile
        Parameters:
        key - is the property name
        value - is the property value
      • setSpecifiers

        public void setSpecifiers​(String key,
                                  List value)
        Assign the given property value to the given property name
        Specified by:
        setSpecifiers in class Profile
        Parameters:
        key - is the property name
        value - is the property value
      • getParameter

        public String getParameter​(String key,
                                   String aDefault)
        Retrieve a String value from the configuration properties. If no parameter corresponding to the specified key is found, aDefault is returned.
        Specified by:
        getParameter in class Profile
        Parameters:
        key - The key identifying the parameter to be retrieved among the configuration properties.
        aDefault - The value that is returned if the specified key is not found
      • getSpecifiers

        public List getSpecifiers​(String key)
                           throws ProfileException
        Retrieve a list of Specifiers from the configuration properties. Agents, MTPs and other items are specified among the configuration properties in this way. If no list of Specifiers corresponding to the specified key is found, an empty list is returned.
        Specified by:
        getSpecifiers in class Profile
        Parameters:
        key - The key identifying the list of Specifires to be retrieved among the configuration properties.
        Throws:
        ProfileException
      • getBooleanProperty

        public boolean getBooleanProperty​(String aKey,
                                          boolean aDefault)
        Retrieve a boolean value for a configuration property. If no corresponding property is found or if its string value cannot be converted to a boolean one, a default value is returned.
        Specified by:
        getBooleanProperty in class Profile
        Parameters:
        key - The key identifying the parameter to be retrieved among the configuration properties.
        aDefault - The value to return when there is no property set for the given key, or its value cannot be converted to a boolean value.
      • toString

        public String toString()
        Creates a string representation of this profile. The returned string has the format

        (profile name1=value1 name2=value2 ... )

        Overrides:
        toString in class Object
        Returns:
        A string containing a readable representation of this profile object.
      • getServiceManager

        protected ServiceManager getServiceManager()
                                            throws ProfileException
        Access the platform service manager.
        Specified by:
        getServiceManager in class Profile
        Returns:
        The platform service manager, either the real implementation or a remote proxy object.
        Throws:
        ProfileException - If some needed information is wrong or missing from the profile.
      • getServiceFinder

        protected ServiceFinder getServiceFinder()
                                          throws ProfileException
        Access the platform service finder.
        Specified by:
        getServiceFinder in class Profile
        Returns:
        The platform service finder, either the real implementation or a remote proxy object.
        Throws:
        ProfileException - If some needed information is wrong or missing from the profile.
      • getCommandProcessor

        protected jade.core.CommandProcessor getCommandProcessor()
                                                          throws ProfileException
        Description copied from class: Profile
        Obtain a reference to the container Command Processor, which manages kernel-level commands dispatching them to the proper platform services.
        Specified by:
        getCommandProcessor in class Profile
        Returns:
        A ServiceManager object, representing the platform service manager.
        Throws:
        ProfileException