List of usage examples for org.springframework.data.elasticsearch.core.query NativeSearchQueryBuilder NativeSearchQueryBuilder
NativeSearchQueryBuilder
From source file:io.curly.bloodhound.query.search.ElasticQueryBuilder.java
public QueryBuilder build(final String query) { final MultiValueMap<String, String> valueMap = transpiler.execute(query); NativeSearchQueryBuilder builder = new NativeSearchQueryBuilder(); if (valueMap.containsKey("text")) { builder.withQuery(new MultiMatchQueryBuilder(valueMap.get("text").stream().collect(joining()), "description", CATEGORY, LANGUAGES, TAGS)); } else {//from w ww . j a va2s .c o m if (valueMap.containsKey(CATEGORY)) { builder.withQuery( new MultiMatchQueryBuilder(valueMap.get(CATEGORY).stream().collect(joining()), CATEGORY)); } else if (valueMap.containsKey(LANGUAGES)) { builder.withQuery( new MultiMatchQueryBuilder(valueMap.get(LANGUAGES).stream().collect(joining()), LANGUAGES)); } else if (valueMap.containsKey(TAGS)) { builder.withQuery(new MultiMatchQueryBuilder(valueMap.get(TAGS).stream().collect(joining()), TAGS)); } } return builder.build().getQuery(); }
From source file:edu.usc.lunchnlearn.elasticsearch.dao.es.MultiTypeSearchImpl.java
@Override public Page<BaseItem> findAll(Pageable pageable) { SearchQuery searchQuery = new NativeSearchQueryBuilder().withPageable(pageable).withIndices(indexName) .withTypes(typeNames).build(); return elasticsearchTemplate.queryForPage(searchQuery, BaseItem.class); }
From source file:edu.usc.lunchnlearn.elasticsearch.dao.es.MultiTypeSearchImpl.java
@Override public Page<BaseItem> findAll(String searchString, Pageable pageable) { SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(queryStringQuery(searchString)) .withPageable(pageable).withIndices(indexName).withTypes(typeNames).build(); return elasticsearchTemplate.queryForPage(searchQuery, BaseItem.class); }
From source file:edu.usc.lunchnlearn.elasticsearch.dao.es.MultiTypeSearchImpl.java
@Override public List<BaseItem> findByItemId(String itemId) { SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(matchQuery("id", itemId)) .withIndices(indexName).withTypes(typeNames).build(); return elasticsearchTemplate.queryForList(searchQuery, BaseItem.class); }
From source file:org.ppollack.symphony.faqbot.elasticsearch.FaqbotQuestionDao.java
@Override public IPage<FaqbotQuestion> search(String query) { SearchQuery searchQuery = new NativeSearchQueryBuilder() .withQuery(QueryBuilders.multiMatchQuery(query, "faqtext")).build(); Page<FaqbotQuestionElasticsearch> page = elasticsearchTemplate.queryForPage(searchQuery, FaqbotQuestionElasticsearch.class); if (page == null) { LOG.warn("spring data elasticsearch returned a null page"); return null; }//from w ww. ja v a 2s. c om return new FaqbotQuestionSpringDataPage(page); }
From source file:com.oneops.search.msg.processor.NotificationMessageProcessor.java
/** * Update ops notifications to CIs/* ww w . j a va 2 s . c o m*/ * * @param notificationMsg notification message to process */ private void processNotificationMsg(CmsNotificationSearch notificationMsg) { String id = String.valueOf(notificationMsg.getCmsId()); SearchQuery searchQuery = new NativeSearchQueryBuilder().withIndices(indexer.getIndexName()).withTypes("ci") .withQuery(queryStringQuery(id).field("ciId")).build(); List<CmsCISearch> ciList = indexer.getTemplate().queryForList(searchQuery, CmsCISearch.class); if (!ciList.isEmpty()) { CmsCISearch ciSearch = ciList.get(0); if ("bom.Compute".equals(ciSearch.getCiClassName())) { String hypervisor = ciSearch.getCiAttributes().get("hypervisor"); if (hypervisor != null) { notificationMsg.setHypervisor(hypervisor); } } ciSearch.setOps(notificationMsg); indexer.index(id, "ci", GSON_ES.toJson(ciSearch)); logger.info("updated ops notification for ci id::" + id); } else { logger.warn("ci record not found for id::" + id); } }
From source file:com.github.lothar.security.acl.elasticsearch.repository.AclElasticsearchRepository.java
@Override public T findOne(ID id) { SearchQuery query = new NativeSearchQueryBuilder() // .withQuery(and(idsQuery().ids(stringIdRepresentation(id)), aclFilter())) // .build();/* ww w . ja va 2s . c o m*/ List<T> list = elasticsearchOperations.queryForList(query, getEntityClass()); return list.isEmpty() ? null : list.get(0); }
From source file:example.springdata.elasticsearch.ElasticsearchOperationsTest.java
@Test public void termFacet() { String termField = "keywords"; String facetName = "all-keywords"; FacetedPage<Conference> firstPage = operations.queryForPage(// new NativeSearchQueryBuilder().// withQuery(matchAllQuery()).// withFacet(new TermFacetRequestBuilder(facetName).// allTerms().// descCount().// fields(termField).build()) .// build(),// w ww . j a va2 s .c o m Conference.class); TermResult facet = (TermResult) firstPage.getFacet(facetName); assertThat(facet.getTerms(), hasSize(8)); facet.getTerms().forEach(term -> { assertThat(term.getTerm(), isOneOf("java", "spring", "scala", "play", "elasticsearch", "kibana", "cloud", "aws")); }); }
From source file:com.github.lothar.security.acl.elasticsearch.repository.AclElasticsearchRepository.java
@Override public Page<T> findAll(Pageable pageable) { SearchQuery query = new NativeSearchQueryBuilder() // .withQuery(and(matchAllQuery(), aclFilter())) // .withPageable(pageable) // .build();//www. ja v a 2 s. c o m return elasticsearchOperations.queryForPage(query, getEntityClass()); }
From source file:com.company.project.data.elasticsearch.service.UserESService.java
public void crud() { //elasticsearchTemplate.deleteIndex("xxx"); //elasticsearchTemplate.createIndex("xxx"); elasticsearchTemplate.deleteIndex(User.class); elasticsearchTemplate.createIndex(User.class); elasticsearchTemplate.putMapping(User.class); elasticsearchTemplate.refresh(User.class, true); IndexQuery userIndex = new IndexQuery(); User user = new User(); user.setId("1"); user.setName("user1"); userIndex.setId("1"); userIndex.setObject(user);/*from w ww . j a v a 2 s . c om*/ //elasticsearchTemplate.index(userIndex); //elasticsearchTemplate.index(new IndexQueryBuilder().withObject(user).build()); IndexQuery indexQuery2 = new IndexQueryBuilder().withId(user.getId()).withIndexName("xuseridx") .withObject(user).build(); elasticsearchTemplate.bulkIndex(Arrays.asList(indexQuery2)); // userIndex = new IndexQuery(); // user = new User(); // user.setId("2"); // user.setName("user2"); // userIndex.setId("2"); // userIndex.setObject(user); // elasticsearchTemplate.index(userIndex); // // userIndex = new IndexQuery(); // user = new User(); // user.setId("3"); // user.setName("user3"); // userIndex.setId("3"); // userIndex.setObject(user); // elasticsearchTemplate.index(userIndex); elasticsearchTemplate.refresh(User.class, true); //QueryBuilder builder = nestedQuery("xuseridx", boolQuery().must(termQuery("xusertype.name", "user2")).must(termQuery("xusertype.name", "user3"))); //QueryBuilder builder = nestedQuery("xuseridx", boolQuery().must(fieldQuery("name", "user2")).must(fieldQuery("name", "user3"))); QueryBuilder builder = nestedQuery("xuseridx", boolQuery().must(termQuery("xusertype.name", "user2")).must(termQuery("xusertype.name", "user3"))); //SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(builder).build(); SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(matchAllQuery()).withIndices("xuseridx") .build(); List persons = elasticsearchTemplate.queryForList(searchQuery, User.class); System.out.println("People size:" + (persons != null ? persons.size() : null)); }