IM InfoSphere Identity Insight, Version 8.0

initPlugin

Les plug-in personnalisés nécessitent une fonction initPlugin.

Exemple

initPlugin permet au plug-in de charger et d'enregistrer les informations de configuration dont il aura besoin pour le score. La chaîne de connexion de base de données et le nom de fichier .ini sont fournis dans la chaîne configInfo. initPlugin est appelé une fois pour chaque type d'attribut utilisant un plug-in. Il s'agit d'objets partagés. Pour que le plug-in puisse être utilisé pour plusieurs types d'attribut, les informations de configuration doivent être enregistrées pour chaque type d'attribut. De cette façon, lorsque le score est appelé, il peut rechercher le type d'attribut approprié dans les informations de configuration.

const int initPlugin(const char *configInfo, 
                     const uint configSize, 
                     char *errorStr, 
                     const uint maxStrSize);
configSize
est la longueur de la chaîne contenue dans configInfo. L'erreur doit être au format suivant.
errorStr
est une mémoire tampon pré-affectée destinée à copier une chaîne terminée NULL. La chaîne contient le XML décrivant les erreurs d'initialisation. L'erreur doit être au format suivant :
<ERROR>texte d'erreur</ERROR>
maxStrSize
est la taille de la mémoire tampon pré-affectée vers laquelle pointe errorStr. La taille de la chaîne d'erreur ne peut pas dépasser cette valeur.

Voici un exemple de pseudocode d'une fonction de score :

const int initPlugin(const char *configInfo, const uint configSize, char *errorStr, const uint maxStrSize)
{
  //créer une chaîne à partir de configInfo
  //faire une analyse syntaxique avec l'analyseur syntaxique XML
  //extraire DB_CONNECTION et CONFIG_FILE
  //se connecter à la base de données
  //sélectionner l'info de config dans la base de données
  //ouvrir CONFIG_FILE
  //lire l'info de config dans le fichier .ini
  
  //en cas d'erreur, créer une chaîne d'erreur terminée NULL et 
  //strcpy dans le errorStr. Renvoyer -1.
  //s'il n'y a pas d'erreur, renvoyer 0.
}

initPlugin doit renvoyer -1 en cas d'erreur.



Commentaires en retour

Dernière mise à jour : 2009