def getInstance(name=None): if not name: name = RuleTableManager._defaultName mapps = dict() mapps.update(RuleTableManager.getConditionMappings()) mapps.update(RuleTableManager.getActionMappings()) sorted(mapps.iterkeys()) with RuleTableManager._mutex: RuleTableManager._instance = RuleTable.loadOrGenerate(name, mapps, RuleTableManager._defaultParser, RuleTableManager._defaultPersistence, RuleTableManager._persistenceFlag, RuleTableManager._policyType, uuid.uuid4().hex) return RuleTableManager._instance
def initialize(scopeName, mappings, parser, persistence, **kwargs): ''' Initialize a specific Policy Scope by instantiating a Rule Table and adding it to the PolicyManager registre _scopes ''' if not scopeName in PolicyManager._scopes: PolicyManager._mutex[scopeName] = Lock() #PolicyManager._mappings[scopeName] = mappings with PolicyManager._mutex[scopeName]: PolicyManager._scopes[scopeName] = RuleTable.loadOrGenerate( scopeName, mappings, parser, persistence, True, **kwargs) return PolicyManager._scopes[scopeName]
def getInstance(name=None): if not name: name = RuleTableManager._defaultName mapps = dict() mapps.update(RuleTableManager.getConditionMappings()) mapps.update(RuleTableManager.getActionMappings()) sorted(mapps.iterkeys()) with RuleTableManager._mutex: RuleTableManager._instance = RuleTable.loadOrGenerate( name, mapps, RuleTableManager._defaultParser, RuleTableManager._defaultPersistence, RuleTableManager._persistenceFlag, RuleTableManager._policyType, uuid.uuid4().hex) return RuleTableManager._instance