Source code for exporters.persistence.persistence_config_dispatcher

import re
from exporters.persistence import PERSISTENCE_LIST


[docs]class PersistenceConfigDispatcher(object): def __init__(self, uri): self.uri = uri self.persistence_dispatcher = self.get_module_from_uri()
[docs] def get_module_from_uri(self): persistence_regexes = {m.uri_regex: m for m in PERSISTENCE_LIST} for regex, module in persistence_regexes.iteritems(): if re.match(regex, self.uri): return module raise ValueError('{} is not a valid persistence uri. Available handlers are {}.' .format(self.uri, [m.uri_regex for m in PERSISTENCE_LIST]))
@property def config(self): return self.persistence_dispatcher.configuration_from_uri( self.uri, self.persistence_dispatcher.uri_regex)