Package flickyou

Source Code for Package flickyou

 1  """ 
 2  Flickr API client. 
 3  """ 
 4   
 5  __author__ = "Lawrence Oluyede (oluyede.org)" 
 6  __version__ = '0.5.0' 
 7  __copyright__ = "Copyright (c) 2007 Lawrence Oluyede" 
 8  __license__ = "BSD" 
 9   
10   
11  from backend import JSONBackend 
12   
13 -class FlickrClient(object):
14 """The Flickr client class."""
15 - def __init__(self, api_key, secret_key, backend=JSONBackend):
16 self.api_key = api_key 17 self.secret_key = secret_key 18 self.backend = backend(self.api_key, self.secret_key)
19
20 - def __getattr__(self, api_method_name):
21 def _method(**params): 22 try: 23 return getattr(self.backend, api_method_name)(**params) 24 except AttributeError: 25 api_name = ".".join(api_method_name.split('_')) 26 flickr_method_name = "flickr.%s" % api_name 27 return self.backend.call_api_method(flickr_method_name, 28 True, **params)
29 return _method
30