mirror of
https://github.com/KevinMidboe/delugeClient.git
synced 2025-10-29 12:00:13 +00:00
Created a lambda function for converting numeric boolean to python values. Changed attribute packed to isFolder. Added finished attribute to also be returned when wanting progress.
This commit is contained in:
@@ -149,8 +149,8 @@ class Deluge(object):
|
|||||||
|
|
||||||
def filterOnValue(self, torrents, value):
|
def filterOnValue(self, torrents, value):
|
||||||
filteredTorrents = []
|
filteredTorrents = []
|
||||||
value_template = {'key': None, 'name': None, value: None}
|
|
||||||
for t in torrents:
|
for t in torrents:
|
||||||
|
value_template = {'key': None, 'name': None, value: None}
|
||||||
value_template['key'] = t.key
|
value_template['key'] = t.key
|
||||||
value_template['name'] = t.name
|
value_template['name'] = t.name
|
||||||
value_template[value] = getattr(t, value)
|
value_template[value] = getattr(t, value)
|
||||||
@@ -159,7 +159,7 @@ class Deluge(object):
|
|||||||
return filteredTorrents
|
return filteredTorrents
|
||||||
|
|
||||||
def progress(self):
|
def progress(self):
|
||||||
attributes = ['progress', 'eta', 'state']
|
attributes = ['progress', 'eta', 'state', 'finished']
|
||||||
all_torrents = self.get_all()
|
all_torrents = self.get_all()
|
||||||
|
|
||||||
torrents = []
|
torrents = []
|
||||||
@@ -189,21 +189,24 @@ class Torrent(object):
|
|||||||
self.finished = finished
|
self.finished = finished
|
||||||
self.files = list(files)
|
self.files = list(files)
|
||||||
|
|
||||||
def packed(self):
|
def isFolder(self):
|
||||||
return len(self.files) > 1
|
return len(self.files) > 1
|
||||||
|
|
||||||
|
def toBool(self, value):
|
||||||
|
return True if strtobool(value) else False
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def fromDeluge(cls, d):
|
def fromDeluge(cls, d):
|
||||||
# Receive a dict with byte values, convert all elements to string values
|
# Receive a dict with byte values, convert all elements to string values
|
||||||
d = convert(d)
|
d = convert(d)
|
||||||
d['paused'] = True if strtobool(d['paused']) else False
|
toBool = lambda val: True if strtobool(val) else False
|
||||||
return cls(d['hash'], d['name'], d['progress'], d['eta'], d['save_path'], d['state'],
|
return cls(d['hash'], d['name'], d['progress'], d['eta'], d['save_path'], d['state'],
|
||||||
d['paused'], d['is_finished'], d['files'])
|
toBool(d['paused']), toBool(d['is_finished']), d['files'])
|
||||||
|
|
||||||
def toJSON(self):
|
def toJSON(self):
|
||||||
return {'key': self.key, 'name': self.name, 'progress': self.progress, 'eta': self.eta,
|
return {'key': self.key, 'name': self.name, 'progress': self.progress, 'eta': self.eta,
|
||||||
'save path': self.save_path, 'state': self.state, 'paused': self.paused,
|
'save_path': self.save_path, 'state': self.state, 'paused': self.paused,
|
||||||
'finished': self.finished, 'files': self.files, 'packed': self.packed()}
|
'finished': self.finished, 'files': self.files, 'is_folder': self.isFolder()}
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "Name: {}, Progress: {}%, ETA: {}, State: {}, Paused: {}".format(
|
return "Name: {}, Progress: {}%, ETA: {}, State: {}, Paused: {}".format(
|
||||||
|
|||||||
Reference in New Issue
Block a user