Remove ensure_exists

`generate()` now plays double duty
This commit is contained in:
Matthew Tretter 2013-01-31 04:20:21 -05:00
parent 01fad6e4c6
commit 8e6abc1e65
5 changed files with 16 additions and 13 deletions

View file

@ -105,10 +105,13 @@ class GeneratedImageFile(BaseIKFile, ImageFile):
before_access.send(sender=self, file=self)
return super(GeneratedImageFile, self)._require_file()
def ensure_exists(self):
return self.generatedfile_backend.ensure_exists(self)
def generate(self, force=False):
if force:
self._generate()
else:
self.generatedfile_backend.ensure_exists(self)
def generate(self):
def _generate(self):
# Generate the file
content = generate(self.generator)

View file

@ -1,5 +1,5 @@
def ensure_exists(file):
file.ensure_exists()
def generate(file):
file.generate()
try:
@ -7,15 +7,15 @@ try:
except ImportError:
pass
else:
ensure_exists_task = task(ensure_exists)
generate_task = task(generate)
def ensure_exists_deferred(file):
def generate_deferred(file):
try:
import celery # NOQA
except:
raise ImportError("Deferred validation requires the the 'celery' library")
ensure_exists_task.delay(file)
generate_task.delay(file)
def clear_now(file):

View file

@ -61,4 +61,4 @@ class Simple(CachedFileBackend):
Generates a new image by running the processors on the source file.
"""
file.generate()
file.generate(force=True)

View file

@ -9,7 +9,7 @@ class JustInTime(object):
"""
def before_access(self, file):
file.ensure_exists()
file.generate()
class Optimistic(object):
@ -21,13 +21,13 @@ class Optimistic(object):
"""
def on_source_created(self, file):
file.ensure_exists()
file.generate()
def on_source_deleted(self, file):
file.delete()
def on_source_changed(self, file):
file.ensure_exists()
file.generate()
class DictStrategy(object):

View file

@ -26,7 +26,7 @@ well as "a:b" and "a:b:c".""")
self.stdout.write(' %s\n' % file)
try:
# TODO: Allow other validation actions through command option
file.ensure_exists()
file.generate()
except Exception, err:
# TODO: How should we handle failures? Don't want to error, but should call it out more than this.
self.stdout.write(' FAILED: %s\n' % err)