Added support for result set meta data

Added size limits for result sets
Updated/improved comments

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2573 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Andrew Hind
2006-03-23 15:14:22 +00:00
parent 75ce410028
commit 57e7a4f77e
16 changed files with 705 additions and 30 deletions

View File

@@ -28,11 +28,16 @@ import java.util.Iterator;
import java.util.List;
import org.alfresco.repo.search.AbstractResultSet;
import org.alfresco.repo.search.SimpleResultSetMetaData;
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.search.LimitBy;
import org.alfresco.service.cmr.search.PermissionEvaluationMode;
import org.alfresco.service.cmr.search.ResultSetMetaData;
import org.alfresco.service.cmr.search.ResultSetRow;
import org.alfresco.service.cmr.search.SearchParameters;
public class ChildAssocRefResultSet extends AbstractResultSet
{
@@ -95,4 +100,8 @@ public class ChildAssocRefResultSet extends AbstractResultSet
return nodeService;
}
public ResultSetMetaData getResultSetMetaData()
{
return new SimpleResultSetMetaData(LimitBy.UNLIMITED, PermissionEvaluationMode.EAGER, new SearchParameters());
}
}

View File

@@ -21,19 +21,26 @@ import java.util.Iterator;
import java.util.List;
import org.alfresco.repo.search.AbstractResultSet;
import org.alfresco.repo.search.SimpleResultSetMetaData;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.Path;
import org.alfresco.service.cmr.search.LimitBy;
import org.alfresco.service.cmr.search.PermissionEvaluationMode;
import org.alfresco.service.cmr.search.ResultSet;
import org.alfresco.service.cmr.search.ResultSetMetaData;
import org.alfresco.service.cmr.search.ResultSetRow;
public class DetachedResultSet extends AbstractResultSet
{
List<ResultSetRow> rows = null;
ResultSetMetaData rsmd;
public DetachedResultSet(ResultSet resultSet, Path[] propertyPaths)
{
super(propertyPaths);
rsmd = resultSet.getResultSetMetaData();
rows = new ArrayList<ResultSetRow>(resultSet.length());
for (ResultSetRow row : resultSet)
{
@@ -66,4 +73,9 @@ public class DetachedResultSet extends AbstractResultSet
return rows.get(n).getChildAssocRef();
}
public ResultSetMetaData getResultSetMetaData()
{
return new SimpleResultSetMetaData(rsmd.getLimitedBy(), PermissionEvaluationMode.EAGER, rsmd.getSearchParameters());
}
}