mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-10-15 15:02:20 +00:00
Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud)
108039: Merged 5.0.N (5.0.3) to HEAD-BUG-FIX (5.1/Cloud) 107604: Merged V4.2-BUG-FIX (4.2.5) to 5.0.N (5.0.3) 107379: Merged DEV to V4.2-BUG-FIX (4.2.5) 100688 : MNT-13713 : row.getValue() returns null when indexing with lucene and sort is applied. - Was implemented some code for query with sorting. 107250 : MNT-13713 : row.getValue() returns null when indexing with lucene and sort is applied. - Added a test git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@108070 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 2005-2010 Alfresco Software Limited.
|
* Copyright (C) 2005-2015 Alfresco Software Limited.
|
||||||
*
|
*
|
||||||
* This file is part of Alfresco
|
* This file is part of Alfresco
|
||||||
*
|
*
|
||||||
@@ -214,6 +214,11 @@ public class SortedResultSet implements ResultSet
|
|||||||
return resultSet.getResultSetMetaData();
|
return resultSet.getResultSetMetaData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public NodeService getNodeService()
|
||||||
|
{
|
||||||
|
return nodeService;
|
||||||
|
}
|
||||||
|
|
||||||
public ResultSetRow getRow(int i)
|
public ResultSetRow getRow(int i)
|
||||||
{
|
{
|
||||||
if (i < length())
|
if (i < length())
|
||||||
|
@@ -18,11 +18,13 @@
|
|||||||
*/
|
*/
|
||||||
package org.alfresco.repo.search.results;
|
package org.alfresco.repo.search.results;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.alfresco.repo.search.AbstractResultSetRow;
|
import org.alfresco.repo.search.AbstractResultSetRow;
|
||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.search.ResultSetRow;
|
import org.alfresco.service.cmr.search.ResultSetRow;
|
||||||
|
import org.alfresco.service.namespace.QName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author andyh
|
* @author andyh
|
||||||
@@ -60,8 +62,11 @@ public class SortedResultSetRow extends AbstractResultSetRow implements ResultSe
|
|||||||
throw new UnsupportedOperationException();
|
throw new UnsupportedOperationException();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected Map<QName, Serializable> getDirectProperties()
|
||||||
|
{
|
||||||
|
SortedResultSet srs = (SortedResultSet) getResultSet();
|
||||||
|
return srs.getNodeService().getProperties(srs.getNodeRef(getIndex()));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -31,12 +31,7 @@ import org.alfresco.service.ServiceRegistry;
|
|||||||
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.repository.StoreRef;
|
import org.alfresco.service.cmr.repository.StoreRef;
|
||||||
import org.alfresco.service.cmr.search.LimitBy;
|
import org.alfresco.service.cmr.search.*;
|
||||||
import org.alfresco.service.cmr.search.PermissionEvaluationMode;
|
|
||||||
import org.alfresco.service.cmr.search.QueryConsistency;
|
|
||||||
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.cmr.security.MutableAuthenticationService;
|
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
||||||
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;
|
||||||
@@ -300,4 +295,53 @@ public class SearchServiceTest extends TestCase
|
|||||||
assertEquals(results.getResultSetMetaData().getPermissionEvaluationMode(), PermissionEvaluationMode.EAGER);
|
assertEquals(results.getResultSetMetaData().getPermissionEvaluationMode(), PermissionEvaluationMode.EAGER);
|
||||||
results.close();
|
results.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MNT-13713: row.getValue() returns null when indexing with lucene and sort is applied
|
||||||
|
public void testSearchWithSort()
|
||||||
|
{
|
||||||
|
authenticationComponent.setCurrentUser(AuthenticationUtil.getAdminUserName());
|
||||||
|
|
||||||
|
// Output with sort
|
||||||
|
// do some search and display the values sorted
|
||||||
|
SearchParameters sp = new SearchParameters();
|
||||||
|
sp.addStore(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE);
|
||||||
|
sp.setLanguage(SearchService.LANGUAGE_LUCENE);
|
||||||
|
sp.addSort("@cm:name", true);
|
||||||
|
sp.setQuery("TYPE:\"cm:content\"");
|
||||||
|
|
||||||
|
ResultSet rs = pubSearchService.query(sp);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
for (ResultSetRow row : rs)
|
||||||
|
{
|
||||||
|
assertFalse(null == row.getValue(ContentModel.PROP_NAME));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
rs.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Output without sort
|
||||||
|
// do some search and display the values sorted
|
||||||
|
sp = new SearchParameters();
|
||||||
|
sp.addStore(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE);
|
||||||
|
sp.setLanguage(SearchService.LANGUAGE_LUCENE);
|
||||||
|
sp.setQuery("TYPE:\"cm:content\"");
|
||||||
|
|
||||||
|
rs = pubSearchService.query(sp);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
for (ResultSetRow row : rs)
|
||||||
|
{
|
||||||
|
assertFalse(null == row.getValue(ContentModel.PROP_NAME));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
rs.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user