$search.lockIndex
¶
Description¶
Obtient un accès exclusif à l'index en vue d'une mise à jour.
Il est important de noter que toute autre écriture est bloquée tant que
le lock n'est pas libéré. Il ne faut donc pas oublier de le libérer, et
il est même recommandé de faire le $search.unlockIndex
dans une clause finally
afin de s'assurer qu'elle est bien exécutée.
L'exemple donné plus bas montre comment s'y prendre.
Syntaxe¶
$search.lockIndex( [ indexName [ , options ] ] )
Paramètres¶
indexName
string- Nom de l'index à vérrouiller. Si spécifié, la valeur doit faire référence à un index déclaré dans le fichier de configuration de l'application.
options
map-
Options de lock. Les options possibles peuvent varier selon le moteur d'indexation déclaré dans la configuration de l'application pour l'index
indexName
. L'optiontimeout
est commune à toutes les implémentations:timeout
number-
Délai d'attente max pour l'obtention du lock (en millisecondes).
La méthode attend indéfiniment si le délai n'est pas spécifié ou s'il est inférieure ou égal à 0.
Le moteur d'index
lucene
intégré à Ewt supporte en plus les options suivantes:analyzer
string / map-
Mode de tokenisation des données. Cela indique comment le moteur d'indexation doit analyser les données à indexer. Les modes reconnus par
lucene
sont les suivants:ar
: Arabicbg
: Bulgarianbn
: Bengalibr
: Brazilianca
: Catalancjk
: Chinese, Japanese, and Koreanckb
: Soranicz
: Czechda
: Danishde
: Germanel
: Greeken
: Englishes
: Spanishet
: Estonianeu
: Basquefa
: Persianfi
: Finnishfr
: Frenchga
: Irishgl
: Galicianhi
: Hindihu
: Hungarianhy
: Armenianid
: Indonesianit
: Italianlt
: Lithuanianlv
: Latvianne
: Nepalinl
: Dutchno
: Norwegianpt
: Portuguesero
: Romanianru
: Russiansr
: Serbiansv
: Swedishta
: Tamilte
: Teluguth
: Thaitr
: Turkishkeyword
: indexation de mot-cléemail
: indexation d'adresse e-mailsimple
: indexation de donnée simplewhitespace
: découpage sur les espacesclassic
: indexation standardstandard
: indexation standard
L'option
analyzer
peut spécifier le mode de différentes façons:- Sous forme de
string
: On indique le type d'analyzer par défaut (selon la liste ci-dessus). Dans ce cas, l'index writer est créé en utilisant un seul analyzer appliqué à tous les champs. -
Sous forme de
map
: On déclare l'analyzer (selon la liste ci-dessus) à utiliser par champ, par exemple{ labelFR: "fr", labelDE: "de" }
Voir également l'exemple plus bas.
Retour¶
Retourne un objet pojo
contenant le lock sur l'index. En cas d'erreur ou
de dépassement du délai d'attente, la méthode retourne null
.
Exemple¶
Exemple de lock simple, sans option.
1 2 3 4 5 6 7 |
|
Exemple de lock avancé qui déclare un mode de tokenisation spécifique par champ. Ici on souhaite que le champ "labelFR" soit tokenisé au moyen d'un analyzer adapté pour le français et "labelEN" par un analyzer adapté pour l'anglais. Les autres champs utilisent un analyzer standard.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|