Lucene 6有效载荷

时间:2017-11-16 00:45:57

标签: lucene payload

我正在尝试使用Lucene 6中的有效负载,但我遇到了麻烦。我们的想法是索引有效负载并在CustomScoreQuery中使用它们来检查查询字词的有效负载是否与文档术语的有效负载匹配。 这是我的有效载荷过滤器:

 //WRITE 1 

 storageref.putfile(image1).addOnCompleteListener(new OnCompleteListener{

     //get link of this write and do WRITE 2 

      //WRITE 2 

       storage ref.putfile(image2).addOnCompleteListener(new OnCompleteListener{

          //get the link of this write and do WRITE 3

         // WRITE 3 
           Map links=new HashMap();
           links.put("image1", link1);
           links.put("image2", link2);  
           databaseref.child("images").setValue(links).addOnCompleteListener(new OnCompleteListener{

             //show a message

        });

  });
  });

似乎是在添加有效负载,但是当我尝试访问CustomScoreQuery中的有效负载时,它只是保持返回null。

@Override
public final boolean incrementToken() throws IOException {
    if (!this.input.incrementToken()) {
        return false;
    }
    // get the current token
    final char[] token = Arrays.copyOfRange(this.termAtt.buffer(), 0, this.termAtt.length());
    String stoken = String.valueOf(token);
    String[] parts = stoken.split(Constants.PAYLOAD_DELIMITER);
    if (parts.length > 1 && parts.length == 2){
        termAtt.setLength(parts[0].length());
        // the rest is the payload
        BytesRef br = new BytesRef(parts[1]);
        System.out.println(br);
        payloadAtt.setPayload(br);
    }else if (parts.length > 1){
        // skip
    }else{
        // no payload here
        payloadAtt.setPayload(null);
    }
    return true;
}

对于我的两个测试,它一直声明负载为空。有什么建议或帮助吗?

0 个答案:

没有答案