From bc9fdad352cd8ac6b1ac4c3dbe96dd72c9bc868e Mon Sep 17 00:00:00 2001 From: Eric Kok Date: Thu, 24 Jan 2013 15:40:15 +0100 Subject: [PATCH] Support setting of labels with rTorrent (thanks tom Briden\!) --- lib/src/org/transdroid/daemon/Daemon.java | 2 +- .../org/transdroid/daemon/Rtorrent/RtorrentAdapter.java | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/src/org/transdroid/daemon/Daemon.java b/lib/src/org/transdroid/daemon/Daemon.java index bbca237a..3b890006 100644 --- a/lib/src/org/transdroid/daemon/Daemon.java +++ b/lib/src/org/transdroid/daemon/Daemon.java @@ -255,7 +255,7 @@ public enum Daemon { } public static boolean supportsSetLabel(Daemon type) { - return type == uTorrent || type == BitTorrent; + return type == uTorrent || type == BitTorrent || type == rTorrent; } public static boolean supportsSetDownloadLocation(Daemon type) { diff --git a/lib/src/org/transdroid/daemon/Rtorrent/RtorrentAdapter.java b/lib/src/org/transdroid/daemon/Rtorrent/RtorrentAdapter.java index c5fa35a3..10c58952 100644 --- a/lib/src/org/transdroid/daemon/Rtorrent/RtorrentAdapter.java +++ b/lib/src/org/transdroid/daemon/Rtorrent/RtorrentAdapter.java @@ -55,6 +55,7 @@ import org.transdroid.daemon.task.RemoveTask; import org.transdroid.daemon.task.RetrieveTask; import org.transdroid.daemon.task.RetrieveTaskSuccessResult; import org.transdroid.daemon.task.SetFilePriorityTask; +import org.transdroid.daemon.task.SetLabelTask; import org.transdroid.daemon.task.SetTransferRatesTask; import org.transdroid.daemon.util.DLog; import org.transdroid.daemon.util.HttpHelper; @@ -210,6 +211,12 @@ public class RtorrentAdapter implements IDaemonAdapter { makeRtorrentCall("set_upload_rate", new String[] { (ratesTask.getUploadRate() == null? "0": ratesTask.getUploadRate().toString() + "k") }); return new DaemonTaskSuccessResult(task); + case SetLabel: + + SetLabelTask labelTask = (SetLabelTask) task; + makeRtorrentCall("d.set_custom1", new String[] { task.getTargetTorrent().getUniqueID(), labelTask.getNewLabel() }); + return new DaemonTaskSuccessResult(task); + default: return new DaemonTaskFailureResult(task, new DaemonException(ExceptionType.MethodUnsupported, task.getMethod() + " is not supported by " + getType())); }