private Query handleItems(QueryShardContext context, MoreLikeThisQuery mltQuery, Item[] likeItems, Item[] unlikeItems, boolean include, List<String> moreLikeFields, boolean useDefaultField) throws IOException { // set default index, type and fields if not specified for (Item item : likeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } for (Item item : unlikeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } // fetching the items with multi-termvectors API MultiTermVectorsResponse likeItemsResponse = fetchResponse(context.getClient(), likeItems); // getting the Fields for liked items mltQuery.setLikeFields(getFieldsFor(likeItemsResponse)); // getting the Fields for unliked items if (unlikeItems.length > 0) { MultiTermVectorsResponse unlikeItemsResponse = fetchResponse(context.getClient(), unlikeItems); org.apache.lucene.index.Fields[] unlikeFields = getFieldsFor(unlikeItemsResponse); if (unlikeFields.length > 0) { mltQuery.setUnlikeFields(unlikeFields); } } BooleanQuery.Builder boolQuery = new BooleanQuery.Builder(); boolQuery.add(mltQuery, BooleanClause.Occur.SHOULD); // exclude the items from the search if (!include) { handleExclude(boolQuery, likeItems, context); } return boolQuery.build(); }
Map<String, String> results = new HashMap<>(); ImmutableOpenMap<String, ImmutableOpenMap<String, MappingMetaData>> mappings = context.getClient().admin().indices().prepareGetMappings().get().getMappings(); for (ObjectCursor<String> index : mappings.keys()) { ImmutableOpenMap<String, MappingMetaData> types = mappings.get(index.value);
Map<String, String> results = new HashMap<>(); ImmutableOpenMap<String, ImmutableOpenMap<String, MappingMetaData>> mappings = context.getClient().admin().indices().prepareGetMappings().get().getMappings(); for (ObjectCursor<String> index : mappings.keys()) { ImmutableOpenMap<String, MappingMetaData> types = mappings.get(index.value);
private Query handleItems(QueryShardContext context, MoreLikeThisQuery mltQuery, Item[] likeItems, Item[] unlikeItems, boolean include, List<String> moreLikeFields, boolean useDefaultField) throws IOException { // set default index, type and fields if not specified for (Item item : likeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } for (Item item : unlikeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } // fetching the items with multi-termvectors API MultiTermVectorsResponse likeItemsResponse = fetchResponse(context.getClient(), likeItems); // getting the Fields for liked items mltQuery.setLikeFields(getFieldsFor(likeItemsResponse)); // getting the Fields for unliked items if (unlikeItems.length > 0) { MultiTermVectorsResponse unlikeItemsResponse = fetchResponse(context.getClient(), unlikeItems); org.apache.lucene.index.Fields[] unlikeFields = getFieldsFor(unlikeItemsResponse); if (unlikeFields.length > 0) { mltQuery.setUnlikeFields(unlikeFields); } } BooleanQuery.Builder boolQuery = new BooleanQuery.Builder(); boolQuery.add(mltQuery, BooleanClause.Occur.SHOULD); // exclude the items from the search if (!include) { handleExclude(boolQuery, likeItems, context); } return boolQuery.build(); }
private Query handleItems(QueryShardContext context, MoreLikeThisQuery mltQuery, Item[] likeItems, Item[] unlikeItems, boolean include, List<String> moreLikeFields, boolean useDefaultField) throws IOException { // set default index, type and fields if not specified for (Item item : likeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } for (Item item : unlikeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } // fetching the items with multi-termvectors API MultiTermVectorsResponse likeItemsResponse = fetchResponse(context.getClient(), likeItems); // getting the Fields for liked items mltQuery.setLikeFields(getFieldsFor(likeItemsResponse)); // getting the Fields for unliked items if (unlikeItems.length > 0) { MultiTermVectorsResponse unlikeItemsResponse = fetchResponse(context.getClient(), unlikeItems); org.apache.lucene.index.Fields[] unlikeFields = getFieldsFor(unlikeItemsResponse); if (unlikeFields.length > 0) { mltQuery.setUnlikeFields(unlikeFields); } } BooleanQuery.Builder boolQuery = new BooleanQuery.Builder(); boolQuery.add(mltQuery, BooleanClause.Occur.SHOULD); // exclude the items from the search if (!include) { handleExclude(boolQuery, likeItems, context); } return boolQuery.build(); }
private Query handleItems(QueryShardContext context, MoreLikeThisQuery mltQuery, Item[] likeItems, Item[] unlikeItems, boolean include, List<String> moreLikeFields, boolean useDefaultField) throws IOException { // set default index, type and fields if not specified for (Item item : likeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } for (Item item : unlikeItems) { setDefaultIndexTypeFields(context, item, moreLikeFields, useDefaultField); } // fetching the items with multi-termvectors API MultiTermVectorsResponse likeItemsResponse = fetchResponse(context.getClient(), likeItems); // getting the Fields for liked items mltQuery.setLikeFields(getFieldsFor(likeItemsResponse)); // getting the Fields for unliked items if (unlikeItems.length > 0) { MultiTermVectorsResponse unlikeItemsResponse = fetchResponse(context.getClient(), unlikeItems); org.apache.lucene.index.Fields[] unlikeFields = getFieldsFor(unlikeItemsResponse); if (unlikeFields.length > 0) { mltQuery.setUnlikeFields(unlikeFields); } } BooleanQuery.Builder boolQuery = new BooleanQuery.Builder(); boolQuery.add(mltQuery, BooleanClause.Occur.SHOULD); // exclude the items from the search if (!include) { handleExclude(boolQuery, likeItems, context); } return boolQuery.build(); }