@Override public DiscoverResult search(Context context, DSpaceObject dso, DiscoverQuery query) throws SearchServiceException { return search(context, dso, query, false); }
@Override public DiscoverResult search(Context context, DiscoverQuery query) throws SearchServiceException { return search(context, query, false); }
public List<DSpaceObject> search(Context context, String query, int offset, int max, String... filterquery) { return search(context, query, null, true, offset, max, filterquery); }
public List<DSpaceObject> search(Context context, String query, int offset, int max, String... filterquery) { return search(context, query, null, true, offset, max, filterquery); }
@Override public String calculateExtremeValue(Context context, String valueField, String sortField, DiscoverQuery.SORT_ORDER sortOrder) throws SearchServiceException { DiscoverQuery maxQuery = new DiscoverQuery(); maxQuery.setMaxResults(1); //Set our query to anything that has this value maxQuery.addFieldPresentQueries(valueField); //Set sorting so our last value will appear on top maxQuery.setSortField(sortField, sortOrder); maxQuery.addSearchField(valueField); DiscoverResult maxResult = this.search(context,maxQuery); if (0 < maxResult.getDspaceObjects().size()) { List<DiscoverResult.SearchDocument> searchDocuments = maxResult .getSearchDocument(maxResult.getDspaceObjects().get(0)); if (0 < searchDocuments.size() && 0 < searchDocuments.get(0).getSearchFieldValues (valueField).size()) { return searchDocuments.get(0).getSearchFieldValues(valueField).get(0); } } return null; } }
public DiscoverResult search(Context context, DSpaceObject dso, DiscoverQuery discoveryQuery) throws SearchServiceException { if(dso != null){ if (dso instanceof Community) { discoveryQuery.addFilterQueries("location:m" + dso.getID()); } else if (dso instanceof Collection) { discoveryQuery.addFilterQueries("location:l" + dso.getID()); } else if (dso instanceof Item){ discoveryQuery.addFilterQueries("handle:" + dso.getHandle()); } } return search(context, discoveryQuery); }
@Override public DiscoverResult search(Context context, DSpaceObject dso, DiscoverQuery discoveryQuery, boolean includeUnDiscoverable) throws SearchServiceException { if (dso != null) { if (dso instanceof Community) { discoveryQuery.addFilterQueries("location:m" + dso.getID()); } else if (dso instanceof Collection) { discoveryQuery.addFilterQueries("location:l" + dso.getID()); } else if (dso instanceof Item) { discoveryQuery.addFilterQueries(HANDLE_FIELD + ":" + dso.getHandle()); } } return search(context, discoveryQuery, includeUnDiscoverable); }