Page History

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
h1. Connexion au Web Service

\\
Voici la méthode permettant de se connecter au module d'indexation :

 !connexion_WS.JPG!
 
Il ne reste plus qu'à ajouter dans le code l'appel à cette méthode en donnant comme URL celle du Web Service de l'indexeur : OriOaiIndexingServiceInterface service = getService(url);
{info}
Ori-Oai-Indexing intègre la librairie ori-oai-commons.jar. Elle est indispensable pour se connecter au Web Service.
{info}

h1. Méthodes publiques du web service

\\

h2. IndexOrUpdate

\\
Indexation d'une fiche s'il s'agit de la première indexation de celle-ci ou mise à jour si elle est déjà présente. Elle est utilise pour ORI-OAI-Workflow car ce module ne gère pas la présence ou non d'une fiche dans l'index. L'index sera toujours optimisé lors de l'utilisation de cette méthode.

Les paramètres de cette méthode sont les suivants :
{span:class=term}String metadataFile
{span}
{quote}
Fiche de métadonnées à indexer
{quote}
{span:class=term}String id
{span}
{quote}
Identifiant associé à la fiche
{quote}
{span:class=term}String namespace
{span}
{quote}
Namespace de la fiche
{quote}
{span:class=term}String datestamp
{span}
{quote}
Date au format YYYY MM DD. Le caractère de séparation sera supprimé au moment de l'indexation et la date sera de la forme : YYYYMMDD. Il n'est pas possible d'indexer une objet de type date.
{quote}
{span:class=term}String repository
{span}
{quote}
Repository dans lequel se trouve la fiche. Si c'est une fiche locale, la valeur de ce paramètre sera "null".
{quote}
{span:class=term}boolean doOptimize
{span}
{quote}
Booléen à true lorsque l'index doit être optimisé. L'optimisation est une phase relativement longue (selon la taille de l'index).
{quote}
Cette méthode renvoie un entier indiquant le bon fonctionnement de l'opération.
\\
{note}
Les différentes valeurs renvoyées sont : 
* \-1 en cas d'erreur. La fiche n'a pas pu être indexée ou mise à jour.
* 0 en cas de mise à jour d'un format. La réindexation de ce  format avec les autres formats s'il y en a s'est bien déroulée.
* 1 en cas d'indexation réussie d'une nouvelle entrée de l'index.
* 2 en cas d'indexation réussie d'un nouveau format.
{note}

h2. IndexOrUpdate

\\

Cette méthode est la même que la précédente mais ne contient pas de booléen d'optimisation de l'index. L'optimisation se fera alors à chaque appel de cette méthode.
\\

h2. Index

\\
Depuis la version 1.5 *cette méthode est dépréciée*. En effet le module d'indexation est dorénavant capable de savoir si une fiche est indexée pour la première fois ou s'il s'agit d'une mise à jour. Il est préférable d'utiliser la méthode indexOrUpdate contenant le booléen d'optimisation notamment dans le cadre d'une moisson et de demander l'optimisation à la dernière fiche moissonnée.

h2. Update

\\
Depuis la version 1.5 *cette méthode est dépréciée*. En effet le module d'indexation est dorénavant capable de savoir si une fiche est indexée pour la première fois ou s'il s'agit d'une mise à jour. Il est préférable d'utiliser la méthode indexOrUpdate à la place de celle-ci.

h2. DeleteNotice

\\
Suppression d'une fiche dans l'index.

Les paramètres sont :
{span:class=term}String id
{span}
{quote}
Identifiant de la fiche à supprimer.
{quote}
Cette méthode permet de supprimer tous les formats indexés pour un identifiant donné. Elle renvoie un entier indiquant le bon fonctionnement de la suppression.

h2. DeleteNotice

\\
Suppression d'une fiche dans l'index.

Les paramètres sont :
{span:class=term}String id
{span}
{quote}
Identifiant de la fiche à supprimer.
{quote}
{span:class=term}String namespace
{span}
{quote}
Namespace du format a supprimer.
{quote}
Cette méthode renvoie un entier indiquant le bon fonctionnement de la suppression.

h2. DeleteNotices

\\
Suppression de plusieurs fiches de l'index. Pour chaque fiche à suprimer elle appelle la méthode deleteNotice Elle prend en paramètres :
{span:class=term}String \[\]ids
{span}
{quote}
Tableau contenant les identifiants à supprimer
{quote}
Cette méthode renvoie un tableau d'entiers donnant le résultat de chaque suppression.

h2. DeleteNotices

{warning} Cette méthode est dépréciée depuis la version 1.6 du module. Il est préférable d'utiliser la méthode deleteNotices(String identifier, String\[\] namespaces) en remplacement de celle-ci.
{warning}


\\
Suppression de plusieurs fiches de l'index. Pour chaque fiche à suprimer elle appelle la méthode deleteNotice Elle prend en paramètres :
{span:class=term}String \[\]ids
{span}
{quote}
Tableau de d'identifiants à supprimer
{quote}
{span:class=term}String \[\]namespaces
{span}
{quote}
Namespaces associés aux identifiants.
{quote}
Cette méthode renvoie un tableau d'entiers donnant le résultat de chaque suppression.

h2. DeleteNotices

\\
Suppression de plusieurs fiches de l'index. Pour chaque fiche à suprimer elle appelle la méthode deleteNotice Elle prend en paramètres :
{span:class=term}String id
{span}
{quote}
Identifiant dont on souhaite supprimer certains formats indexés
{quote}
{span:class=term}String \[\]namespaces
{span}
{quote}
Namespaces des formats à supprimer
{quote}
Cette méthode renvoie un tableau d'entiers donnant le résultat de chaque suppression.
\\

h2. SearchForNumberOfResults

\\
Nombre de résultats pour une requête donnée.
{span:class=term}String request
{span}
{quote}
Requete dont on cherche a connaitre le nombre de résultats
{quote}
Cette méthode renvoie un entier long correspondant au nombre de résultats d'une requête.

h2. SearchForSomeNumberOfResults

\\
Nombre de résultats pour un tablau composé de plusieurs requêtes.
{span:class=term}String request\[\]
{span}
{quote}
Tableau de requêtes dont on cherche a connaitre le nombre de résultats
{quote}
Cette méthode renvoie un tableau d'entiers long correspondant au nombre de résultats de chaque requête.

h2. SearchXMLDoc

\\
Récupère une fiche XML locale ou moissonnée.

Elle prend comme paramètres :
{span:class=term}String id
{span}
{quote}
Identifiant de la fiche.
{quote}
{span:class=term}String namespace
{span}
{quote}
Format de la fiche
{quote}
Cette méthode renvoie une chaîne de caractères correspondant à la fiche XML.

h2. SearchXMLDoc

\\
Récupère une fiche XML locale ou moissonnée.

Elle prend comme paramètres :
{span:class=term}String id
{span}
{quote}
Identifiant de la fiche.
{quote}
Cette méthode renvoie une table de hachage contenant pour chaque format indexé la fiche correspondante.

h2. SearchXMLDoc

\\
Récupère une fiche XML locale ou moissonnée.

Elle prend comme paramètres :
{span:class=term}String id
{span}
{quote}
Identifiant de la fiche.
{quote}
{span:class=term}List<String> namespaces
{span}
{quote}
Liste des formats de fiches à récupérer.
{quote}
Cette méthode renvoie une table de hachage contenant pour chaque format indexé demandé la fiche correspondante.







h2. SearchXMLDocs

\\
Récupère plusieurs fiches XML.

Les paramèrtes sont :
{span:class=term}String request
{span}
{quote}
Requête dont on souhaite obtenir les fiches correspondant aux résultats.
{quote}
{span:class=term}int firstDocumentId
{span}
{quote}
Numéro du premier document dans la liste des résultats à renvoyer.
{quote}
{span:class=term}int lastDocumentId
{span}
{quote}
Numéro du dernier document dans la liste des résultats à renvoyer.
{quote}
Cette méthode renvoie un objet de type SearchResults. Cette classe est présentée dans la section suivante.
\\

h2. SearchXMLDocs

\\
Récupère plusieurs fiches XML.

Les paramètres sont :
{span:class=term}String request
{span}
{quote}
Requête dont on souhaite obtenir les fiches correspondant aux résultats.
{quote}
{span:class=term}String namespace
{span}
{quote}
Format dans lequel on souhaite obtenir les résultats
{quote}
{span:class=term}int firstDocumentId
{span}
{quote}
Numéro du premier document dans la liste des résultats à renvoyer.
{quote}
{span:class=term}int lastDocumentId
{span}
{quote}
Numéro du dernier document dans la liste des résultats à renvoyer.
{quote}
Cette méthode renvoie un objet de type SearchResults. Cette classe est présentée dans la section suivante.
\\

h2. SearchXMLDocs

\\
Récupère plusieurs fiches XML.

Les paramèrtes sont :
{span:class=term}String request
{span}
{quote}
Requête dont on souhaite obtenir les fiches correspondant aux résultats.
{quote}
{span:class=term}List<String> namespaces
{span}
{quote}
Liste des formats dans lesquels on souhaite obtenir des résultats.
{quote}{span:class=term}
int firstDocumentId
{span}
{quote}
Numéro du premier document dans la liste des résultats à renvoyer.
{quote}
{span:class=term}int lastDocumentId
{span}
{quote}
Numéro du dernier document dans la liste des résultats à renvoyer.
{quote}
Cette méthode renvoie un objet de type SearchResults. Cette classe est présentée dans la section suivante.
\\

h2. SearchFromAttributes

\\
Recherche par attributs. Ici on ne récupère pas de fiches mais certains attributs (ex : titre, auteur..) de cette dernière.

Les paramètres de cette méthode sont :
{span:class=term}String request
{span}
{quote}
Requête dont on souhaite connaitre les résultats.
{quote}
{span:class=term}String sortAttributes\[\]
{span}
{quote}
Attributs de tri de la liste de résultats. Si cette valleur est "null" alors les résultats seront triés par leur identifiant.
{quote}
{span:class=term}int firstDocumentId
{span}
{quote}
Numéro du premier document dont on souhaite connaitre les valeurs des attributs.
{quote}
{span:class=term}int lastDocumentId
{span}
{quote}
Numéro du dernier document dont on souhaite connaitre les valeurs des attributs.
{quote}
{span:class=term}String \[\]attributes
{span}
{quote}
Attributs dont on souhaite connaitre la valeur.
{quote}
{span:class=term}boolean ascending
{span}
{quote}
Booléen à true si les résultats doivent être rangés dans l'ordre croissant.
{quote}
{span:class=term}boolean highlightTerms
{span}
{quote}
Booléen qui indique si on doit tenter de surligner la valeur des attributs.
{quote}
{span:class=term}List<String> parametersNotToHighlight
{span}
{quote}
Liste des attributs à ne pas surligner.
{quote}
Cette méthode renvoie un objet de type SearchResults. Cette classe est présentée dans la section suivante.
{note}
En donnant "-1" comme valeur à firstDocumentId et lastDocumentId, tous les résultats sont alors retournés. Dans ce cas le temps de réponse peut être plus long si le nombre de résultats est important.
{note}

h2. uniqueValues

\\
Recherche de valeurs uniques de l'index. Elle est utilisée pour le recherche par auteur notamment.
{span:class=term}String xpath
{span}
{quote}
Xpath ou nom de métadonnée dont on souhaite connaitre toutes les valeurs uniques.
{quote}
Cette méthode renvoie un tableau de chaînes de caractères correspondant à toutes les valeurs uniques.

h2. clearCache

\\
Méthode qui vide les cache sans avoir à redémarrer Tomcat. Elle est utilisée en cas de tests de recherche.
{span:class=term}String name
{span}
{quote}
Nom du cache à vider. S'il vaut null alors tous les caches sont vidés.
{quote}

h2. getDeadlinkNoticesIds

\\
Méthode qui donne tous les identifiants de fiches dont le lien est brisé.

Cette méthode renvoie un tableau de chaînes de caractères correspondant à tous les identifiants.

h2. getDeadlinkNoticesIds

\\
Méthode qui donne tous les identifiants de fiches dont le lien est brisé à partir d'un entrepôt donné.
{span:class=term}String repository
{span}
{quote}
Entrepôt dont on souhaite connaitre les identifiants de fiches ayant un lien brisé.
{quote}
Cette méthode renvoie un tableau de chaînes de caractères correspondant à tous les identifiants.

h1. La classe SearchResults

\\
Elle est utilisée lors de la recherche par attributs ou par la recherche de fiches XML. Elle contient un \*entier
long \*correspondant au nombre de résultats d'une requête ainsi qu'une \*liste d'objets de type
SearchResult*. Pour les obtenir il faut respectivement utiliser les méthodes *getNumberOfResults()* et *getResults()*.

La classe SearchResult contient plusieurs chaînes de caractères : id, namespace, repository, datestamp que l'on récupère grâce à des méthodes get. Elle contient également une chaîne correspondant à la fiche et que l'on obtient grâce à la méthode *getNoticeContent()*. Elle est utilisée dans le cadre de la recherche de fiches XML. En ce qui concerne la recherche par attributs il faut utiliser&nbsp; *getAttributesValues()* qui renvoie une liste de liste de String. En effet chaque attribut peut avoir plusieurs valeurs (ex : plusieurs auteurs), et plusieurs attributs peuvent être demandés (ex : titre, auteur, description...). Donc l'élément renvoyé est bien une liste de liste de chaînes de caractères.