Agent Controller est un processus démon qui permet aux applications client de lancer des processus hôte et d'interagir avec des agents qui cohabitent dans les processus hôte. Un fichier de configuration unique est utilisé pour la gestion de la portée de son comportement.
Agent Controller peut être étendu de différentes façons comme, par exemple, en ajoutant ou en étendant une fonction, ou en ajoutant un nouvel agent. Pour permettre à Agent Controller d'utiliser votre fonction d'extension, le fichier de configuration d'Agent Controller doit être modifié. Cela peut se faire en étendant le générateur de configurations, ce qui permet ensuite de générer un fichier de configuration personnalisé lors de l'exécution de SetConfig. En étendant le générateur de configurations, vous pourrez extraire des informations spécifiques à l'utilisateur au moment de la configuration et utiliser ces informations pour générer un fichier de configuration personnalisé. Vous pouvez aussi fournir votre propre logique dans l'extension pour générer des fichiers de configuration spécifiques à la plateforme.
Procédez comme suit pour étendre le générateur de configurations afin de générer un fichier de configuration pour votre propre plug-in :
public static String TAG = "<nom de votre module>"; // p. ex., org.eclipse.hyades.datacollection
public SetConfig() { super(TAG); }
public void init(Hashtable hash) { String home = HashUtility.getValue(hash, "RASERVER_HOME"); setFileName(home + sr + "plug-ins" + sr + TAG + sr + "config" + sr + "pluginconfig.xml"); }
//Il est recommandé de commencer cette méthode avec la section suivante : doc = configFile.getDoc(); if(doc == null) { return; } pConfig = doc.createElement(PluginConfig.TAG); holder = configFile.getHolder(); holder.appendChild(pConfig); //Fin du plug-in : terminez la méthode par la section suivante : 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();
Consultez le projet Hyades org.eclipse.hyades.collection.framework. Les exemples se trouvent dans le dossier source src.config :