Examples of BaseQueryBuilder


Examples of org.elasticsearch.index.query.BaseQueryBuilder

      if (null == lessThanId) {// slower version, be slightly more thorough...
        sb.append(DocumentPojoIndexMap.globalDocumentIndexCollection_).append(",");
      }
      sb.append(DocumentPojoIndexMap.manyGeoDocumentIndexCollection_).append(",docs_").append(communityId).append('/').append(DocumentPojoIndexMap.documentType_);
      ElasticSearchManager indexManager = IndexManager.getIndex(sb.toString());
      BaseQueryBuilder soloOrCombinedQuery = QueryBuilders.termQuery(DocumentPojo.sourceKey_, sourceKey);
      if (null != lessThanId) {
        //(_id isn't indexed - _uid is and == _type + "#" + _id)
        soloOrCombinedQuery = QueryBuilders.boolQuery().must(soloOrCombinedQuery).
                    must(QueryBuilders.rangeQuery("_uid").lte("document_index#" + lessThanId.toString()));
       
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

    escapedterm = sb.toString();     

    // Create the search query

    SearchRequestBuilder searchOptions = gazIndex.getSearchOptions();
    BaseQueryBuilder queryObj1 = QueryBuilders.queryString(escapedterm).defaultField(EntityFeaturePojoIndexMap.Mapping.RootObject.RootProperties.alias_pri_);

    String[] communityIdStrs = SocialUtils.getCommunityIds(userIdStr, communityIdStrList);
    BaseQueryBuilder queryObj2 = QueryBuilders.boolQuery().should(QueryBuilders.termsQuery(EntityFeaturePojo.communityId_, communityIdStrs));

    BaseQueryBuilder queryObj = QueryBuilders.boolQuery().must(queryObj1).must(queryObj2);

    searchOptions.addSort(EntityFeaturePojo.doccount_, SortOrder.DESC);
    searchOptions.addFields(EntityFeaturePojo.disambiguated_name_, EntityFeaturePojo.doccount_,
        EntityFeaturePojo.type_, EntityFeaturePojo.dimension_);
    if (bIncludeGeo) {
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

 
    ElasticSearchManager indexMgr = getIndexManager(communityIdStrs);
    SearchRequestBuilder searchSettings = indexMgr.getSearchOptions();

    StringBuffer querySummary = new StringBuffer();
    BaseQueryBuilder queryObj = null;
    InternalTempFilterInfo tempFilterInfo = null;
    try {
      queryObj = getBaseQuery(query, communityIdStrs, communityIdStrList, userIdStr, querySummary);
      if (null == queryObj) { // only occurs if has 1 element with ftext starting $cache:
        return getSavedQueryInstead(query.qt.get(0).ftext.substring(7), communityIdStrs, query); // (step over cache preamble)
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

        _aliasLookup = aliasManager.getAliasLookupTable(null, communityIdStrs, null, userIdStr);
      }
    }
    // (end initialize index)
   
    BaseQueryBuilder queryObj = null;
   
  // 0.1] Input data (/filtering)

    if (null != query.input.name) { // This is actually a share id visible to this user
      query = getStoredQueryArtefact(query.input.name, query, userIdStr);
    }
   
  // 0.3] Query terms
   
    int nQueryElements = 0;
   
    if (null != query.qt) {
      nQueryElements = query.qt.size();
     
      if ((1 == nQueryElements) && (null != query.qt.get(0).ftext) && (query.qt.get(0).ftext.startsWith("$cache:"))) {
        return null;
      }
      if (nQueryElements > 0) { // NORMAL CASE
       
        this.handleEntityExpansion(DbManager.getFeature().getEntity(), query.qt, userIdStr, communityIdStrList);
       
        BaseQueryBuilder queryElements[] = new BaseQueryBuilder[nQueryElements];
        StringBuffer sQueryElements[] = new StringBuffer[nQueryElements];
        for (int i = 0; i < nQueryElements; ++i) {
          _extraFullTextTerms = null
         
          queryElements[i] = this.parseQueryTerm(query.qt.get(i), (sQueryElements[i] = new StringBuffer()));
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

  // (Not needed any more, but kept here for illustrative purposes)
  //private static Pattern _luceneExactPattern = Pattern.compile("([\"+~*?:|&(){}\\[\\]\\^\\!\\-\\\\ ])"); 
  private BaseQueryBuilder parseQueryTerm(AdvancedQueryPojo.QueryTermPojo qt, StringBuffer sQueryTerm) {
   
    BaseQueryBuilder term = null;
    BoolQueryBuilder boolTerm = null;
   
    sQueryTerm.setLength(0);
    sQueryTerm.append('(');

  // 1.1] Free text (Lucene) 
   
    boolean nonEmpty = false;
   
    if (null != qt.ftext) { // NOTE term building code below depends on this being 1st clause
      nonEmpty = true;
      if (qt.ftext.startsWith("$cache")) { // currently not supported
        throw new RuntimeException("Don't currently support nested cached queries - coming soon.");
      }
     
      sQueryTerm.append('(');
      if (null != qt.metadataField) {
        sQueryTerm.append(qt.metadataField).append(':');       
      }
      sQueryTerm.append(qt.ftext);     
      sQueryTerm.append(')');
      if (null != qt.metadataField) { // Metadata only
        term = QueryBuilders.queryString(qt.ftext).field(qt.metadataField);
      }
      else {
        term = QueryBuilders.queryString(qt.ftext).field("_all").field(DocumentPojo.fullText_);       
      }
      if (null == _scoringParams.adjustAggregateSig) { // auto-decide .. if ftext is set and is non-trivial
        if (qt.ftext.contains(" ")) {
          _scoringParams.adjustAggregateSig = true;
        }
      }
    }//TESTED (logic0)
   
  // 1.2] Exact text 
   
    if (null != qt.etext) { // NOTE term building code below depends on this being 2nd clause
      nonEmpty = true;
      BaseQueryBuilder termQ = null;
      if (sQueryTerm.length() > 1) {
        sQueryTerm.append(" AND ");
      }
      if (qt.etext.equals("*")) { // Special case
        termQ = QueryBuilders.matchAllQuery();
      }
      else { // Normal query
        if (null != qt.metadataField) { // Metadata only
          termQ = CrossVersionQueryBuilders.matchPhraseQuery(qt.metadataField, qt.etext);
        }
        else { // Normal query
          termQ = QueryBuilders.boolQuery().
            should(CrossVersionQueryBuilders.matchPhraseQuery("_all", qt.etext)).
            should(CrossVersionQueryBuilders.matchPhraseQuery(DocumentPojo.fullText_, qt.etext));
        }
      }
      sQueryTerm.append('(');
      if (null != qt.metadataField) {
        sQueryTerm.append(qt.metadataField).append(':');       
      }
      sQueryTerm.append('"');
      sQueryTerm.append(qt.etext);     
      sQueryTerm.append("\")");
      if (null == term) {
        term = termQ;
      }
      else {
        term = (boolTerm = QueryBuilders.boolQuery().must(term).must(termQ));
      }
    }//TESTED (logic1)
   
    // Here's where it starts getting interesting:
 
  // 1.3] Entity  
   
    if ((null != qt.entity) || (null != qt.entityValue) || ((null == qt.assoc) && (null != qt.sentiment))) { // (if no association specified then sentiment applies to entities)
      nonEmpty = true;
      if (sQueryTerm.length() > 1) {
        sQueryTerm.append(" AND ");
      }
      sQueryTerm.append('(');
     
      BaseQueryBuilder termQ = QueryBuilders.nestedQuery(DocumentPojo.entities_, this.parseEntityTerm(qt, sQueryTerm, EntityPojo.docQuery_index_)).scoreMode("max").boost((float)1.0);
     
      if (null == term) {
        term = termQ;
      }
      else if (null == boolTerm) {
        term = (boolTerm = QueryBuilders.boolQuery().must(term).must(termQ));
      }
      else {
        term = (boolTerm = boolTerm.must(termQ));
      }
      sQueryTerm.append(')');
     
    }//TESTED: logic2* TOTEST: alias expansion code (logic3)
       
  // 1.4] Dates
   
    if (null != qt.time) {
      nonEmpty = true;
      if (sQueryTerm.length() > 1) {
        sQueryTerm.append(" AND ");
      }
      sQueryTerm.append('(');     
     
      BaseQueryBuilder termQ = this.parseDateTerm(qt.time, sQueryTerm, (null != qt.entityOpt) && qt.entityOpt.lockDate);
     
      if (null == term) {
        term = termQ;
      }
      else if (null == boolTerm) {
        term = (boolTerm = QueryBuilders.boolQuery().must(term).must(termQ));
      }
      else {
        term = (boolTerm = boolTerm.must(termQ));
      }
      sQueryTerm.append(')');
     
    }//TESTED (logic5-10)

  // 1.5] Geo 
   
    if (null != qt.geo)
    {
      nonEmpty = true;
      if (sQueryTerm.length() > 1)
      {
        sQueryTerm.append(" AND ");
      }
      sQueryTerm.append('(');
     
      BaseQueryBuilder termQ = this.parseGeoTerm(qt.geo, sQueryTerm, GeoParseField.ALL);
      if (null != termQ)
      {
        if (null == term)
        {
          term = termQ;
        }
        else if (null == boolTerm)
        {
          term = (boolTerm = QueryBuilders.boolQuery().must(term).must(termQ));
        }
        else
        {
          term = (boolTerm = boolTerm.must(termQ));
        }       
      }
     
      sQueryTerm.append(')');         
    } // (end geo)
   
    if (null == qt.assoc) qt.assoc = qt.event;
      //(continue to support the old "event" name for another release)
    if (null != qt.assoc) {
      nonEmpty = true;
      if (sQueryTerm.length() > 1) {
        sQueryTerm.append(" AND ");
      }
      sQueryTerm.append('(');
     
      BaseQueryBuilder termQ = QueryBuilders.nestedQuery(DocumentPojo.associations_, this.parseAssociationTerm(qt.assoc, qt.sentiment, sQueryTerm));
      if (null != termQ) {
        if (null == term) {
          term = termQ;
        }
        else if (null == boolTerm) {
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

 
  // 1.2.1] Entity term parsing
 
  BaseQueryBuilder parseEntityTerm(AdvancedQueryPojo.QueryTermPojo qt, StringBuffer sQueryTerm, String sFieldName)
  {
    BaseQueryBuilder termQ = null;
   
    // 1.3a] Entity decomposed 
   
    if (null != qt.entityValue)
    {     
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

  {
    return parseDateTerm(time, sQueryTerm, DocumentPojo.publishedDate_, lockMaxToNow);
  }
  private BaseQueryBuilder parseDateTerm(AdvancedQueryPojo.QueryTermPojo.TimeTermPojo time, StringBuffer sQueryTerm, String sFieldName, boolean lockMaxToNow)
  {
    BaseQueryBuilder termQ = null;
    long nMinTime = 0L;
    long nMaxTime = _nNow;
    Interval interval = parseMinMaxDates(time, nMinTime, nMaxTime, lockMaxToNow);
    nMinTime = interval.getStartMillis();
    nMaxTime = interval.getEndMillis();
View Full Code Here

Examples of org.elasticsearch.index.query.BaseQueryBuilder

    qt1.ftext = "ftext"; qt1.etext = "etext +test";
    AdvancedQueryPojo.QueryTermPojo qt2 = new AdvancedQueryPojo.QueryTermPojo();
    qt2.etext = "etext test"; qt2.entity = "entity:type";
   
    StringBuffer result = new StringBuffer();
    BaseQueryBuilder resJson = null;
   
    // "logic0":
    resJson = this.parseQueryTerm(qt0, result);
    qtTerms.add(resJson); qtReadTerms.add(new StringBuffer(result.toString()));
    String logic0a = new Gson().toJson(resJson);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.