コード例 #1
0
ファイル: RuleTableManager.py プロジェクト: HalasNet/felix
	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
コード例 #2
0
    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]
コード例 #3
0
    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