Search in sources :

Example 1 with GroupQueryBuilder

use of org.opencastproject.index.service.impl.index.group.GroupQueryBuilder in project opencast by opencast.

the class AbstractSearchIndex method getByQuery.

/**
 * @param query
 *          The query to use to retrieve the groups that match the query
 * @return {@link SearchResult} collection of {@link Group} from a query.
 * @throws SearchIndexException
 *           Thrown if there is an error getting the results.
 */
public SearchResult<Group> getByQuery(GroupSearchQuery query) throws SearchIndexException {
    logger.debug("Searching index using group query '{}'", query);
    // Create the request builder
    SearchRequestBuilder requestBuilder = getSearchRequestBuilder(query, new GroupQueryBuilder(query));
    try {
        return executeQuery(query, requestBuilder, new Fn<SearchMetadataCollection, Group>() {

            @Override
            public Group apply(SearchMetadataCollection metadata) {
                try {
                    return GroupIndexUtils.toGroup(metadata);
                } catch (IOException e) {
                    return chuck(e);
                }
            }
        });
    } catch (Throwable t) {
        throw new SearchIndexException("Error querying series index", t);
    }
}
Also used : Group(org.opencastproject.index.service.impl.index.group.Group) SearchRequestBuilder(org.elasticsearch.action.search.SearchRequestBuilder) SearchMetadataCollection(org.opencastproject.matterhorn.search.impl.SearchMetadataCollection) SearchIndexException(org.opencastproject.matterhorn.search.SearchIndexException) IOException(java.io.IOException) GroupQueryBuilder(org.opencastproject.index.service.impl.index.group.GroupQueryBuilder)

Aggregations

IOException (java.io.IOException)1 SearchRequestBuilder (org.elasticsearch.action.search.SearchRequestBuilder)1 Group (org.opencastproject.index.service.impl.index.group.Group)1 GroupQueryBuilder (org.opencastproject.index.service.impl.index.group.GroupQueryBuilder)1 SearchIndexException (org.opencastproject.matterhorn.search.SearchIndexException)1 SearchMetadataCollection (org.opencastproject.matterhorn.search.impl.SearchMetadataCollection)1