Ampliar el controlador de agentes

El controlador de agentes es un proceso daemon que permite a las aplicaciones de cliente iniciar procesos de sistema principal e interaccionar con los agentes que coexistan con dichos procesos. La extensión de su comportamiento se gestiona mediante un solo archivo de configuración. 

El controlador de agentes se puede ampliar de varios modos como, por ejemplo, añadiendo o ampliando una función, o agregando un nuevo agente. Para permitir que el controlador de agentes utilice la función de plug-in, se debe modificar el archivo de configuración del controlador de agentes. Para ello, se puede ampliar el generador de configuración que permite que se genere un archivo de configuración personalizada al ejecutar SetConfig. La ampliación del generador de configuración le ofrece la posibilidad de consultar información específica del usuario durante la configuración, y de utilizar dicha información para generar un archivo de configuración personalizada. Además, en la ampliación puede proporcionar su propia lógica para generar archivos de configuración específicos de la plataforma.

Para ampliar el generador de configuración a fin de generar su propio archivo de configuración, siga los pasos que se indican a continuación:

  1. Cree un archivo jar config.jar en el directorio lib de los plug-ins. El generador de configuración busca este archivo jar.
  2. Cree un directorio config en el directorio raíz de los plug-ins para almacenar el archivo de configuración. El generador de configuración busca automáticamente el plug-in del archivo jar para crear un archivo de configuración pluginconfig.xml en el directorio config del plug-in.
  3. Escriba una extensión de generador de configuración:
    1. Denomine la clase <su nombre de paquete de plug-ins>.SetConfig. Debe ampliar la clase org.eclipse.hyades.internal.config.generator.SetConfigSkeleton.
    2. Defina una etiqueta para el plug-in:
      public static String TAG = "<su nombre de paquete de plug-ins>"; // por ejemplo, org.eclipse.hyades.datacollection
    3. Implemente los seis métodos siguientes que necesita el generador de configuración para generar correctamente el archivo de configuración personalizada:
      • SetConfig(): Dentro de constructor de argumento nulo debe llamar a super(TAG), como mínimo
        Ejemplo:
        public SetConfig() {
          super(TAG);
          }
      • init(): Este método puede llevar a cabo la inicialización por medio de la tabla hash que pasa el generador de configuración principal. La tabla hash contiene argumentos de línea commplug-in que se pasan a SetConfig. Dentro de este método debe especificar el nombre de plug-in de la vía de acceso del archivo de configuración.
        Ejemplo:
        public void init(Hashtable hash) {
          String home = HashUtility.getValue(hash, "RASERVER_HOME");
          setFileName(home + sr + "plug-ins" + sr + TAG + sr + "config" + sr + "pluginconfig.xml");
          }
        
      • askUser(): Este método se utiliza para solicitar información de usuario específica del plug-in.
      • printHelp(): Este método se utiliza para visualizar mensajes de ayuda específicos del plug-in. Puede ser un método vacío.
      • printExamples(): Este método se utiliza para visualizar ejemplos de uso como, por ejemplo, argumentos de línea de mandatos. Puede ser un método vacío.
      • generateConfiguration(): Este método se utiliza para generar el DOM XML para el plug-in.
        Ejemplo:
        //Debe iniciar este método con esta sección:
          
          doc = configFile.getDoc();
          if(doc == null) {
        	  return;
          }
        
          pConfig = doc.createElement(PluginConfig.TAG);
          holder = configFile.getHolder();
          holder.appendChild(pConfig);
        
          //Fin de plug-in del método con esta sección:
          
          option = doc.createElement(Option.TAG);
          Option.setName(option, TAG);
          Option.setType(option, "version");
          Option.setValue(option, getString("Config.Plugin.Version"));
          pConfig.appendChild(option);
        
          configFile.saveToFile();
        

Ejemplos sobre la escritura de una ampliación de generador de archivo de configuración

Consulte el proyecto Hyades org.eclipse.hyades.collection.framework. Los ejemplos se encuentran en la carpeta origen src.config:



Consulta relacionada
Archivos de configuración del controlador de agentes

 


(C) Copyright IBM Corporation 2000, 2005. Reservados todos los derechos.