diff piecrust/generation/base.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 aca04e175488
children
line wrap: on
line diff
--- a/piecrust/generation/base.py	Wed Dec 28 01:27:02 2016 -0500
+++ b/piecrust/generation/base.py	Wed Jan 11 09:01:01 2017 -0800
@@ -124,13 +124,14 @@
             raise ConfigurationError(
                     "Generator '%s' requires a listing page ref." % name)
         self.page_ref = PageRef(app, page_ref)
+
         self.data_endpoint = config.get('data_endpoint')
         self.data_type = config.get('data_type')
-
         if self.data_endpoint and not self.data_type:
             raise ConfigurationError(
-                    "Generator '%s' requires a data type because it has a data endpoint." % name)
-        
+                "Generator '%s' requires a data type because it has "
+                "a data endpoint." % name)
+
         self._provider_type = None
 
     @cached_property
@@ -156,5 +157,7 @@
 
     def buildDataProvider(self, page, override):
         if not self._provider_type:
-            self._provider_type = self.app.getDataProviderClass(self.data_type)
+            from piecrust.data.provider import get_data_provider_class
+            self._provider_type = get_data_provider_class(self.app,
+                                                          self.data_type)
         return self._provider_type(self, page, override)