1616import copy
1717import threading
1818
19- from . import logger
2019from .decision .optimizely_decision_message import OptimizelyDecisionMessage
2120from .helpers import enums
2221
@@ -26,11 +25,12 @@ class OptimizelyUserContext(object):
2625 Representation of an Optimizely User Context using which APIs are to be called.
2726 """
2827
29- def __init__ (self , optimizely_client , user_id , user_attributes = None ):
28+ def __init__ (self , optimizely_client , logger , user_id , user_attributes = None ):
3029 """ Create an instance of the Optimizely User Context.
3130
3231 Args:
3332 optimizely_client: client used when calling decisions for this user context
33+ logger: logger for logging
3434 user_id: user id of this user context
3535 user_attributes: user attributes to use for this user context
3636
@@ -39,6 +39,7 @@ def __init__(self, optimizely_client, user_id, user_attributes=None):
3939 """
4040
4141 self .client = optimizely_client
42+ self .logger = logger
4243 self .user_id = user_id
4344
4445 if not isinstance (user_attributes , dict ):
@@ -47,7 +48,6 @@ def __init__(self, optimizely_client, user_id, user_attributes=None):
4748 self ._user_attributes = user_attributes .copy () if user_attributes else {}
4849 self .lock = threading .Lock ()
4950 self .forced_decisions_map = {}
50- self .log = logger .SimpleLogger (min_level = enums .LogLevels .INFO )
5151
5252 # decision context
5353 class OptimizelyDecisionContext (object ):
@@ -74,7 +74,7 @@ def _clone(self):
7474 if not self .client :
7575 return None
7676
77- user_context = OptimizelyUserContext (self .client , self .user_id , self .get_user_attributes ())
77+ user_context = OptimizelyUserContext (self .client , self .logger , self . user_id , self .get_user_attributes ())
7878
7979 with self .lock :
8080 if self .forced_decisions_map :
@@ -164,7 +164,7 @@ def set_forced_decision(self, decision_context, decision):
164164 True if the forced decision has been set successfully.
165165 """
166166 if not self .client .is_valid or not self .client .config_manager .get_config ():
167- self .log . logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
167+ self .logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
168168 return False
169169
170170 with self .lock :
@@ -183,7 +183,7 @@ def get_forced_decision(self, decision_context):
183183 A forced_decision or None if forced decisions are not set for the parameters.
184184 """
185185 if not self .client .is_valid or not self .client .config_manager .get_config ():
186- self .log . logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
186+ self .logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
187187 return None
188188
189189 forced_decision = self .find_forced_decision (decision_context )
@@ -201,7 +201,7 @@ def remove_forced_decision(self, decision_context):
201201 Returns: true if the forced decision has been removed successfully.
202202 """
203203 if not self .client .is_valid or not self .client .config_manager .get_config ():
204- self .log . logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
204+ self .logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
205205 return False
206206
207207 with self .lock :
@@ -219,7 +219,7 @@ def remove_all_forced_decisions(self):
219219 True if forced decisions have been removed successfully.
220220 """
221221 if not self .client .is_valid or not self .client .config_manager .get_config ():
222- self .log . logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
222+ self .logger .error (OptimizelyDecisionMessage .SDK_NOT_READY )
223223 return False
224224
225225 with self .lock :
@@ -281,7 +281,7 @@ def find_validated_forced_decision(self, decision_context):
281281 self .user_id )
282282
283283 reasons .append (user_has_forced_decision )
284- self .log . logger .debug (user_has_forced_decision )
284+ self .logger .debug (user_has_forced_decision )
285285
286286 return variation , reasons
287287
@@ -296,6 +296,6 @@ def find_validated_forced_decision(self, decision_context):
296296 .USER_HAS_FORCED_DECISION_WITHOUT_RULE_SPECIFIED_BUT_INVALID .format (flag_key , self .user_id )
297297
298298 reasons .append (user_has_forced_decision_but_invalid )
299- self .log . logger .debug (user_has_forced_decision_but_invalid )
299+ self .logger .debug (user_has_forced_decision_but_invalid )
300300
301301 return None , reasons
0 commit comments