comparison piecrust/data/provider.py @ 815:69d16e1afb95

internal: Keep things out of the `PieCrust` class, and other clean-ups.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 11 Jan 2017 09:01:01 -0800
parents 37bd88f88bab
children
comparison
equal deleted inserted replaced
814:aca04e175488 815:69d16e1afb95
1 import time 1 import time
2 import collections.abc 2 import collections.abc
3 from piecrust.configuration import ConfigurationError
3 from piecrust.data.iterators import PageIterator 4 from piecrust.data.iterators import PageIterator
4 from piecrust.generation.taxonomy import Taxonomy 5 from piecrust.generation.taxonomy import Taxonomy
5 from piecrust.sources.array import ArraySource 6 from piecrust.sources.array import ArraySource
7
8
9 def get_data_provider_class(app, provider_type):
10 if not provider_type:
11 raise Exception("No data provider type specified.")
12 for prov in app.plugin_loader.getDataProviders():
13 if prov.PROVIDER_NAME == provider_type:
14 return prov
15 raise ConfigurationError(
16 "Unknown data provider type: %s" % provider_type)
6 17
7 18
8 class DataProvider(object): 19 class DataProvider(object):
9 debug_render_dynamic = [] 20 debug_render_dynamic = []
10 debug_render_invoke_dynamic = [] 21 debug_render_invoke_dynamic = []