Class ScoreScript

java.lang.Object
org.elasticsearch.script.ScoreScript

public abstract class ScoreScript
extends java.lang.Object
A script used for adjusting the score on a per document basis.
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static class  ScoreScript.ExplanationHolder
    A helper to take in an explanation from a script and turn it into an Explanation
    static interface  ScoreScript.Factory
    A factory to construct stateful ScoreScript factories for a specific index.
    static interface  ScoreScript.LeafFactory
    A factory to construct ScoreScript instances.
  • Field Summary

    Fields
    Modifier and Type Field Description
    static ScriptContext<ScoreScript.Factory> CONTEXT  
    static java.lang.String[] PARAMETERS  
  • Constructor Summary

    Constructors
    Constructor Description
    ScoreScript​(java.util.Map<java.lang.String,​java.lang.Object> params, SearchLookup lookup, org.apache.lucene.index.LeafReaderContext leafContext)  
  • Method Summary

    Modifier and Type Method Description
    int _getDocBaseId()
    Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
    int _getDocId()
    Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
    java.lang.String _getIndex()
    Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
    Version _getIndexVersion()
    Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
    int _getShardId()
    Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
    void _setIndexName​(java.lang.String indexName)
    Starting a name with underscore, so that the user cannot access this function directly through a script
    void _setIndexVersion​(Version indexVersion)
    Starting a name with underscore, so that the user cannot access this function directly through a script
    void _setShard​(int shardId)
    Starting a name with underscore, so that the user cannot access this function directly through a script
    abstract double execute​(ScoreScript.ExplanationHolder explanation)  
    double get_score()
    Accessed as _score in the painless script
    java.util.Map<java.lang.String,​ScriptDocValues<?>> getDoc()
    The doc lookup for the Lucene segment this script was created for.
    java.util.Map<java.lang.String,​java.lang.Object> getParams()
    Return the parameters for this script.
    void setDocument​(int docid)
    Set the current document to run the script on next.
    void setScorer​(org.apache.lucene.search.Scorable scorer)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • ScoreScript

      public ScoreScript​(java.util.Map<java.lang.String,​java.lang.Object> params, SearchLookup lookup, org.apache.lucene.index.LeafReaderContext leafContext)
  • Method Details

    • execute

      public abstract double execute​(ScoreScript.ExplanationHolder explanation)
    • getParams

      public java.util.Map<java.lang.String,​java.lang.Object> getParams()
      Return the parameters for this script.
    • getDoc

      public java.util.Map<java.lang.String,​ScriptDocValues<?>> getDoc()
      The doc lookup for the Lucene segment this script was created for.
    • setDocument

      public void setDocument​(int docid)
      Set the current document to run the script on next.
    • setScorer

      public void setScorer​(org.apache.lucene.search.Scorable scorer)
    • get_score

      public double get_score()
      Accessed as _score in the painless script
      Returns:
      the score of the inner query
    • _getDocId

      public int _getDocId()
      Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
      Returns:
      the internal document ID
    • _getDocBaseId

      public int _getDocBaseId()
      Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
      Returns:
      the internal document ID with the base
    • _getShardId

      public int _getShardId()
      Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
      Returns:
      shard id or throws an exception if shard is not set up for this script instance
    • _getIndex

      public java.lang.String _getIndex()
      Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
      Returns:
      index name or throws an exception if the index name is not set up for this script instance
    • _getIndexVersion

      public Version _getIndexVersion()
      Starting a name with underscore, so that the user cannot access this function directly through a script It is only used within predefined painless functions.
      Returns:
      index version or throws an exception if the index version is not set up for this script instance
    • _setShard

      public void _setShard​(int shardId)
      Starting a name with underscore, so that the user cannot access this function directly through a script
    • _setIndexName

      public void _setIndexName​(java.lang.String indexName)
      Starting a name with underscore, so that the user cannot access this function directly through a script
    • _setIndexVersion

      public void _setIndexVersion​(Version indexVersion)
      Starting a name with underscore, so that the user cannot access this function directly through a script