From 9dca412a8cdbf1f520ecbde81ef904796ad6f089 Mon Sep 17 00:00:00 2001 From: Alan Davis Date: Thu, 20 Feb 2014 14:59:18 +0000 Subject: [PATCH] Merged HEAD-BUG-FIX (Cloud33/4.3) to HEAD (Cloud33/4.3) 62931: Merged PLATFORM1 (Cloud33) to HEAD-BUG-FIX (Cloud33/4.3) 62696: ACE-480 Split Data-Model into Lucene Independent and Legacy Lucene Project git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@62986 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .classpath | 3 +- pom.xml | 19 +- .../CMISBasePropertyDefinition.java | 32 +-- .../cmis/mapping/AbstractProperty.java | 6 +- .../cmis/mapping/AbstractSimpleProperty.java | 6 +- .../cmis/mapping/BaseTypeIdProperty.java | 6 +- .../alfresco/cmis/mapping/DirectProperty.java | 9 +- .../cmis/mapping/FixedValueProperty.java | 4 +- .../cmis/mapping/ObjectIdProperty.java | 6 +- .../cmis/mapping/ObjectTypeIdProperty.java | 6 +- .../alfresco/cmis/mapping/ParentProperty.java | 6 +- .../cmis/search/CMISFTSQueryParser.java | 2 +- .../search/CmisFunctionEvaluationContext.java | 56 +++--- .../patch/impl/CalendarModelUriPatch.java | 9 - .../repo/model/filefolder/HiddenAspect.java | 6 +- .../node/index/AbstractReindexComponent.java | 17 +- .../impl/lucene/ADMLuceneIndexerImpl.java | 3 +- .../impl/lucene/ADMLuceneSearcherImpl.java | 6 +- .../DBQueryBuilderPredicatePartCommand.java | 2 +- .../querymodel/impl/db/PropertySupport.java | 2 +- .../impl/db/functions/DBFTSPhrase.java | 14 +- .../impl/db/functions/DBFTSPrefixTerm.java | 2 +- .../impl/db/functions/DBFTSTerm.java | 14 +- .../search/impl/solr/SolrSearchService.java | 6 +- .../security/authority/AuthorityDAOImpl.java | 20 +- .../alfresco/repo/site/SiteServiceImpl.java | 5 +- .../org/alfresco/repo/avm/AVMServiceTest.java | 189 +++++++++--------- .../alfresco/repo/avm/AVMServiceTestBase.java | 33 +-- .../model/filefolder/HiddenAspectTest.java | 3 +- .../impl/lucene/ADMLuceneCategoryTest.java | 3 +- .../search/impl/lucene/ADMLuceneTest.java | 179 ++++++++--------- 31 files changed, 327 insertions(+), 347 deletions(-) diff --git a/.classpath b/.classpath index 8e20ce9875..dbabcd324f 100644 --- a/.classpath +++ b/.classpath @@ -10,6 +10,7 @@ - + + diff --git a/pom.xml b/pom.xml index 237ea46352..b4a296e18a 100644 --- a/pom.xml +++ b/pom.xml @@ -16,18 +16,8 @@ org.alfresco - alfresco-data-model + alfresco-legacy-lucene ${project.version} - - - antlr - antlr - - - stringtemplate - org.antlr - - org.alfresco @@ -802,6 +792,13 @@ tests test + + org.alfresco + alfresco-legacy-lucene + ${project.version} + tests + test + postgresql postgresql diff --git a/source/java/org/alfresco/cmis/dictionary/CMISBasePropertyDefinition.java b/source/java/org/alfresco/cmis/dictionary/CMISBasePropertyDefinition.java index 92e27003ff..f5b76788d3 100644 --- a/source/java/org/alfresco/cmis/dictionary/CMISBasePropertyDefinition.java +++ b/source/java/org/alfresco/cmis/dictionary/CMISBasePropertyDefinition.java @@ -38,14 +38,6 @@ import org.alfresco.repo.dictionary.IndexTokenisationMode; import org.alfresco.repo.dictionary.constraint.ListOfValuesConstraint; import org.alfresco.repo.dictionary.constraint.NumericRangeConstraint; import org.alfresco.repo.dictionary.constraint.StringLengthConstraint; -import org.alfresco.repo.search.impl.lucene.analysis.DateAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.DateTimeAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.DoubleAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.FloatAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.IntegerAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.LongAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.PathAnalyser; -import org.alfresco.repo.search.impl.lucene.analysis.VerbatimAnalyser; import org.alfresco.service.cmr.dictionary.Constraint; import org.alfresco.service.cmr.dictionary.ConstraintDefinition; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; @@ -172,21 +164,19 @@ public class CMISBasePropertyDefinition implements CMISPropertyDefinition, Seria break; case TRUE: default: - String analyserClassName = propDef.resolveAnalyserClassName(); - if (propDef.getDataType().getName().equals(DataTypeDefinition.BOOLEAN)) + if (propDef.getDataType().getName().equals(DataTypeDefinition.BOOLEAN) + || propDef.getDataType().getName().equals(DataTypeDefinition.DATE) + || propDef.getDataType().getName().equals(DataTypeDefinition.DATETIME) + || propDef.getDataType().getName().equals(DataTypeDefinition.DOUBLE) + || propDef.getDataType().getName().equals(DataTypeDefinition.FLOAT) + || propDef.getDataType().getName().equals(DataTypeDefinition.INT) + || propDef.getDataType().getName().equals(DataTypeDefinition.LONG) + || propDef.getDataType().getName().equals(DataTypeDefinition.PATH) + ) { orderable = true; - } else if (analyserClassName.equals(DateTimeAnalyser.class.getCanonicalName()) - || analyserClassName.equals(DateAnalyser.class.getCanonicalName()) - || analyserClassName.equals(DoubleAnalyser.class.getCanonicalName()) - || analyserClassName.equals(FloatAnalyser.class.getCanonicalName()) - || analyserClassName.equals(IntegerAnalyser.class.getCanonicalName()) - || analyserClassName.equals(LongAnalyser.class.getCanonicalName()) - || analyserClassName.equals(PathAnalyser.class.getCanonicalName()) - || analyserClassName.equals(VerbatimAnalyser.class.getCanonicalName())) - { - orderable = true; - } else + } + else { orderable = false; } diff --git a/source/java/org/alfresco/cmis/mapping/AbstractProperty.java b/source/java/org/alfresco/cmis/mapping/AbstractProperty.java index c1903f9659..10a717a4fe 100644 --- a/source/java/org/alfresco/cmis/mapping/AbstractProperty.java +++ b/source/java/org/alfresco/cmis/mapping/AbstractProperty.java @@ -23,9 +23,9 @@ import java.util.Collection; import org.alfresco.cmis.CMISPropertyAccessor; import org.alfresco.opencmis.dictionary.CMISPropertyLuceneBuilder; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserExpressionAdaptor; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserExpressionAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.AssociationRef; diff --git a/source/java/org/alfresco/cmis/mapping/AbstractSimpleProperty.java b/source/java/org/alfresco/cmis/mapping/AbstractSimpleProperty.java index 03b6cf2250..35f09f3c4a 100644 --- a/source/java/org/alfresco/cmis/mapping/AbstractSimpleProperty.java +++ b/source/java/org/alfresco/cmis/mapping/AbstractSimpleProperty.java @@ -20,9 +20,9 @@ package org.alfresco.cmis.mapping; import java.io.Serializable; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; diff --git a/source/java/org/alfresco/cmis/mapping/BaseTypeIdProperty.java b/source/java/org/alfresco/cmis/mapping/BaseTypeIdProperty.java index 8c09f1ff7b..916c39edda 100644 --- a/source/java/org/alfresco/cmis/mapping/BaseTypeIdProperty.java +++ b/source/java/org/alfresco/cmis/mapping/BaseTypeIdProperty.java @@ -24,9 +24,9 @@ import org.alfresco.cmis.CMISDictionaryModel; import org.alfresco.cmis.CMISQueryException; import org.alfresco.cmis.CMISScope; import org.alfresco.cmis.CMISTypeDefinition; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.AssociationRef; diff --git a/source/java/org/alfresco/cmis/mapping/DirectProperty.java b/source/java/org/alfresco/cmis/mapping/DirectProperty.java index 03eb62fc16..28626c5f30 100644 --- a/source/java/org/alfresco/cmis/mapping/DirectProperty.java +++ b/source/java/org/alfresco/cmis/mapping/DirectProperty.java @@ -20,8 +20,7 @@ package org.alfresco.cmis.mapping; import java.io.Serializable; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; -import org.alfresco.repo.search.impl.lucene.analysis.DateTimeAnalyser; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; import org.alfresco.service.cmr.dictionary.PropertyDefinition; @@ -101,11 +100,7 @@ public class DirectProperty extends AbstractSimpleProperty } else if (propertyDef.getDataType().getName().equals(DataTypeDefinition.DATETIME)) { - String analyserClassName = propertyDef.resolveAnalyserClassName(); - if (analyserClassName.equals(DateTimeAnalyser.class.getCanonicalName())) - { - field = field + ".sort"; - } + field = lqpa.getDatetimeSortField(field, propertyDef); } return field; diff --git a/source/java/org/alfresco/cmis/mapping/FixedValueProperty.java b/source/java/org/alfresco/cmis/mapping/FixedValueProperty.java index 683c1a3e38..d820e85534 100644 --- a/source/java/org/alfresco/cmis/mapping/FixedValueProperty.java +++ b/source/java/org/alfresco/cmis/mapping/FixedValueProperty.java @@ -22,8 +22,8 @@ import java.io.Serializable; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.AssociationRef; diff --git a/source/java/org/alfresco/cmis/mapping/ObjectIdProperty.java b/source/java/org/alfresco/cmis/mapping/ObjectIdProperty.java index c5ce322e44..e3aacdb824 100644 --- a/source/java/org/alfresco/cmis/mapping/ObjectIdProperty.java +++ b/source/java/org/alfresco/cmis/mapping/ObjectIdProperty.java @@ -25,9 +25,9 @@ import org.alfresco.cmis.CMISDictionaryModel; import org.alfresco.cmis.CMISQueryException; import org.alfresco.cmis.CMISServices; import org.alfresco.model.ContentModel; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; diff --git a/source/java/org/alfresco/cmis/mapping/ObjectTypeIdProperty.java b/source/java/org/alfresco/cmis/mapping/ObjectTypeIdProperty.java index 856fef2dd4..4e116d5255 100644 --- a/source/java/org/alfresco/cmis/mapping/ObjectTypeIdProperty.java +++ b/source/java/org/alfresco/cmis/mapping/ObjectTypeIdProperty.java @@ -24,9 +24,9 @@ import org.alfresco.cmis.CMISDictionaryModel; import org.alfresco.cmis.CMISQueryException; import org.alfresco.cmis.CMISScope; import org.alfresco.cmis.CMISTypeDefinition; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.repository.AssociationRef; diff --git a/source/java/org/alfresco/cmis/mapping/ParentProperty.java b/source/java/org/alfresco/cmis/mapping/ParentProperty.java index 0859a400fb..81269642fb 100644 --- a/source/java/org/alfresco/cmis/mapping/ParentProperty.java +++ b/source/java/org/alfresco/cmis/mapping/ParentProperty.java @@ -21,9 +21,9 @@ package org.alfresco.cmis.mapping; import java.io.Serializable; import org.alfresco.cmis.CMISDictionaryModel; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; import org.alfresco.repo.search.impl.querymodel.PredicateMode; import org.alfresco.service.ServiceRegistry; import org.alfresco.service.cmr.dictionary.DataTypeDefinition; diff --git a/source/java/org/alfresco/cmis/search/CMISFTSQueryParser.java b/source/java/org/alfresco/cmis/search/CMISFTSQueryParser.java index 6d0af0a4b2..0437bf2e75 100644 --- a/source/java/org/alfresco/cmis/search/CMISFTSQueryParser.java +++ b/source/java/org/alfresco/cmis/search/CMISFTSQueryParser.java @@ -23,7 +23,7 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; import org.alfresco.repo.search.impl.parsers.CMIS_FTSLexer; import org.alfresco.repo.search.impl.parsers.CMIS_FTSParser; import org.alfresco.repo.search.impl.parsers.FTSQueryException; diff --git a/source/java/org/alfresco/cmis/search/CmisFunctionEvaluationContext.java b/source/java/org/alfresco/cmis/search/CmisFunctionEvaluationContext.java index fed52dfbf9..ca0e786bac 100644 --- a/source/java/org/alfresco/cmis/search/CmisFunctionEvaluationContext.java +++ b/source/java/org/alfresco/cmis/search/CmisFunctionEvaluationContext.java @@ -30,9 +30,9 @@ import org.alfresco.cmis.CMISPropertyDefinition; import org.alfresco.cmis.CMISQueryException; import org.alfresco.cmis.CMISScope; import org.alfresco.cmis.CMISTypeDefinition; -import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneQueryParserAdaptor; +import org.alfresco.repo.search.adaptor.lucene.QueryConstants; import org.alfresco.repo.search.impl.querymodel.FunctionArgument; import org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext; import org.alfresco.repo.search.impl.querymodel.PredicateMode; @@ -72,31 +72,31 @@ public class CmisFunctionEvaluationContext implements FunctionEvaluationContext static { - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_PATH); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_TEXT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ID); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ISROOT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ISNODE); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_TX); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_PARENT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_PRIMARYPARENT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_QNAME); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_CLASS); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_TYPE); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_EXACTTYPE); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ASPECT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_EXACTASPECT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ALL); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ISUNSET); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ISNULL); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ISNOTNULL); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_FTSSTATUS); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ASSOCTYPEQNAME); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_PRIMARYASSOCTYPEQNAME); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_DBID); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_TAG); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_TENANT); - EXPOSED_FIELDS.add(AbstractLuceneQueryParser.FIELD_ANCESTOR); + EXPOSED_FIELDS.add(QueryConstants.FIELD_PATH); + EXPOSED_FIELDS.add(QueryConstants.FIELD_TEXT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ID); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ISROOT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ISNODE); + EXPOSED_FIELDS.add(QueryConstants.FIELD_TX); + EXPOSED_FIELDS.add(QueryConstants.FIELD_PARENT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_PRIMARYPARENT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_QNAME); + EXPOSED_FIELDS.add(QueryConstants.FIELD_CLASS); + EXPOSED_FIELDS.add(QueryConstants.FIELD_TYPE); + EXPOSED_FIELDS.add(QueryConstants.FIELD_EXACTTYPE); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ASPECT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_EXACTASPECT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ALL); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ISUNSET); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ISNULL); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ISNOTNULL); + EXPOSED_FIELDS.add(QueryConstants.FIELD_FTSSTATUS); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ASSOCTYPEQNAME); + EXPOSED_FIELDS.add(QueryConstants.FIELD_PRIMARYASSOCTYPEQNAME); + EXPOSED_FIELDS.add(QueryConstants.FIELD_DBID); + EXPOSED_FIELDS.add(QueryConstants.FIELD_TAG); + EXPOSED_FIELDS.add(QueryConstants.FIELD_TENANT); + EXPOSED_FIELDS.add(QueryConstants.FIELD_ANCESTOR); EXPOSED_FIELDS.add("d:"+DataTypeDefinition.ANY.getLocalName()); diff --git a/source/java/org/alfresco/repo/admin/patch/impl/CalendarModelUriPatch.java b/source/java/org/alfresco/repo/admin/patch/impl/CalendarModelUriPatch.java index 69841e3ec9..2ce013644c 100644 --- a/source/java/org/alfresco/repo/admin/patch/impl/CalendarModelUriPatch.java +++ b/source/java/org/alfresco/repo/admin/patch/impl/CalendarModelUriPatch.java @@ -25,16 +25,7 @@ import org.alfresco.repo.admin.patch.AbstractPatch; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.patch.PatchDAO; import org.alfresco.repo.domain.qname.QNameDAO; -import org.alfresco.repo.importer.ImporterBootstrap; -import org.alfresco.repo.search.Indexer; -import org.alfresco.repo.search.IndexerAndSearcher; -import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser; import org.alfresco.repo.transaction.RetryingTransactionHelper; -import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.cmr.search.ResultSet; -import org.alfresco.service.cmr.search.ResultSetRow; -import org.alfresco.service.cmr.search.SearchParameters; -import org.alfresco.service.cmr.search.SearchService; import org.alfresco.util.Pair; import org.springframework.extensions.surf.util.I18NUtil; diff --git a/source/java/org/alfresco/repo/model/filefolder/HiddenAspect.java b/source/java/org/alfresco/repo/model/filefolder/HiddenAspect.java index f3d1f2c6a5..f7dfd02128 100644 --- a/source/java/org/alfresco/repo/model/filefolder/HiddenAspect.java +++ b/source/java/org/alfresco/repo/model/filefolder/HiddenAspect.java @@ -33,7 +33,6 @@ import org.alfresco.model.ContentModel; import org.alfresco.query.PagingRequest; import org.alfresco.query.PagingResults; import org.alfresco.repo.policy.PolicyComponent; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParser; import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.service.cmr.model.FileFolderService; import org.alfresco.service.cmr.model.FileFolderServiceType; @@ -42,14 +41,15 @@ import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.Path; -import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.repository.Path.Element; +import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.service.cmr.search.ResultSet; import org.alfresco.service.cmr.search.SearchParameters; import org.alfresco.service.cmr.search.SearchService; import org.alfresco.service.namespace.QName; import org.alfresco.util.FileFilterMode; import org.alfresco.util.FileFilterMode.Client; +import org.alfresco.util.SearchLanguageConversion; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -179,7 +179,7 @@ public class HiddenAspect SearchParameters sp = new SearchParameters(); sp.addStore(storeRef); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_NAME.toString()) + ":\"" + name + "\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_NAME.toString()) + ":\"" + name + "\""); sp.addLocale(new Locale("en")); return searchService.query(sp); } diff --git a/source/java/org/alfresco/repo/node/index/AbstractReindexComponent.java b/source/java/org/alfresco/repo/node/index/AbstractReindexComponent.java index bbcc3b1708..a0f24c2fb6 100644 --- a/source/java/org/alfresco/repo/node/index/AbstractReindexComponent.java +++ b/source/java/org/alfresco/repo/node/index/AbstractReindexComponent.java @@ -40,24 +40,22 @@ import org.alfresco.model.ContentModel; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.node.Transaction; import org.alfresco.repo.search.Indexer; -import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser; -import org.alfresco.repo.search.impl.lucene.LuceneQueryParser; import org.alfresco.repo.search.impl.lucene.LuceneResultSetRow; import org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexer; import org.alfresco.repo.security.authentication.AuthenticationComponent; import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.tenant.TenantService; import org.alfresco.repo.transaction.AlfrescoTransactionSupport; -import org.alfresco.repo.transaction.TransactionListenerAdapter; -import org.alfresco.repo.transaction.TransactionServiceImpl; import org.alfresco.repo.transaction.AlfrescoTransactionSupport.TxnReadState; import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback; +import org.alfresco.repo.transaction.TransactionListenerAdapter; +import org.alfresco.repo.transaction.TransactionServiceImpl; import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.InvalidNodeRefException; import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.cmr.repository.NodeRef.Status; import org.alfresco.service.cmr.repository.NodeService; import org.alfresco.service.cmr.repository.StoreRef; -import org.alfresco.service.cmr.repository.NodeRef.Status; import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter; import org.alfresco.service.cmr.search.ResultSet; import org.alfresco.service.cmr.search.ResultSetRow; @@ -65,6 +63,7 @@ import org.alfresco.service.cmr.search.SearchParameters; import org.alfresco.service.cmr.search.SearchService; import org.alfresco.util.ParameterCheck; import org.alfresco.util.PropertyCheck; +import org.alfresco.util.SearchLanguageConversion; import org.alfresco.util.VmShutdownListener; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -568,7 +567,7 @@ public abstract class AbstractReindexComponent implements IndexRecovery sp.addStore(nodeRef.getStoreRef()); try { - sp.setQuery("ID:" + LuceneQueryParser.escape(nodeRef.toString())); + sp.setQuery("ID:" + SearchLanguageConversion.escapeLuceneQuery(nodeRef.toString())); results = searcher.query(sp); for (ResultSetRow row : results) @@ -596,7 +595,7 @@ public abstract class AbstractReindexComponent implements IndexRecovery } try { - sp.setQuery("FTSREF:" + LuceneQueryParser.escape(nodeRef.toString())); + sp.setQuery("FTSREF:" + SearchLanguageConversion.escapeLuceneQuery(nodeRef.toString())); results = searcher.query(sp); for (ResultSetRow row : results) @@ -662,7 +661,7 @@ public abstract class AbstractReindexComponent implements IndexRecovery sp.addStore(storeRef); // search for it in the index, sorting with youngest first, fetching only 1 sp.setLanguage(SearchService.LANGUAGE_LUCENE); - sp.setQuery("TX:" + AbstractLuceneQueryParser.escape(changeTxnId)); + sp.setQuery("TX:" + SearchLanguageConversion.escapeLuceneQuery(changeTxnId)); sp.setLimit(1); results = searcher.query(sp); @@ -713,7 +712,7 @@ public abstract class AbstractReindexComponent implements IndexRecovery sp.addStore(storeRef); // search for it in the index, sorting with youngest first, fetching only 1 sp.setLanguage(SearchService.LANGUAGE_LUCENE); - sp.setQuery("ID:" + AbstractLuceneQueryParser.escape(nodeRef.toString())); + sp.setQuery("ID:" + SearchLanguageConversion.escapeLuceneQuery(nodeRef.toString())); sp.setLimit(1); results = searcher.query(sp); diff --git a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneIndexerImpl.java b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneIndexerImpl.java index 1912a6c0de..6c346dcfbe 100644 --- a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneIndexerImpl.java +++ b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneIndexerImpl.java @@ -92,6 +92,7 @@ import org.alfresco.util.CachingDateFormat; import org.alfresco.util.EqualsHelper; import org.alfresco.util.GUID; import org.alfresco.util.ISO9075; +import org.alfresco.util.SearchLanguageConversion; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.lucene.analysis.Token; @@ -741,7 +742,7 @@ public class ADMLuceneIndexerImpl extends AbstractLuceneIndexerImpl imp sp.addStore(nodeRef.getStoreRef()); try { - sp.setQuery("ID:" + LuceneQueryParser.escape(nodeRef.toString())); + sp.setQuery("ID:" + SearchLanguageConversion.escapeLuceneQuery(nodeRef.toString())); results = searcher.query(sp); for (ResultSetRow row : results) { diff --git a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java index 40b4d0899d..974d7186c1 100644 --- a/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java +++ b/source/java/org/alfresco/repo/search/impl/lucene/ADMLuceneSearcherImpl.java @@ -528,14 +528,14 @@ public class ADMLuceneSearcherImpl extends AbstractLuceneBase implements LuceneS sb.append("+ID:\"").append(nodeRef.toString()).append("\" +(TEXT:(").append(googleLikePattern.toLowerCase()).append(") "); if (propertyQName != null) { - sb.append(" OR @").append(LuceneQueryParser.escape(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())); + sb.append(" OR @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())); sb.append(":(").append(googleLikePattern.toLowerCase()).append(")"); } else { for (QName key : nodeService.getProperties(nodeRef).keySet()) { - sb.append(" OR @").append(LuceneQueryParser.escape(QName.createQName(key.getNamespaceURI(), ISO9075.encode(key.getLocalName())).toString())); + sb.append(" OR @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(key.getNamespaceURI(), ISO9075.encode(key.getLocalName())).toString())); sb.append(":(").append(googleLikePattern.toLowerCase()).append(")"); } } @@ -587,7 +587,7 @@ public class ADMLuceneSearcherImpl extends AbstractLuceneBase implements LuceneS } if (propertyQName != null) { - sb.append(" @").append(LuceneQueryParser.escape(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())) + sb.append(" @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())) .append(":(").append(pattern).append(")"); } sb.append(")"); diff --git a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/DBQueryBuilderPredicatePartCommand.java b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/DBQueryBuilderPredicatePartCommand.java index effa1f8f4c..a289d7f4dc 100644 --- a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/DBQueryBuilderPredicatePartCommand.java +++ b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/DBQueryBuilderPredicatePartCommand.java @@ -18,7 +18,7 @@ */ package org.alfresco.repo.search.impl.querymodel.impl.db; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; /** * @author Andy diff --git a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/PropertySupport.java b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/PropertySupport.java index 70696c671e..53d466d1d7 100644 --- a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/PropertySupport.java +++ b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/PropertySupport.java @@ -26,7 +26,7 @@ import java.util.Set; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.qname.QNameDAO; -import org.alfresco.repo.search.impl.lucene.LuceneFunction; +import org.alfresco.repo.search.adaptor.lucene.LuceneFunction; import org.alfresco.repo.search.impl.querymodel.Argument; import org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext; import org.alfresco.repo.search.impl.querymodel.QueryModelException; diff --git a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPhrase.java b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPhrase.java index 6ca070223a..5ae2c6cf94 100644 --- a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPhrase.java +++ b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPhrase.java @@ -24,8 +24,8 @@ import java.util.Set; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.qname.QNameDAO; -import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.QueryConstants; import org.alfresco.repo.search.impl.querymodel.Argument; import org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext; import org.alfresco.repo.search.impl.querymodel.PropertyArgument; @@ -84,7 +84,7 @@ public class DBFTSPhrase extends FTSPhrase implements DBQueryBuilderComponent { throw new QueryModelException("Default field not supported"); } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_PARENT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_PARENT)) { ParentSupport parentSupport = new ParentSupport(); String id = (String) term; @@ -92,27 +92,27 @@ public class DBFTSPhrase extends FTSPhrase implements DBQueryBuilderComponent parentSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.EQUALS); builderSupport = parentSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_TYPE)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_TYPE)) { TypeSupport typeSupport = new TypeSupport(); typeSupport.setQnameIds(DBQuery.findTypeIds(term, namespaceService, dictionaryService, qnameDAO, false)); typeSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.IN); builderSupport = typeSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_ASPECT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_ASPECT)) { AspectSupport aspectSupport = new AspectSupport(); aspectSupport.setQnameIds(DBQuery.findAspectIds(term, namespaceService, dictionaryService, qnameDAO, false)); builderSupport = aspectSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_EXACTTYPE)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_EXACTTYPE)) { TypeSupport typeSupport = new TypeSupport(); typeSupport.setQnameIds(DBQuery.findTypeIds(term, namespaceService, dictionaryService, qnameDAO, true)); typeSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.IN); builderSupport = typeSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_EXACTASPECT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_EXACTASPECT)) { AspectSupport aspectSupport = new AspectSupport(); aspectSupport.setQnameIds(DBQuery.findAspectIds(term, namespaceService, dictionaryService, qnameDAO, true)); diff --git a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPrefixTerm.java b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPrefixTerm.java index be7fddd639..3c34c0828e 100644 --- a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPrefixTerm.java +++ b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSPrefixTerm.java @@ -24,7 +24,7 @@ import java.util.Set; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.qname.QNameDAO; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; import org.alfresco.repo.search.impl.querymodel.Argument; import org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext; import org.alfresco.repo.search.impl.querymodel.PropertyArgument; diff --git a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSTerm.java b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSTerm.java index e0369752b7..7e6989533c 100644 --- a/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSTerm.java +++ b/source/java/org/alfresco/repo/search/impl/querymodel/impl/db/functions/DBFTSTerm.java @@ -24,8 +24,8 @@ import java.util.Set; import org.alfresco.repo.domain.node.NodeDAO; import org.alfresco.repo.domain.qname.QNameDAO; -import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser; -import org.alfresco.repo.search.impl.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.AnalysisMode; +import org.alfresco.repo.search.adaptor.lucene.QueryConstants; import org.alfresco.repo.search.impl.querymodel.Argument; import org.alfresco.repo.search.impl.querymodel.FunctionEvaluationContext; import org.alfresco.repo.search.impl.querymodel.PropertyArgument; @@ -82,7 +82,7 @@ public class DBFTSTerm extends FTSTerm implements DBQueryBuilderComponent { throw new QueryModelException("Default field not supported"); } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_PARENT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_PARENT)) { ParentSupport parentSupport = new ParentSupport(); String id = (String) term; @@ -90,27 +90,27 @@ public class DBFTSTerm extends FTSTerm implements DBQueryBuilderComponent parentSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.EQUALS); builderSupport = parentSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_TYPE)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_TYPE)) { TypeSupport typeSupport = new TypeSupport(); typeSupport.setQnameIds(DBQuery.findTypeIds(term, namespaceService, dictionaryService, qnameDAO, false)); typeSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.IN); builderSupport = typeSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_ASPECT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_ASPECT)) { AspectSupport aspectSupport = new AspectSupport(); aspectSupport.setQnameIds(DBQuery.findAspectIds(term, namespaceService, dictionaryService, qnameDAO, false)); builderSupport = aspectSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_EXACTTYPE)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_EXACTTYPE)) { TypeSupport typeSupport = new TypeSupport(); typeSupport.setQnameIds(DBQuery.findTypeIds(term, namespaceService, dictionaryService, qnameDAO, true)); typeSupport.setCommandType(DBQueryBuilderPredicatePartCommandType.IN); builderSupport = typeSupport; } - else if (propArg.getPropertyName().equals(AbstractLuceneQueryParser.FIELD_EXACTASPECT)) + else if (propArg.getPropertyName().equals(QueryConstants.FIELD_EXACTASPECT)) { AspectSupport aspectSupport = new AspectSupport(); aspectSupport.setQnameIds(DBQuery.findAspectIds(term, namespaceService, dictionaryService, qnameDAO, true)); diff --git a/source/java/org/alfresco/repo/search/impl/solr/SolrSearchService.java b/source/java/org/alfresco/repo/search/impl/solr/SolrSearchService.java index 709e3303fb..e15c133f3e 100644 --- a/source/java/org/alfresco/repo/search/impl/solr/SolrSearchService.java +++ b/source/java/org/alfresco/repo/search/impl/solr/SolrSearchService.java @@ -439,14 +439,14 @@ public class SolrSearchService implements SearchService sb.append("+ID:\"").append(nodeRef.toString()).append("\" +(TEXT:(").append(googleLikePattern.toLowerCase()).append(") "); if (propertyQName != null) { - sb.append(" OR @").append(LuceneQueryParser.escape(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())); + sb.append(" OR @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())); sb.append(":(").append(googleLikePattern.toLowerCase()).append(")"); } else { for (QName key : nodeService.getProperties(nodeRef).keySet()) { - sb.append(" OR @").append(LuceneQueryParser.escape(QName.createQName(key.getNamespaceURI(), ISO9075.encode(key.getLocalName())).toString())); + sb.append(" OR @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(key.getNamespaceURI(), ISO9075.encode(key.getLocalName())).toString())); sb.append(":(").append(googleLikePattern.toLowerCase()).append(")"); } } @@ -501,7 +501,7 @@ public class SolrSearchService implements SearchService } if (propertyQName != null) { - sb.append(" @").append(LuceneQueryParser.escape(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())) + sb.append(" @").append(SearchLanguageConversion.escapeLuceneQuery(QName.createQName(propertyQName.getNamespaceURI(), ISO9075.encode(propertyQName.getLocalName())).toString())) .append(":(").append(pattern).append(")"); } sb.append(")"); diff --git a/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java b/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java index b27c258fbf..f21a6e5224 100644 --- a/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java +++ b/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java @@ -626,9 +626,9 @@ public class AuthorityDAOImpl implements AuthorityDAO, NodeServicePolicies.Befor if (displayNamePattern != null) { query.append(" AND @").append( - AbstractLuceneQueryParser.escape("{" + ContentModel.PROP_USERNAME.getNamespaceURI() + "}" + SearchLanguageConversion.escapeLuceneQuery("{" + ContentModel.PROP_USERNAME.getNamespaceURI() + "}" + ISO9075.encode(ContentModel.PROP_USERNAME.getLocalName()))).append(":\"").append( - AbstractLuceneQueryParser.escape(displayNamePattern)).append("\""); + SearchLanguageConversion.escapeLuceneQuery(displayNamePattern)).append("\""); } if (type == null) @@ -659,23 +659,23 @@ public class AuthorityDAOImpl implements AuthorityDAO, NodeServicePolicies.Befor query.append(" OR "); } query.append("@").append( - AbstractLuceneQueryParser.escape("{" + ContentModel.PROP_AUTHORITY_NAME.getNamespaceURI() + "}" + SearchLanguageConversion.escapeLuceneQuery("{" + ContentModel.PROP_AUTHORITY_NAME.getNamespaceURI() + "}" + ISO9075.encode(ContentModel.PROP_AUTHORITY_NAME.getLocalName()))).append(":\""); - query.append(getName(subType, AbstractLuceneQueryParser.escape(displayNamePattern))).append("\""); + query.append(getName(subType, SearchLanguageConversion.escapeLuceneQuery(displayNamePattern))).append("\""); } } else { query.append("@").append( - AbstractLuceneQueryParser.escape("{" + ContentModel.PROP_AUTHORITY_NAME.getNamespaceURI() + "}" + SearchLanguageConversion.escapeLuceneQuery("{" + ContentModel.PROP_AUTHORITY_NAME.getNamespaceURI() + "}" + ISO9075.encode(ContentModel.PROP_AUTHORITY_NAME.getLocalName()))).append(":\""); - query.append(getName(type, AbstractLuceneQueryParser.escape(displayNamePattern))).append("\""); + query.append(getName(type, SearchLanguageConversion.escapeLuceneQuery(displayNamePattern))).append("\""); } query.append(" OR @").append( - AbstractLuceneQueryParser.escape("{" + ContentModel.PROP_AUTHORITY_DISPLAY_NAME.getNamespaceURI() + "}" + SearchLanguageConversion.escapeLuceneQuery("{" + ContentModel.PROP_AUTHORITY_DISPLAY_NAME.getNamespaceURI() + "}" + ISO9075.encode(ContentModel.PROP_AUTHORITY_DISPLAY_NAME.getLocalName()))).append( - ":\"").append(AbstractLuceneQueryParser.escape(displayNamePattern)).append("\")"); + ":\"").append(SearchLanguageConversion.escapeLuceneQuery(displayNamePattern)).append("\")"); } if (type == null) { @@ -690,7 +690,7 @@ public class AuthorityDAOImpl implements AuthorityDAO, NodeServicePolicies.Befor NodeRef parentAuthorityNodeRef = getAuthorityNodeRefOrNull(parentAuthority); if(parentAuthorityNodeRef != null) { - query.append(" AND PARENT:\"").append(AbstractLuceneQueryParser.escape(parentAuthorityNodeRef.toString())).append("\""); + query.append(" AND PARENT:\"").append(SearchLanguageConversion.escapeLuceneQuery(parentAuthorityNodeRef.toString())).append("\""); } else { @@ -710,7 +710,7 @@ public class AuthorityDAOImpl implements AuthorityDAO, NodeServicePolicies.Befor NodeRef zoneNodeRef = getZone(zoneName); if (zoneNodeRef != null) { - query.append(" AND PARENT:\"").append(AbstractLuceneQueryParser.escape(zoneNodeRef.toString())).append("\""); + query.append(" AND PARENT:\"").append(SearchLanguageConversion.escapeLuceneQuery(zoneNodeRef.toString())).append("\""); } else { diff --git a/source/java/org/alfresco/repo/site/SiteServiceImpl.java b/source/java/org/alfresco/repo/site/SiteServiceImpl.java index d2de11e48e..c96c5790a2 100644 --- a/source/java/org/alfresco/repo/site/SiteServiceImpl.java +++ b/source/java/org/alfresco/repo/site/SiteServiceImpl.java @@ -101,6 +101,7 @@ import org.alfresco.service.transaction.TransactionService; import org.alfresco.util.Pair; import org.alfresco.util.PropertyCheck; import org.alfresco.util.PropertyMap; +import org.alfresco.util.SearchLanguageConversion; import org.alfresco.util.registry.NamedObjectRegistry; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -833,7 +834,7 @@ public class SiteServiceImpl extends AbstractLifecycleBean implements SiteServic query.append(" +("); if (filterIsPresentAndNecessary) { - String escNameFilter = AbstractLuceneQueryParser.escape(filter.replace('"', ' ')); + String escNameFilter = SearchLanguageConversion.escapeLuceneQuery(filter.replace('"', ' ')); query.append(" @cm\\:name:\"*" + escNameFilter + "*\"") .append(" @cm\\:title:\"" + escNameFilter + "\"") @@ -841,7 +842,7 @@ public class SiteServiceImpl extends AbstractLifecycleBean implements SiteServic } if (sitePresetFilterIsPresent) { - String escPresetFilter = AbstractLuceneQueryParser.escape(sitePresetFilter.replace('"', ' ')); + String escPresetFilter = SearchLanguageConversion.escapeLuceneQuery(sitePresetFilter.replace('"', ' ')); query.append(" @st\\:sitePreset:\"" + escPresetFilter + "\""); } diff --git a/source/test-java/org/alfresco/repo/avm/AVMServiceTest.java b/source/test-java/org/alfresco/repo/avm/AVMServiceTest.java index e046ea2a2d..5591503e29 100644 --- a/source/test-java/org/alfresco/repo/avm/AVMServiceTest.java +++ b/source/test-java/org/alfresco/repo/avm/AVMServiceTest.java @@ -82,6 +82,7 @@ import org.alfresco.service.transaction.TransactionService; import org.alfresco.test_category.LegacyCategory; import org.alfresco.util.GUID; import org.alfresco.util.Pair; +import org.alfresco.util.SearchLanguageConversion; import org.alfresco.wcm.sandbox.SandboxConstants; import org.junit.experimental.categories.Category; @@ -644,7 +645,7 @@ public class AVMServiceTest extends AVMServiceTestBase StoreRef storeRef = AVMNodeConverter.ToStoreRef("main"); SearchService searchService = fIndexerAndSearcher.getSearcher(storeRef, true); - ResultSet results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}SillyProperty") + ":\"Silly\""); + ResultSet results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}SillyProperty") + ":\"Silly\""); assertEquals(0, results.length()); results.close(); @@ -652,7 +653,7 @@ public class AVMServiceTest extends AVMServiceTestBase PropertyValue value = new PropertyValue(DataTypeDefinition.TEXT, "Silly Property Value"); fService.setNodeProperty("main:/a/b/c/foo", name, value); fService.createSnapshot("main", null, null); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}SillyProperty") + ":\"Silly\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}SillyProperty") + ":\"Silly\""); assertEquals(1, results.length()); results.close(); PropertyValue returned = fService.getNodeProperty(-1, "main:/a/b/c/foo", name); @@ -690,10 +691,10 @@ public class AVMServiceTest extends AVMServiceTestBase assertEquals(p4.toString(), props.get(n4).toString()); assertEquals(p5.toString(), props.get(n5).toString()); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop1") + ":\"" + props.get(n1).getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop1") + ":\"" + props.get(n1).getStringValue() + "\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); assertEquals(1, results.length()); results.close(); @@ -729,10 +730,10 @@ public class AVMServiceTest extends AVMServiceTestBase fService.deleteNodeProperty("main:/a/b/c/bar", n1); fService.createSnapshot("main", null, null); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop1") + ":\"" + props.get(n1).getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop1") + ":\"" + props.get(n1).getStringValue() + "\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); assertEquals(1, results.length()); results.close(); @@ -745,10 +746,10 @@ public class AVMServiceTest extends AVMServiceTestBase fService.deleteNodeProperties("main:/a/b/c/bar"); fService.createSnapshot("main", null, null); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop1") + ":\"" + p1.getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop1") + ":\"" + p1.getStringValue() + "\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop2") + ":\"" + props.get(n2).getStringValue() + "\""); assertEquals(0, results.length()); results.close(); @@ -762,10 +763,10 @@ public class AVMServiceTest extends AVMServiceTestBase fService.createSnapshot("main", null, null); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop1") + ":\"" + p1.getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop1") + ":\"" + p1.getStringValue() + "\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@{silly.uri}Prop2") + ":\"" + p2.getStringValue() + "\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@{silly.uri}Prop2") + ":\"" + p2.getStringValue() + "\""); assertEquals(0, results.length()); results.close(); } @@ -1038,41 +1039,41 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":biz"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":biz"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(7, results.length()); results.close(); @@ -1181,41 +1182,41 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":biz"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":biz"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(6, results.length()); results.close(); @@ -1324,45 +1325,45 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"bar\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"bar\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":biz"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":biz"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(6, results.length()); results.close(); @@ -1709,7 +1710,7 @@ public class AVMServiceTest extends AVMServiceTestBase StoreRef storeRef = AVMNodeConverter.ToStoreRef("main"); SearchService searchService = fIndexerAndSearcher.getSearcher(storeRef, true); - ResultSet results = searchService.query(storeRef, "lucene", "@" + AbstractLuceneQueryParser.escape(ContentModel.PROP_NAME.toString()) + ":\"guest\""); + ResultSet results = searchService.query(storeRef, "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_NAME.toString()) + ":\"guest\""); assertEquals(0, results.length()); results.close(); @@ -1723,7 +1724,7 @@ public class AVMServiceTest extends AVMServiceTestBase fService.createSnapshot("main", null, null); searchService = fIndexerAndSearcher.getSearcher(storeRef, true); - results = searchService.query(storeRef, "lucene", "@" + AbstractLuceneQueryParser.escape(ContentModel.PROP_NAME.toString()) + ":\"guest\""); + results = searchService.query(storeRef, "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_NAME.toString()) + ":\"guest\""); assertEquals(1, results.length()); results.close(); @@ -1810,41 +1811,41 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"fooCopy\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"fooCopy\""); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(10, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(10, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(10, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(10, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(10, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(10, results.length()); results.close(); @@ -1949,41 +1950,41 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(2, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(2, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"fooCopy\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"fooCopy\""); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(15, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(15, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(15, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(15, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(15, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(15, results.length()); results.close(); @@ -2602,17 +2603,17 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(0, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); if (results.length() == 7) { for (ResultSetRow row : results) @@ -2623,23 +2624,23 @@ public class AVMServiceTest extends AVMServiceTestBase assertEquals(5, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(5, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(5, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(5, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(5, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + "main"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + "main"); assertEquals(5, results.length()); results.close(); @@ -4543,38 +4544,38 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":main"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":main"); assertEquals(9, results.length()); results.close(); @@ -4711,37 +4712,37 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":\"foo\""); assertEquals(0, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NAME) + ":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NAME) + ":foo"); assertEquals(0, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + "main"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + "main"); assertEquals(6, results.length()); results.close(); @@ -5854,27 +5855,27 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - ResultSet results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + ResultSet results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(7, results.length()); results.close(); @@ -5961,27 +5962,27 @@ public class AVMServiceTest extends AVMServiceTestBase // Note "a" is a stop word and therefore not findable ... - ResultSet results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_CREATOR) + ":admin"); + ResultSet results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_CREATOR) + ":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_MODIFIER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_MODIFIER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_OWNER) + ":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_OWNER) + ":admin"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_NODE_UUID) + ":unknown"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_PROTOCOL) + ":avm"); assertEquals(7, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@" + ContentModel.PROP_STORE_IDENTIFIER) + ":" + store); assertEquals(7, results.length()); results.close(); diff --git a/source/test-java/org/alfresco/repo/avm/AVMServiceTestBase.java b/source/test-java/org/alfresco/repo/avm/AVMServiceTestBase.java index 201d6c904a..5f4cb295a1 100644 --- a/source/test-java/org/alfresco/repo/avm/AVMServiceTestBase.java +++ b/source/test-java/org/alfresco/repo/avm/AVMServiceTestBase.java @@ -44,6 +44,7 @@ import org.alfresco.service.cmr.search.SearchService; import org.alfresco.service.cmr.security.AuthenticationService; import org.alfresco.service.transaction.TransactionService; import org.alfresco.test_category.LegacyCategory; +import org.alfresco.util.SearchLanguageConversion; import org.junit.experimental.categories.Category; import org.springframework.context.ApplicationContext; @@ -307,38 +308,38 @@ public class AVMServiceTestBase extends TestCase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NAME)+":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NAME)+":\"foo\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NAME)+":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NAME)+":foo"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_CREATOR)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_CREATOR)+":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_MODIFIER)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_MODIFIER)+":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_OWNER)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_OWNER)+":admin"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NODE_UUID)+":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NODE_UUID)+":unknown"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_STORE_PROTOCOL)+":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_STORE_PROTOCOL)+":avm"); assertEquals(9, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_STORE_IDENTIFIER)+":"+store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_STORE_IDENTIFIER)+":"+store); assertEquals(9, results.length()); results.close(); @@ -439,17 +440,17 @@ public class AVMServiceTestBase extends TestCase // Note "a" is a stop word and therefore not findable ... - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NAME)+":\"foo\""); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NAME)+":\"foo\""); assertEquals(1, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NAME)+":foo"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NAME)+":foo"); assertEquals(1, results.length()); results.close(); // TODO: Fix auth in AVMDiskDriver and more?? - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_CREATOR)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_CREATOR)+":admin"); if(results.length() == 10) { for (ResultSetRow row : results) @@ -460,23 +461,23 @@ public class AVMServiceTestBase extends TestCase assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_MODIFIER)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_MODIFIER)+":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_OWNER)+":admin"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_OWNER)+":admin"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_NODE_UUID)+":unknown"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_NODE_UUID)+":unknown"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_STORE_PROTOCOL)+":avm"); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_STORE_PROTOCOL)+":avm"); assertEquals(6, results.length()); results.close(); - results = searchService.query(storeRef, "lucene", AbstractLuceneQueryParser.escape("@"+ContentModel.PROP_STORE_IDENTIFIER)+":"+store); + results = searchService.query(storeRef, "lucene", SearchLanguageConversion.escapeLuceneQuery("@"+ContentModel.PROP_STORE_IDENTIFIER)+":"+store); assertEquals(6, results.length()); results.close(); diff --git a/source/test-java/org/alfresco/repo/model/filefolder/HiddenAspectTest.java b/source/test-java/org/alfresco/repo/model/filefolder/HiddenAspectTest.java index e1cff544a3..2ef833fce4 100644 --- a/source/test-java/org/alfresco/repo/model/filefolder/HiddenAspectTest.java +++ b/source/test-java/org/alfresco/repo/model/filefolder/HiddenAspectTest.java @@ -55,6 +55,7 @@ import org.alfresco.util.FileFilterMode.Client; import org.alfresco.util.GUID; import org.alfresco.util.Pair; import org.alfresco.util.PropertyMap; +import org.alfresco.util.SearchLanguageConversion; import org.junit.After; import org.junit.Before; import org.junit.Rule; @@ -849,7 +850,7 @@ public class HiddenAspectTest SearchParameters sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_NAME.toString()) + ":\"" + name + "\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_NAME.toString()) + ":\"" + name + "\""); sp.addLocale(new Locale("en")); return searchService.query(sp); } diff --git a/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneCategoryTest.java b/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneCategoryTest.java index debf046106..f87ea2b58e 100644 --- a/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneCategoryTest.java +++ b/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneCategoryTest.java @@ -63,6 +63,7 @@ import org.alfresco.service.transaction.TransactionService; import org.alfresco.test_category.OwnJVMTestsCategory; import org.alfresco.util.ApplicationContextHelper; import org.alfresco.util.Pair; +import org.alfresco.util.SearchLanguageConversion; import org.junit.experimental.categories.Category; import org.springframework.context.ApplicationContext; @@ -871,7 +872,7 @@ public class ADMLuceneCategoryTest extends TestCase tx = transactionService.getUserTransaction(); tx.begin(); start = System.nanoTime(); - ResultSet set = searcher.query(serviceRegistry.getPersonService().getPeopleContainer().getStoreRef(), "lucene", "@"+LuceneQueryParser.escape(ContentModel.ASPECT_GEN_CLASSIFIABLE.toString())+":second*"); + ResultSet set = searcher.query(serviceRegistry.getPersonService().getPeopleContainer().getStoreRef(), "lucene", "@"+SearchLanguageConversion.escapeLuceneQuery(ContentModel.ASPECT_GEN_CLASSIFIABLE.toString())+":second*"); System.out.println("Query complete in "+(System.nanoTime()-start)/1e9f); set.close(); tx.commit(); diff --git a/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneTest.java b/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneTest.java index 1bd6cb4404..ef1211a869 100644 --- a/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneTest.java +++ b/source/test-java/org/alfresco/repo/search/impl/lucene/ADMLuceneTest.java @@ -105,6 +105,7 @@ import org.alfresco.util.CachingDateFormat; import org.alfresco.util.GUID; import org.alfresco.util.ISO9075; import org.alfresco.util.CachingDateFormat.SimpleDateFormatAndResolution; +import org.alfresco.util.SearchLanguageConversion; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.lucene.index.IndexReader; @@ -751,7 +752,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener // testQuery(searcher, runner, "PATH:\"/d-0//meep\""); testQuery(searcher, runner, "PATH:\"//*\""); // testQuery(searcher, runner, "PATH:\"//meep\""); - // testQuery(searcher, runner, "@"+LuceneQueryParser.escape(propQName.toString())+":\"lemon\""); + // testQuery(searcher, runner, "@"+SearchLanguageConversion.escapeLuceneQuery(propQName.toString())+":\"lemon\""); } @@ -4795,32 +4796,32 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alfresco Tutorial\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alfresco Tutorial\"", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"", null); assertEquals(0, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~0", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~0", null); assertEquals(0, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~1", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~1", null); assertEquals(0, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~2", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~2", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~3", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Tutorial Alfresco\"~3", null); assertEquals(1, results.length()); results.close(); @@ -4832,7 +4833,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener SearchParameters sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":лемур"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":лемур"); sp.addLocale(new Locale("ru")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4841,7 +4842,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":lemur"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":lemur"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4850,7 +4851,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":chou"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":chou"); sp.addLocale(new Locale("fr")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4859,7 +4860,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":cabbage"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":cabbage"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4868,7 +4869,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":cabba*"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":cabba*"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4877,7 +4878,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":ca*ge"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":ca*ge"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4886,7 +4887,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":*bage"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":*bage"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4895,7 +4896,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":cabage~"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":cabage~"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4904,7 +4905,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":*b?ag?"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":*b?ag?"); sp.addLocale(new Locale("en")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -4913,7 +4914,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(multimlQName.toString()) + ":cho*"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(multimlQName.toString()) + ":cho*"); sp.setMlAnalaysisMode(MLAnalysisMode.LOCALE_AND_ALL_CONTAINED_LOCALES); sp.addLocale(new Locale("fr")); results = searcher.query(sp); @@ -4926,7 +4927,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(QName.createQName(TEST_NAMESPACE, "content-many-ista").toString()) + ":multicontent"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(QName.createQName(TEST_NAMESPACE, "content-many-ista").toString()) + ":multicontent"); results = searcher.query(sp); assertEquals(0, results.length()); results.close(); @@ -5191,27 +5192,27 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":\"fox\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":\"fox\"", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ".mimetype:\"text/plain\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".mimetype:\"text/plain\"", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ".locale:\"en_GB\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:\"en_GB\"", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ".locale:en_*", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:en_*", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ".locale:e*_GB", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".locale:e*_GB", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ".size:\"298\"", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ".size:\"298\"", null); assertEquals(1, results.length()); results.close(); @@ -5225,7 +5226,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":\"fox\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":\"fox\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5639,7 +5640,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresc?\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresc?\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5647,7 +5648,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfres??\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfres??\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5655,7 +5656,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfre???\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfre???\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5663,7 +5664,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfr????\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfr????\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5671,7 +5672,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alf?????\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alf?????\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5679,7 +5680,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"al??????\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"al??????\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5687,7 +5688,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a???????\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a???????\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5695,7 +5696,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a??re???\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a??re???\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5703,7 +5704,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5711,7 +5712,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"?lfresco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"?lfresco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5719,7 +5720,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"??fresco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"??fresco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5727,7 +5728,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???resco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???resco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5735,7 +5736,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???res?o\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???res?o\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5743,7 +5744,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"????e?co\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"????e?co\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5751,7 +5752,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"????e?c?\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"????e?c?\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5759,7 +5760,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???????o\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???????o\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5767,7 +5768,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???re???\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"???re???\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5775,7 +5776,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresc*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfresc*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5783,7 +5784,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfres*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfres*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5791,7 +5792,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfre*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfre*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5799,7 +5800,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfr*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alfr*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5807,7 +5808,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alf*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"alf*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5815,7 +5816,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"al*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"al*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5823,7 +5824,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5831,7 +5832,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a****\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"a****\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5839,7 +5840,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*lfresco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*lfresco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5847,7 +5848,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*fresco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*fresco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5855,7 +5856,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*resco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*resco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5863,7 +5864,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*esco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*esco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5871,7 +5872,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*sco\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*sco\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5879,7 +5880,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*co\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*co\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5887,7 +5888,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*o\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*o\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5895,7 +5896,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"****lf**sc***\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"****lf**sc***\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5903,7 +5904,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*??*lf**sc***\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*??*lf**sc***\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5911,7 +5912,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alfresc*tutorial\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alfresc*tutorial\""); results = searcher.query(sp); assertEquals(0, results.length()); results.close(); @@ -5919,7 +5920,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alf* tut*\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"Alf* tut*\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -5927,7 +5928,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*co *al\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_DESCRIPTION.toString()) + ":\"*co *al\""); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -6001,7 +6002,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); sp.setMlAnalaysisMode(MLAnalysisMode.ALL_ONLY); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":and"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":and"); results = searcher.query(sp); assertEquals(0, results.length()); results.close(); @@ -6010,7 +6011,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); sp.setMlAnalaysisMode(MLAnalysisMode.ALL_ONLY); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":\"and\""); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":\"and\""); results = searcher.query(sp); assertEquals(0, results.length()); results.close(); @@ -6019,7 +6020,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); sp.setMlAnalaysisMode(MLAnalysisMode.ALL_ONLY); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -6027,7 +6028,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); results = searcher.query(sp); assertEquals(1, results.length()); results.close(); @@ -6035,7 +6036,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); sp.addLocale(Locale.UK); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6044,7 +6045,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); sp.setMlAnalaysisMode(MLAnalysisMode.LOCALE_AND_ALL_CONTAINING_LOCALES); sp.addLocale(Locale.UK); results = searcher.query(sp); @@ -6054,7 +6055,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); sp.addLocale(Locale.ENGLISH); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6063,7 +6064,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banane"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banane"); sp.addLocale(Locale.FRENCH); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6072,7 +6073,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":香蕉"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":香蕉"); sp.addLocale(Locale.CHINESE); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6081,7 +6082,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banaan"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banaan"); sp.addLocale(new Locale("nl")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6090,7 +6091,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banane"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banane"); sp.addLocale(Locale.GERMAN); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6099,7 +6100,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":μπανάνα"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":μπανάνα"); sp.addLocale(new Locale("el")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6108,7 +6109,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); sp.addLocale(Locale.ITALIAN); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6117,7 +6118,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":バナナ"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":バナナ"); sp.addLocale(new Locale("ja")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6126,7 +6127,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":바나나"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":바나나"); sp.addLocale(new Locale("ko")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6135,7 +6136,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":banana"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":banana"); sp.addLocale(new Locale("pt")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6144,7 +6145,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":банан"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":банан"); sp.addLocale(new Locale("ru")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6153,7 +6154,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener sp = new SearchParameters(); sp.addStore(rootNodeRef.getStoreRef()); sp.setLanguage("lucene"); - sp.setQuery("@" + LuceneQueryParser.escape(mlQName.toString()) + ":plátano"); + sp.setQuery("@" + SearchLanguageConversion.escapeLuceneQuery(mlQName.toString()) + ":plátano"); sp.addLocale(new Locale("es")); results = searcher.query(sp); assertEquals(1, results.length()); @@ -6251,38 +6252,38 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":fox", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":fox", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":fo*", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":fo*", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":f*x", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":f*x", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toString()) + ":*ox", null); + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toString()) + ":*ox", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":fox", + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":fox", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":fo*", + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":fo*", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":f*x", + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":f*x", null); assertEquals(1, results.length()); results.close(); - results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + LuceneQueryParser.escape(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":*ox", + results = searcher.query(rootNodeRef.getStoreRef(), "lucene", "@" + SearchLanguageConversion.escapeLuceneQuery(ContentModel.PROP_CONTENT.toPrefixString(namespacePrefixResolver)) + ":*ox", null); assertEquals(1, results.length()); results.close(); @@ -7408,7 +7409,7 @@ public class ADMLuceneTest extends TestCase implements DictionaryListener private String escapeQName(QName qname) { - return LuceneQueryParser.escape(qname.toString()); + return SearchLanguageConversion.escapeLuceneQuery(qname.toString()); } /**