public class RegexCopyUpdateProcessorFactory extends UpdateRequestProcessorFactory
RegexCopyUpdateProcessor
のファクトリクラス。
srcのソースフィールドの一部の文字列をpatternの正規表現とreplacementで抽出し、destのフィールドに
コピーしてdestフィールドを作成するUpdateRequestProcessorFactory
。
複数のフィールドの一部を組み合わせてIDフィールドを作成するようなときに用いることができる。<updateRequestProcessorChain name="copy"> <processor class="com.rondhuit.solr.update.RegexCopyUpdateProcessorFactory"> <lst> <str name="dest">destFieldName1</str> <bool name="overwrite">true</bool> <str name="connectionStr">#</str> <arr name="srcs"> <lst name="src"> <str name="name">srcFieldName1</str> <str name="pattern">[REGEX]</str> <str name="replacement">[REPLACEMENT]</str> </lst> <lst name="src"> <str name="name">srcFieldName2</str> <str name="pattern">[REGEX]</str> <str name="replacement">[REPLACEMENT]</str> </lst> </arr> </lst> <lst> <str name="dest">destFieldName2</str> <lst name="src"> <str name="name">srcFieldName3</str> <str name="pattern">[REGEX]</str> <str name="replacement">[REPLACEMENT]</str> </lst> </lst> </processor> <processor class="solr.RunUpdateProcessorFactory" /> <processor class="solr.LogUpdateProcessorFactory" /> </updateRequestProcessorChain>
dest | |||
---|---|---|---|
multiValued == true | multiValued == false | ||
connectionStr | なし | multiValuedでコピー | connectionStrで接続しながら一行にコピー |
あり | connectionStrで接続しながら一行にコピー |
overwrite | 説明 |
---|---|
true | destフィールドに値があってもsrcから生成した文字列で上書きコピーする。 |
false(デフォルト) | destフィールドに値があるときは、その値を採用する。 |
UpdateRequestProcessorFactory.RunAlways
コンストラクタと説明 |
---|
RegexCopyUpdateProcessorFactory() |
修飾子とタイプ | メソッドと説明 |
---|---|
UpdateRequestProcessor |
getInstance(SolrQueryRequest req,
SolrQueryResponse rsp,
UpdateRequestProcessor next) |
void |
init(org.apache.solr.common.util.NamedList args) |
public void init(org.apache.solr.common.util.NamedList args)
init
インタフェース内 NamedListInitializedPlugin
init
クラス内 UpdateRequestProcessorFactory
public UpdateRequestProcessor getInstance(SolrQueryRequest req, SolrQueryResponse rsp, UpdateRequestProcessor next)
getInstance
クラス内 UpdateRequestProcessorFactory
Copyright © 2009-2018 RONDHUIT Co.,Ltd. All Rights Reserved.