diff --git a/lib/optimizely/optimizely_user_context.rb b/lib/optimizely/optimizely_user_context.rb index f6269ffe..3e9d7b29 100644 --- a/lib/optimizely/optimizely_user_context.rb +++ b/lib/optimizely/optimizely_user_context.rb @@ -102,8 +102,9 @@ def decide_all(options = nil) # @return - true if the forced decision has been set successfully. def set_forced_decision(context, decision) + return false unless @optimizely_client&.is_valid + flag_key = context[:flag_key] - return false if @optimizely_client&.get_optimizely_config.nil? return false if flag_key.nil? @forced_decision_mutex.synchronize { @forced_decisions[context] = decision } @@ -126,7 +127,7 @@ def find_forced_decision(context) # @return - A variation key or nil if forced decisions are not set for the parameters. def get_forced_decision(context) - return nil if @optimizely_client&.get_optimizely_config.nil? + return nil unless @optimizely_client&.is_valid find_forced_decision(context) end @@ -138,7 +139,7 @@ def get_forced_decision(context) # @return - true if the forced decision has been removed successfully. def remove_forced_decision(context) - return false if @optimizely_client&.get_optimizely_config.nil? + return false unless @optimizely_client&.is_valid deleted = false @forced_decision_mutex.synchronize do @@ -155,7 +156,7 @@ def remove_forced_decision(context) # @return - true if forced decisions have been removed successfully. def remove_all_forced_decision - return false if @optimizely_client&.get_optimizely_config.nil? + return false unless @optimizely_client&.is_valid @forced_decision_mutex.synchronize { @forced_decisions.clear } true