java.lang.Object
org.elasticsearch.cluster.routing.allocation.decider.Decision
All Implemented Interfaces:
Writeable, org.elasticsearch.common.xcontent.ToXContent
Direct Known Subclasses:
Decision.Multi, Decision.Single

public abstract class Decision
extends java.lang.Object
implements org.elasticsearch.common.xcontent.ToXContent, Writeable
This abstract class defining basic Decision used during shard allocation process.
See Also:
AllocationDecider
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static class  Decision.Multi
    Simple class representing a list of decisions
    static class  Decision.Single
    Simple class representing a single decision
    static class  Decision.Type
    This enumeration defines the possible types of decisions

    Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent

    org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params

    Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable

    Writeable.Reader<V>, Writeable.Writer<V>
  • Field Summary

    Fields
    Modifier and Type Field Description
    static Decision ALWAYS  
    static Decision NO  
    static Decision THROTTLE  
    static Decision YES  

    Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent

    EMPTY_PARAMS
  • Constructor Summary

    Constructors
    Constructor Description
    Decision()  
  • Method Summary

    Modifier and Type Method Description
    abstract java.util.List<Decision> getDecisions()
    Return the list of all decisions that make up this decision
    abstract java.lang.String getExplanation()
    Get the explanation for this decision.
    abstract java.lang.String label()
    Get the description label for this decision.
    static Decision readFrom​(StreamInput in)  
    static Decision single​(Decision.Type type, java.lang.String label, java.lang.String explanation, java.lang.Object... explanationParams)
    Creates a simple decision
    abstract Decision.Type type()
    Get the Decision.Type of this decision

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.elasticsearch.common.xcontent.ToXContent

    isFragment, toXContent

    Methods inherited from interface org.elasticsearch.common.io.stream.Writeable

    writeTo
  • Field Details

    • ALWAYS

      public static final Decision ALWAYS
    • YES

      public static final Decision YES
    • NO

      public static final Decision NO
    • THROTTLE

      public static final Decision THROTTLE
  • Constructor Details

    • Decision

      public Decision()
  • Method Details

    • single

      public static Decision single​(Decision.Type type, @Nullable java.lang.String label, @Nullable java.lang.String explanation, @Nullable java.lang.Object... explanationParams)
      Creates a simple decision
      Parameters:
      type - Decision.Type of the decision
      label - label for the Decider that produced this decision
      explanation - explanation of the decision
      explanationParams - additional parameters for the decision
      Returns:
      new Decision instance
    • readFrom

      public static Decision readFrom​(StreamInput in) throws java.io.IOException
      Throws:
      java.io.IOException
    • type

      public abstract Decision.Type type()
      Get the Decision.Type of this decision
      Returns:
      Decision.Type of this decision
    • label

      @Nullable public abstract java.lang.String label()
      Get the description label for this decision.
    • getExplanation

      @Nullable public abstract java.lang.String getExplanation()
      Get the explanation for this decision.
    • getDecisions

      public abstract java.util.List<Decision> getDecisions()
      Return the list of all decisions that make up this decision