21 |
if key not in self.__cache: |
if key not in self.__cache: |
22 |
if not restore: |
if not restore: |
23 |
# fetch image |
# fetch image |
24 |
|
image = Image(key, Image.WAITING) |
25 |
|
ic = ImageConsumer(image) |
26 |
|
headers = {} |
27 |
|
if item and item.feed: |
28 |
|
headers['Referer'] = item.feed.location |
29 |
try: |
try: |
|
image = Image(key, Image.WAITING) |
|
|
ic = ImageConsumer(image) |
|
|
headers = {} |
|
|
if item: |
|
|
headers['Referer'] = item.feed.location |
|
30 |
straw.URLFetch.connection_manager.request( |
straw.URLFetch.connection_manager.request( |
31 |
key, ic, |
key, ic, |
32 |
priority=straw.NetworkConstants.PRIORITY_IMAGE, |
priority=straw.NetworkConstants.PRIORITY_IMAGE, |
33 |
headers=headers) |
headers=headers) |
34 |
self.__cache[key] = [image, 1] |
except straw.URLFetch.RequestSchemeException, e: |
35 |
|
ic.http_failed(e) |
36 |
except Exception, e: |
except Exception, e: |
37 |
logtb("something went wrong: ", str(e)) |
logtb("something went wrong: ", str(e)) |
38 |
raise e |
ic.http_failed(e) |
39 |
|
self.__cache[key] = [image, 1] |
40 |
else: |
else: |
41 |
image = Image(key, Image.DATA_IN_DB) |
image = Image(key, Image.DATA_IN_DB) |
42 |
self.__cache[key] = [image, 1] |
self.__cache[key] = [image, 1] |