mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
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
This commit is contained in:
@@ -39,6 +39,7 @@ import org.alfresco.service.cmr.repository.Path;
|
|||||||
import org.alfresco.service.namespace.NamespaceService;
|
import org.alfresco.service.namespace.NamespaceService;
|
||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
import org.alfresco.util.ISO9075;
|
import org.alfresco.util.ISO9075;
|
||||||
|
import org.alfresco.util.SearchLanguageConversion;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.bean.repository.Repository;
|
import org.alfresco.web.bean.repository.Repository;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
@@ -203,7 +204,7 @@ public class SearchContext implements Serializable
|
|||||||
if (text.charAt(0) == '"' && text.charAt(text.length() - 1) == '"')
|
if (text.charAt(0) == '"' && text.charAt(text.length() - 1) == '"')
|
||||||
{
|
{
|
||||||
// as a single quoted phrase
|
// as a single quoted phrase
|
||||||
String quotedSafeText = '"' + QueryParser.escape(text.substring(1, text.length() - 1)) + '"';
|
String quotedSafeText = '"' + SearchLanguageConversion.escapeLuceneQuery(text.substring(1, text.length() - 1)) + '"';
|
||||||
if (appendText)
|
if (appendText)
|
||||||
{
|
{
|
||||||
plBuf.append("TEXT:").append(quotedSafeText);
|
plBuf.append("TEXT:").append(quotedSafeText);
|
||||||
@@ -339,7 +340,7 @@ public class SearchContext implements Serializable
|
|||||||
String escapedName = Repository.escapeQName(qname);
|
String escapedName = Repository.escapeQName(qname);
|
||||||
String value = queryFixedValues.get(qname);
|
String value = queryFixedValues.get(qname);
|
||||||
attributeQuery.append(" +@").append(escapedName)
|
attributeQuery.append(" +@").append(escapedName)
|
||||||
.append(":\"").append(QueryParser.escape(value)).append('"');
|
.append(":\"").append(SearchLanguageConversion.escapeLuceneQuery(value)).append('"');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -354,8 +355,8 @@ public class SearchContext implements Serializable
|
|||||||
{
|
{
|
||||||
String escapedName = Repository.escapeQName(qname);
|
String escapedName = Repository.escapeQName(qname);
|
||||||
RangeProperties rp = rangeAttributes.get(qname);
|
RangeProperties rp = rangeAttributes.get(qname);
|
||||||
String value1 = QueryParser.escape(rp.lower);
|
String value1 = SearchLanguageConversion.escapeLuceneQuery(rp.lower);
|
||||||
String value2 = QueryParser.escape(rp.upper);
|
String value2 = SearchLanguageConversion.escapeLuceneQuery(rp.upper);
|
||||||
attributeQuery.append(" +@").append(escapedName)
|
attributeQuery.append(" +@").append(escapedName)
|
||||||
.append(":").append(rp.inclusive ? "[" : "{").append(value1)
|
.append(":").append(rp.inclusive ? "[" : "{").append(value1)
|
||||||
.append(" TO ").append(value2).append(rp.inclusive ? "]" : "}");
|
.append(" TO ").append(value2).append(rp.inclusive ? "]" : "}");
|
||||||
|
@@ -33,7 +33,6 @@ import javax.transaction.UserTransaction;
|
|||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.repo.node.archive.RestoreNodeReport;
|
import org.alfresco.repo.node.archive.RestoreNodeReport;
|
||||||
import org.alfresco.repo.node.archive.RestoreNodeReport.RestoreStatus;
|
import org.alfresco.repo.node.archive.RestoreNodeReport.RestoreStatus;
|
||||||
import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser;
|
|
||||||
import org.alfresco.repo.web.scripts.FileTypeImageUtils;
|
import org.alfresco.repo.web.scripts.FileTypeImageUtils;
|
||||||
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
||||||
import org.alfresco.service.cmr.repository.ContentData;
|
import org.alfresco.service.cmr.repository.ContentData;
|
||||||
@@ -47,6 +46,7 @@ import org.alfresco.service.cmr.security.AccessStatus;
|
|||||||
import org.alfresco.service.cmr.security.PermissionService;
|
import org.alfresco.service.cmr.security.PermissionService;
|
||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
import org.alfresco.util.CachingDateFormat;
|
import org.alfresco.util.CachingDateFormat;
|
||||||
|
import org.alfresco.util.SearchLanguageConversion;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.app.context.IContextListener;
|
import org.alfresco.web.app.context.IContextListener;
|
||||||
import org.alfresco.web.app.context.UIContextService;
|
import org.alfresco.web.app.context.UIContextService;
|
||||||
@@ -618,7 +618,7 @@ public class TrashcanDialog extends BaseDialogBean implements IContextListener
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// search by name in the archive store
|
// search by name in the archive store
|
||||||
String safeText = AbstractLuceneQueryParser.escape(property.getSearchText());
|
String safeText = SearchLanguageConversion.escapeLuceneQuery(property.getSearchText());
|
||||||
if (safeText.indexOf(' ') == -1)
|
if (safeText.indexOf(' ') == -1)
|
||||||
{
|
{
|
||||||
if (property.isFullTextSearch())
|
if (property.isFullTextSearch())
|
||||||
@@ -680,8 +680,8 @@ public class TrashcanDialog extends BaseDialogBean implements IContextListener
|
|||||||
if (fromDate != null)
|
if (fromDate != null)
|
||||||
{
|
{
|
||||||
SimpleDateFormat df = CachingDateFormat.getDateFormat();
|
SimpleDateFormat df = CachingDateFormat.getDateFormat();
|
||||||
String strFromDate = AbstractLuceneQueryParser.escape(df.format(fromDate));
|
String strFromDate = SearchLanguageConversion.escapeLuceneQuery(df.format(fromDate));
|
||||||
String strToDate = AbstractLuceneQueryParser.escape(df.format(toDate));
|
String strToDate = SearchLanguageConversion.escapeLuceneQuery(df.format(toDate));
|
||||||
StringBuilder buf = new StringBuilder(128);
|
StringBuilder buf = new StringBuilder(128);
|
||||||
buf.append("@").append(DATE_ATTR)
|
buf.append("@").append(DATE_ATTR)
|
||||||
.append(":").append("[").append(strFromDate)
|
.append(":").append("[").append(strFromDate)
|
||||||
|
@@ -51,7 +51,6 @@ import org.alfresco.jlan.server.filesys.FilesystemsConfigSection;
|
|||||||
import org.alfresco.model.ApplicationModel;
|
import org.alfresco.model.ApplicationModel;
|
||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.repo.model.filefolder.FileFolderServiceImpl.InvalidTypeException;
|
import org.alfresco.repo.model.filefolder.FileFolderServiceImpl.InvalidTypeException;
|
||||||
import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser;
|
|
||||||
import org.alfresco.repo.security.permissions.AccessDeniedException;
|
import org.alfresco.repo.security.permissions.AccessDeniedException;
|
||||||
import org.alfresco.repo.webdav.WebDAVHelper;
|
import org.alfresco.repo.webdav.WebDAVHelper;
|
||||||
import org.alfresco.repo.webdav.WebDAVServlet;
|
import org.alfresco.repo.webdav.WebDAVServlet;
|
||||||
@@ -69,6 +68,7 @@ import org.alfresco.service.namespace.NamespaceService;
|
|||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
import org.alfresco.util.EqualsHelper;
|
import org.alfresco.util.EqualsHelper;
|
||||||
import org.alfresco.util.Pair;
|
import org.alfresco.util.Pair;
|
||||||
|
import org.alfresco.util.SearchLanguageConversion;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.app.servlet.DownloadContentServlet;
|
import org.alfresco.web.app.servlet.DownloadContentServlet;
|
||||||
import org.alfresco.web.app.servlet.ExternalAccessServlet;
|
import org.alfresco.web.app.servlet.ExternalAccessServlet;
|
||||||
@@ -1232,7 +1232,7 @@ public final class Utils extends StringUtils
|
|||||||
// define the query to find people by their first or last name
|
// define the query to find people by their first or last name
|
||||||
for (StringTokenizer t = new StringTokenizer(term.trim(), " "); t.hasMoreTokens(); /**/)
|
for (StringTokenizer t = new StringTokenizer(term.trim(), " "); t.hasMoreTokens(); /**/)
|
||||||
{
|
{
|
||||||
String token = AbstractLuceneQueryParser.escape(t.nextToken());
|
String token = SearchLanguageConversion.escapeLuceneQuery(t.nextToken());
|
||||||
query.append("+TYPE:\"").append(ContentModel.TYPE_PERSON).append("\" ");
|
query.append("+TYPE:\"").append(ContentModel.TYPE_PERSON).append("\" ");
|
||||||
query.append("+(@").append(NamespaceService.CONTENT_MODEL_PREFIX).append("\\:firstName:\"*");
|
query.append("+(@").append(NamespaceService.CONTENT_MODEL_PREFIX).append("\\:firstName:\"*");
|
||||||
query.append(token);
|
query.append(token);
|
||||||
|
@@ -29,7 +29,6 @@ import javax.faces.context.ResponseWriter;
|
|||||||
import javax.faces.el.ValueBinding;
|
import javax.faces.el.ValueBinding;
|
||||||
|
|
||||||
import org.alfresco.model.ContentModel;
|
import org.alfresco.model.ContentModel;
|
||||||
import org.alfresco.repo.search.impl.lucene.AbstractLuceneQueryParser;
|
|
||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.repository.NodeService;
|
import org.alfresco.service.cmr.repository.NodeService;
|
||||||
import org.alfresco.service.cmr.search.LimitBy;
|
import org.alfresco.service.cmr.search.LimitBy;
|
||||||
@@ -38,6 +37,7 @@ import org.alfresco.service.cmr.search.SearchParameters;
|
|||||||
import org.alfresco.service.cmr.search.SearchService;
|
import org.alfresco.service.cmr.search.SearchService;
|
||||||
import org.alfresco.service.namespace.NamespaceService;
|
import org.alfresco.service.namespace.NamespaceService;
|
||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
|
import org.alfresco.util.SearchLanguageConversion;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.bean.repository.Repository;
|
import org.alfresco.web.bean.repository.Repository;
|
||||||
import org.alfresco.web.ui.common.Utils;
|
import org.alfresco.web.ui.common.Utils;
|
||||||
@@ -348,7 +348,7 @@ public class UIContentSelector extends UIInput
|
|||||||
|
|
||||||
if (contains != null && contains.length() > 0)
|
if (contains != null && contains.length() > 0)
|
||||||
{
|
{
|
||||||
String safeContains = AbstractLuceneQueryParser.escape(contains.trim());
|
String safeContains = SearchLanguageConversion.escapeLuceneQuery(contains.trim());
|
||||||
query.append(" AND +@");
|
query.append(" AND +@");
|
||||||
|
|
||||||
String nameAttr = Repository.escapeQName(QName.createQName(
|
String nameAttr = Repository.escapeQName(QName.createQName(
|
||||||
|
Reference in New Issue
Block a user