@@ -124,22 +124,20 @@ private static Flags evaluateFeatures(
124124
125125 if (contextFeatures != null ) {
126126 for (FeatureContext featureContext : contextFeatures .getAdditionalProperties ().values ()) {
127+ String reason ;
127128 if (segmentFeatureContexts .containsKey (featureContext .getName ())) {
128129 ImmutablePair <String , FeatureContext > segmentNameFeaturePair = segmentFeatureContexts
129130 .get (featureContext .getName ());
130131 featureContext = segmentNameFeaturePair .getRight ();
131- flags .setAdditionalProperty (
132- featureContext .getName (),
133- new FlagResult ().withEnabled (featureContext .getEnabled ())
134- .withName (featureContext .getName ())
135- .withValue (featureContext .getValue ())
136- .withReason (
137- "TARGETING_MATCH; segment=" + segmentNameFeaturePair .getLeft ())
138- .withMetadata (featureContext .getMetadata ()));
132+ reason = "TARGETING_MATCH; segment=" + segmentNameFeaturePair .getLeft ();
139133 } else {
140- flags .setAdditionalProperty (featureContext .getName (),
141- getFlagResultFromFeatureContext (featureContext , identityKey ));
134+ reason = "DEFAULT" ;
142135 }
136+ flags .setAdditionalProperty (featureContext .getName (),
137+ getFlagResultFromFeatureContext (
138+ featureContext ,
139+ identityKey ,
140+ reason ));
143141 }
144142 }
145143
@@ -148,7 +146,8 @@ private static Flags evaluateFeatures(
148146
149147 private static FlagResult getFlagResultFromFeatureContext (
150148 FeatureContext featureContext ,
151- String identityKey ) {
149+ String identityKey ,
150+ String reason ) {
152151 if (identityKey != null ) {
153152 List <FeatureValue > variants = featureContext .getVariants ();
154153 if (variants != null ) {
@@ -183,7 +182,7 @@ private static FlagResult getFlagResultFromFeatureContext(
183182 return new FlagResult ().withEnabled (featureContext .getEnabled ())
184183 .withName (featureContext .getName ())
185184 .withValue (featureContext .getValue ())
186- .withReason ("DEFAULT" )
185+ .withReason (reason )
187186 .withMetadata (featureContext .getMetadata ());
188187 }
189188}
0 commit comments