Class Evaluator

  • All Implemented Interfaces:
    Evaluation

    public class Evaluator
    extends java.lang.Object
    implements Evaluation
    • Constructor Detail

      • Evaluator

        public Evaluator​(Query query)
    • Method Detail

      • getAttrValue

        protected java.util.Optional<java.lang.Object> getAttrValue​(Target target,
                                                                    @NonNull
                                                                    @NonNull java.lang.String attribute)
      • findVariation

        protected java.util.Optional<Variation> findVariation​(@NonNull
                                                              @NonNull java.util.List<Variation> variations,
                                                              java.lang.String identifier)
      • isEnabled

        protected boolean isEnabled​(Target target,
                                    java.lang.String bucketBy,
                                    int percentage)
      • evaluateDistribution

        protected java.util.Optional<java.lang.String> evaluateDistribution​(Distribution distribution,
                                                                            Target target)
      • evaluateClause

        protected boolean evaluateClause​(Clause clause,
                                         Target target)
      • evaluateClauses

        protected boolean evaluateClauses​(java.util.List<Clause> clauses,
                                          Target target)
      • evaluateRule

        protected boolean evaluateRule​(ServingRule servingRule,
                                       Target target)
      • evaluateRules

        protected java.util.Optional<java.lang.String> evaluateRules​(java.util.List<ServingRule> servingRules,
                                                                     Target target)
      • evaluateVariationMap

        protected java.util.Optional<java.lang.String> evaluateVariationMap​(@NonNull
                                                                            @NonNull java.util.List<VariationMap> variationMaps,
                                                                            Target target)
      • checkPreRequisite

        protected boolean checkPreRequisite​(FeatureConfig parentFeatureConfig,
                                            Target target)
      • evaluate

        public java.util.Optional<Variation> evaluate​(java.lang.String identifier,
                                                      Target target,
                                                      FeatureConfig.KindEnum expected,
                                                      io.harness.cf.client.api.FlagEvaluateCallback callback)
      • boolVariation

        public boolean boolVariation​(java.lang.String identifier,
                                     Target target,
                                     boolean defaultValue,
                                     io.harness.cf.client.api.FlagEvaluateCallback callback)
        Specified by:
        boolVariation in interface Evaluation
      • stringVariation

        public java.lang.String stringVariation​(java.lang.String identifier,
                                                Target target,
                                                java.lang.String defaultValue,
                                                io.harness.cf.client.api.FlagEvaluateCallback callback)
        Specified by:
        stringVariation in interface Evaluation
      • numberVariation

        public double numberVariation​(java.lang.String identifier,
                                      Target target,
                                      double defaultValue,
                                      io.harness.cf.client.api.FlagEvaluateCallback callback)
        Specified by:
        numberVariation in interface Evaluation
      • jsonVariation

        public com.google.gson.JsonObject jsonVariation​(java.lang.String identifier,
                                                        Target target,
                                                        com.google.gson.JsonObject defaultValue,
                                                        io.harness.cf.client.api.FlagEvaluateCallback callback)
        Specified by:
        jsonVariation in interface Evaluation