Browse Source

Delete base.py

pull/6035/head^2
Jeremy 9 years ago
parent
commit
f32bb9c288
  1. 62
      libs/qbittorrent/base.py

62
libs/qbittorrent/base.py

@ -1,62 +0,0 @@
from urlparse import urljoin
import logging
log = logging.getLogger(__name__)
class Base(object):
properties = {}
def __init__(self, url, session, client=None):
self._client = client
self._url = url
self._session = session
@staticmethod
def _convert(response, response_type):
if response_type == 'json':
try:
return response.json()
except ValueError:
pass
return response
def _get(self, path='', response_type='json', **kwargs):
r = self._session.get(urljoin(self._url, path), **kwargs)
return self._convert(r, response_type)
def _post(self, path='', response_type='json', data=None, **kwargs):
r = self._session.post(urljoin(self._url, path), data, **kwargs)
return self._convert(r, response_type)
def _fill(self, data):
for key, value in data.items():
if self.set_property(self, key, value):
continue
log.debug('%s is missing item with key "%s" and value %s', self.__class__, key, repr(value))
@classmethod
def parse(cls, client, data):
obj = cls(client._url, client._session, client)
obj._fill(data)
return obj
@classmethod
def set_property(cls, obj, key, value):
prop = cls.properties.get(key, {})
if prop.get('key'):
key = prop['key']
if not hasattr(obj, key):
return False
if prop.get('parse'):
value = prop['parse'](value)
setattr(obj, key, value)
return True
Loading…
Cancel
Save