Discover image generators during lookup

Fixes GH-241
This commit is contained in:
Matthew Tretter 2013-08-14 22:58:36 -04:00
parent d647678c2e
commit c78cbfc089
2 changed files with 4 additions and 13 deletions

View file

@ -1,6 +1,6 @@
from .exceptions import AlreadyRegistered, NotRegistered
from .signals import content_required, existence_required, source_saved
from .utils import call_strategy_method
from .utils import autodiscover, call_strategy_method
class GeneratorRegistry(object):
@ -30,6 +30,8 @@ class GeneratorRegistry(object):
' registered' % id)
def get(self, id, **kwargs):
autodiscover()
try:
generator = self._generators[id]
except KeyError:
@ -41,6 +43,7 @@ class GeneratorRegistry(object):
return generator
def get_ids(self):
autodiscover()
return self._generators.keys()
def content_required_receiver(self, sender, file, **kwargs):

View file

@ -43,9 +43,6 @@ class GenerateImageAssignmentNode(template.Node):
return unicode(self._variable_name)
def render(self, context):
from ..utils import autodiscover
autodiscover()
variable_name = self.get_variable_name(context)
context[variable_name] = get_cachefile(context, self._generator_id,
self._generator_kwargs)
@ -60,9 +57,6 @@ class GenerateImageTagNode(template.Node):
self._html_attrs = html_attrs
def render(self, context):
from ..utils import autodiscover
autodiscover()
file = get_cachefile(context, self._generator_id,
self._generator_kwargs)
attrs = dict((k, v.resolve(context)) for k, v in
@ -92,9 +86,6 @@ class ThumbnailAssignmentNode(template.Node):
return unicode(self._variable_name)
def render(self, context):
from ..utils import autodiscover
autodiscover()
variable_name = self.get_variable_name(context)
generator_id = self._generator_id.resolve(context) if self._generator_id else DEFAULT_THUMBNAIL_GENERATOR
@ -119,9 +110,6 @@ class ThumbnailImageTagNode(template.Node):
self._html_attrs = html_attrs
def render(self, context):
from ..utils import autodiscover
autodiscover()
generator_id = self._generator_id.resolve(context) if self._generator_id else DEFAULT_THUMBNAIL_GENERATOR
dimensions = parse_dimensions(self._dimensions.resolve(context))
kwargs = dict((k, v.resolve(context)) for k, v in