diff options
Diffstat (limited to 'deluge/core/torrentmanager.py')
-rw-r--r-- | deluge/core/torrentmanager.py | 82 |
1 files changed, 38 insertions, 44 deletions
diff --git a/deluge/core/torrentmanager.py b/deluge/core/torrentmanager.py index 4904e94ed..c43a7a262 100644 --- a/deluge/core/torrentmanager.py +++ b/deluge/core/torrentmanager.py @@ -50,10 +50,10 @@ from deluge.event import ( log = logging.getLogger(__name__) LT_DEFAULT_ADD_TORRENT_FLAGS = ( - lt.add_torrent_params_flags_t.flag_paused - | lt.add_torrent_params_flags_t.flag_auto_managed - | lt.add_torrent_params_flags_t.flag_update_subscribe - | lt.add_torrent_params_flags_t.flag_apply_ip_filter + lt.torrent_flags.paused + | lt.torrent_flags.auto_managed + | lt.torrent_flags.update_subscribe + | lt.torrent_flags.apply_ip_filter ) @@ -202,34 +202,32 @@ class TorrentManager(component.Component): # Register alert functions alert_handles = [ - 'external_ip_alert', - 'performance_alert', - 'add_torrent_alert', - 'metadata_received_alert', - 'torrent_finished_alert', - 'torrent_paused_alert', - 'torrent_checked_alert', - 'torrent_resumed_alert', - 'tracker_reply_alert', - 'tracker_announce_alert', - 'tracker_warning_alert', - 'tracker_error_alert', - 'file_renamed_alert', - 'file_error_alert', - 'file_completed_alert', - 'storage_moved_alert', - 'storage_moved_failed_alert', - 'state_update_alert', - 'state_changed_alert', - 'save_resume_data_alert', - 'save_resume_data_failed_alert', - 'fastresume_rejected_alert', + 'external_ip', + 'performance', + 'add_torrent', + 'metadata_received', + 'torrent_finished', + 'torrent_paused', + 'torrent_checked', + 'torrent_resumed', + 'tracker_reply', + 'tracker_announce', + 'tracker_warning', + 'tracker_error', + 'file_renamed', + 'file_error', + 'file_completed', + 'storage_moved', + 'storage_moved_failed', + 'state_update', + 'state_changed', + 'save_resume_data', + 'save_resume_data_failed', + 'fastresume_rejected', ] for alert_handle in alert_handles: - on_alert_func = getattr( - self, ''.join(['on_alert_', alert_handle.replace('_alert', '')]) - ) + on_alert_func = getattr(self, ''.join(['on_alert_', alert_handle])) self.alerts.register_handler(alert_handle, on_alert_func) # Define timers @@ -292,8 +290,8 @@ class TorrentManager(component.Component): if torrent.options['remove_at_ratio']: self.remove(torrent_id) break - if not torrent.status.paused: - torrent.pause() + + torrent.pause() def __getitem__(self, torrent_id): """Return the Torrent with torrent_id. @@ -369,11 +367,11 @@ class TorrentManager(component.Component): add_torrent_params.flags = ( ( LT_DEFAULT_ADD_TORRENT_FLAGS - | lt.add_torrent_params_flags_t.flag_duplicate_is_error - | lt.add_torrent_params_flags_t.flag_upload_mode + | lt.torrent_flags.duplicate_is_error + | lt.torrent_flags.upload_mode ) - ^ lt.add_torrent_params_flags_t.flag_auto_managed - ^ lt.add_torrent_params_flags_t.flag_paused + ^ lt.torrent_flags.auto_managed + ^ lt.torrent_flags.paused ) torrent_handle = self.session.add_torrent(add_torrent_params) @@ -436,8 +434,8 @@ class TorrentManager(component.Component): magnet_info = get_magnet_info(magnet) if magnet_info: add_torrent_params['name'] = magnet_info['name'] + add_torrent_params['trackers'] = list(magnet_info['trackers']) torrent_id = magnet_info['info_hash'] - # Workaround lt 1.2 bug for magnet resume data with no metadata add_torrent_params['info_hash'] = bytes(bytearray.fromhex(torrent_id)) else: raise AddTorrentError( @@ -481,16 +479,12 @@ class TorrentManager(component.Component): # Set flags: enable duplicate_is_error & override_resume_data, disable auto_managed. add_torrent_params['flags'] = ( - LT_DEFAULT_ADD_TORRENT_FLAGS - | lt.add_torrent_params_flags_t.flag_duplicate_is_error - | lt.add_torrent_params_flags_t.flag_override_resume_data - ) ^ lt.add_torrent_params_flags_t.flag_auto_managed + LT_DEFAULT_ADD_TORRENT_FLAGS | lt.torrent_flags.duplicate_is_error + ) ^ lt.torrent_flags.auto_managed if options['seed_mode']: - add_torrent_params['flags'] |= lt.add_torrent_params_flags_t.flag_seed_mode + add_torrent_params['flags'] |= lt.torrent_flags.seed_mode if options['super_seeding']: - add_torrent_params[ - 'flags' - ] |= lt.add_torrent_params_flags_t.flag_super_seeding + add_torrent_params['flags'] |= lt.torrent_flags.super_seeding return torrent_id, add_torrent_params |