Mercurial > piecrust2
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 = [] |