/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE file at the root of the source * tree and available online at * * https://github.com/keeps/roda */ package org.roda.core.data.v2.index; import org.roda.core.data.v2.index.facet.Facets; import org.roda.core.data.v2.index.filter.Filter; import org.roda.core.data.v2.index.sort.Sorter; import org.roda.core.data.v2.index.sublist.Sublist; /** * A request to a find operation. * * @author Rui Castro <rui.castro@gmail.com> */ public class FindRequest extends CountRequest { private static final long serialVersionUID = 5997470558754294987L; /** Sorter. */ public Sorter sorter; /** Sublist (paging). */ public Sublist sublist; /** Facets to return. */ public Facets facets; /** For CSV results, export only facets? */ public boolean exportFacets; /** The filename for exported CSV. */ public String filename; /** * Constructor. */ public FindRequest() { this(null, new Filter(), new Sorter(), new Sublist(), new Facets(), true); } /** * Constructor. * * @param classToReturn * Class name of resources to return. * @param filter * Filter. * @param sorter * Sorter. * @param sublist * Sublist (paging). * @param facets * Facets to return. * @param onlyActive * Return only active resources? */ public FindRequest(final String classToReturn, final Filter filter, final Sorter sorter, final Sublist sublist, final Facets facets, final boolean onlyActive) { this(classToReturn, filter, sorter, sublist, facets, onlyActive, false, "export.csv"); } /** * Constructor. * * @param classToReturn * Class name of resources to return. * @param filter * Filter. * @param sorter * Sorter. * @param sublist * Sublist (paging). * @param facets * Facets to return. * @param onlyActive * Return only active resources? * @param exportFacets * for CSV results, export only facets? * @param filename * the filename for exported CSV. */ public FindRequest(final String classToReturn, final Filter filter, final Sorter sorter, final Sublist sublist, final Facets facets, final boolean onlyActive, final boolean exportFacets, final String filename) { super(classToReturn, filter, onlyActive); this.sorter = sorter; this.sublist = sublist; this.facets = facets; this.exportFacets = exportFacets; this.filename = filename; } }