aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/process_media
diff options
context:
space:
mode:
authorChristopher Allan Webber <cwebber@dustycloud.org>2011-08-04 22:16:49 -0500
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-08-04 22:16:49 -0500
commitf40d79714a426a1ea4fe7742ccab836440336eca (patch)
tree0527eadc29617bde6417584292e3d4f1d8a4f22e /mediagoblin/process_media
parente69bb23b4c3352cd119f9a513ea0e12a123a9d15 (diff)
parentaa797ca130c5331e6d40d4be746c3963ec9de111 (diff)
downloadmediagoblin-f40d79714a426a1ea4fe7742ccab836440336eca.tar.lz
mediagoblin-f40d79714a426a1ea4fe7742ccab836440336eca.tar.xz
mediagoblin-f40d79714a426a1ea4fe7742ccab836440336eca.zip
Merge remote branch 'remotes/jwandborg/f477_cloudfiles'
Diffstat (limited to 'mediagoblin/process_media')
-rw-r--r--mediagoblin/process_media/__init__.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/mediagoblin/process_media/__init__.py b/mediagoblin/process_media/__init__.py
index 125b24e0..8e12ca4d 100644
--- a/mediagoblin/process_media/__init__.py
+++ b/mediagoblin/process_media/__init__.py
@@ -19,6 +19,7 @@ from mediagoblin.db.util import ObjectId
from celery.task import task
from mediagoblin import mg_globals as mgg
+from contextlib import contextmanager
THUMB_SIZE = 180, 180
@@ -31,6 +32,12 @@ def create_pub_filepath(entry, filename):
unicode(entry['_id']),
filename])
+@contextmanager
+def closing(callback):
+ try:
+ yield callback
+ finally:
+ pass
@task
def process_media_initial(media_id):
@@ -53,7 +60,7 @@ def process_media_initial(media_id):
thumb_filepath = create_pub_filepath(entry, 'thumbnail.jpg')
thumb_file = mgg.public_store.get_file(thumb_filepath, 'w')
- with thumb_file:
+ with closing(thumb_file):
thumb.save(thumb_file, "JPEG", quality=90)
"""
@@ -73,7 +80,7 @@ def process_media_initial(media_id):
medium_filepath = create_pub_filepath(entry, 'medium.jpg')
medium_file = mgg.public_store.get_file(medium_filepath, 'w')
- with medium_file:
+ with closing(medium_file):
medium.save(medium_file, "JPEG", quality=90)
medium_processed = True
@@ -84,7 +91,7 @@ def process_media_initial(media_id):
with queued_file:
original_filepath = create_pub_filepath(entry, queued_filepath[-1])
- with mgg.public_store.get_file(original_filepath, 'wb') as original_file:
+ with closing(mgg.public_store.get_file(original_filepath, 'wb')) as original_file:
original_file.write(queued_file.read())
mgg.queue_store.delete_file(queued_filepath)