640K ought to be enough for anybody
parent
fe81eb02f2
commit
919333e70c
|
@ -7,7 +7,7 @@ from PIL import Image
|
|||
|
||||
|
||||
# FIXME: kind of fugly.
|
||||
@redis_me("noir_pope")
|
||||
@redis_me
|
||||
def get_noir_pope(width, height, pope_id):
|
||||
pope_buffer = BytesIO()
|
||||
pope = get_pope(width, height, pope_id)
|
||||
|
|
|
@ -26,29 +26,26 @@ def unpopable(width, height):
|
|||
|
||||
|
||||
#======== your friendly decorators :3 ======================================
|
||||
def redis_me(prefix):
|
||||
def redis_me(func):
|
||||
def inner(*args, **kwargs):
|
||||
import ipdb; ipdb.set_trace()
|
||||
if not redis or SAGE_REDIS:
|
||||
return func(*args, **kwargs)
|
||||
|
||||
def decorator(func):
|
||||
# FIXME: perhaps some better key value?
|
||||
key = (func.__name__, args)
|
||||
try:
|
||||
image = redis.get(key)
|
||||
if not image:
|
||||
image = func(*args, **kwargs)
|
||||
redis.set(key, image)
|
||||
redis.expire(key, REDIS_TTL)
|
||||
return image
|
||||
|
||||
def inner(*args, **kwargs):
|
||||
if not redis or SAGE_REDIS:
|
||||
return func(*args, **kwargs)
|
||||
except RedisConnectionError:
|
||||
return func(*args, **kwargs)
|
||||
|
||||
# FIXME: perhaps some better key value?
|
||||
key = (prefix, args)
|
||||
try:
|
||||
image = redis.get(key)
|
||||
if not image:
|
||||
image = func(*args, **kwargs)
|
||||
redis.set(key, image)
|
||||
redis.expire(key, REDIS_TTL)
|
||||
return image
|
||||
|
||||
except RedisConnectionError:
|
||||
return func(*args, **kwargs)
|
||||
|
||||
return inner
|
||||
return decorator
|
||||
return inner
|
||||
|
||||
|
||||
def habemus_papam(func):
|
||||
|
@ -81,7 +78,7 @@ def http_return_image(func):
|
|||
# =============================================================================
|
||||
|
||||
|
||||
@redis_me("get_pope")
|
||||
@redis_me
|
||||
def get_pope(width, height, pope_id):
|
||||
width, height = int(width), int(height)
|
||||
if not unpopable(width, height):
|
||||
|
|
Loading…
Reference in New Issue