diff --git a/easyLDAP/easyLDAP_class_cache.py b/easyLDAP/easyLDAP_class_cache.py index 2b874da9e58ba04374c390d0c42c3dc89cf99a4d..2e95c3265b6f8653699e2a883d18b5196c7a3171 100644 --- a/easyLDAP/easyLDAP_class_cache.py +++ b/easyLDAP/easyLDAP_class_cache.py @@ -33,8 +33,6 @@ class easyLDAP_cache_history: ldap_cachetree = None ldap_cache_undo_history = [] ldap_cache_redo_history = [] - ldap_cache_history_size = EASY_LDAP['CacheHistorySize'] - use_cache_history = True def _method_aliases(self): @@ -43,21 +41,24 @@ class easyLDAP_cache_history: self.push = self._push_cache_history - def __init__(self, config_defaults=EASY_LDAP): + def __init__(self, use_cache_history=True, config_defaults=EASY_LDAP): self._method_aliases() self.ldap_cache_undo_history = [] self.ldap_cache_redo_history = [] - self._default_cache_history_size = config_defaults['CacheHistorySize'] # if we cache an ldapobject we have to divert self.ldap_cachetree to self.ldap_cacheobject if self.ldap_cachetree is None: self._caching_object = True # use redo/undo functionality + self.use_cache_history = use_cache_history + self._default_cache_history_size = config_defaults['CacheHistorySize'] if not self.use_cache_history: self.ldap_cache_history_size = 1 + else: + self.ldap_cache_history_size = self._default_cache_history_size self.CONFIG=config_defaults @@ -215,12 +216,7 @@ class easyLDAP_cacheobject(easyLDAP_cache_history): else: raise easyLDAP_exceptions.NOT_A_PYTHON_LDAPOBJECT - easyLDAP_cache_history.__init__(self, config_defaults=config_defaults) - - if use_cache_history: - self.enable_cache_history() - else: - self.disable_cache_history() + easyLDAP_cache_history.__init__(self, config_defaults=config_defaults, use_cache_history=use_cache_history) self.CONFIG = config_defaults