/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.discovery.configuration; import org.springframework.beans.factory.annotation.Required; import java.util.ArrayList; import java.util.List; /** * @author Kevin Van de Velde (kevin at atmire dot com) */ public class DiscoveryConfiguration { /** The configuration for the sidebar facets **/ private List<SidebarFacetConfiguration> sidebarFacets = new ArrayList<SidebarFacetConfiguration>(); /** The default filter queries which will be applied to any search & the recent submissions **/ private List<String> defaultFilterQueries; /** Configuration object for the recent submissions **/ private DiscoveryRecentSubmissionsConfiguration recentSubmissionConfiguration; /** The search filters which can be selected on the search page**/ private List<DiscoverySearchFilter> searchFilters = new ArrayList<DiscoverySearchFilter>(); private DiscoverySortConfiguration searchSortConfiguration; private String id; public String getId() { return id; } public void setId(String id) { this.id = id; } public List<SidebarFacetConfiguration> getSidebarFacets() { return sidebarFacets; } @Required public void setSidebarFacets(List<SidebarFacetConfiguration> sidebarFacets) { this.sidebarFacets = sidebarFacets; } public List<String> getDefaultFilterQueries() { //Since default filter queries are not mandatory we will return an empty list if(defaultFilterQueries == null){ return new ArrayList<String>(); }else{ return defaultFilterQueries; } } public void setDefaultFilterQueries(List<String> defaultFilterQueries) { this.defaultFilterQueries = defaultFilterQueries; } public DiscoveryRecentSubmissionsConfiguration getRecentSubmissionConfiguration() { return recentSubmissionConfiguration; } public void setRecentSubmissionConfiguration(DiscoveryRecentSubmissionsConfiguration recentSubmissionConfiguration) { this.recentSubmissionConfiguration = recentSubmissionConfiguration; } public List<DiscoverySearchFilter> getSearchFilters() { return searchFilters; } @Required public void setSearchFilters(List<DiscoverySearchFilter> searchFilters) { this.searchFilters = searchFilters; } public DiscoverySortConfiguration getSearchSortConfiguration() { return searchSortConfiguration; } @Required public void setSearchSortConfiguration(DiscoverySortConfiguration searchSortConfiguration) { this.searchSortConfiguration = searchSortConfiguration; } }