Class: Trans::Api::Connect
- Inherits:
-
Object
- Object
- Trans::Api::Connect
- Defined in:
- lib/trans-api/connect.rb
Constant Summary collapse
- METHODS =
{ session_get: {method: "session-get", tag: 0}, session_set: {method: "session-set", tag: 1}, session_stats: {method: "session-stats", tag: 2}, session_close: {method: "session-close", tag: 3}, torrent_get: {method: "torrent-get", tag: 4}, torrent_set: {method: "torrent-set", tag: 5}, torrent_start: {method: "torrent-start", tag: 6}, torrent_start_now: {method: "torrent-start-now", tag: 7}, torrent_stop: {method: "torrent-stop", tag: 8}, torrent_add: {method: "torrent-add", tag: 9}, torrent_remove: {method: "torrent-remove", tag: 10}, torrent_verify: {method: "torrent-verify", tag: 11}, torrent_reannounce: {method: "torrent-reannounce", tag: 12}, torrent_set_location: {method: "torrent-set-location", tag: 13}, blocklist_update: {method: "blocklist-update", tag: 14}, port_test: {method: "port-test", tag: 15}, queue_move_top: {method: "queue-move-top", tag: 16}, queue_move_up: {method: "queue-move-up", tag: 17}, queue_move_down: {method: "queue-move-down", tag: 18}, queue_move_bottom: {method: "queue-move-bottom", tag: 19} }
Instance Method Summary collapse
- #blocklist_update ⇒ Object
-
#initialize(options = {}) ⇒ Connect
constructor
A new instance of Connect.
- #port_test ⇒ Object
- #queue_move_bottom(ids = []) ⇒ Object
- #queue_move_down(ids = []) ⇒ Object
- #queue_move_top(ids = []) ⇒ Object
- #queue_move_up(ids = []) ⇒ Object
- #reset_conn ⇒ Object
- #session_close ⇒ Object
-
#session_get ⇒ Object
handles.
- #session_set(arguments = {}) ⇒ Object
- #session_stats ⇒ Object
- #torrent_add(arguments = {}) ⇒ Object
- #torrent_get(fields = [:id, :name, :status], ids = []) ⇒ Object
- #torrent_reannounce(ids = []) ⇒ Object
- #torrent_remove(arguments = {}, ids = []) ⇒ Object
- #torrent_set(arguments = {}, ids = []) ⇒ Object
- #torrent_set_location(arguments = {}, ids = []) ⇒ Object
- #torrent_start(ids = []) ⇒ Object
- #torrent_start_now(ids = []) ⇒ Object
- #torrent_stop(ids = []) ⇒ Object
- #torrent_verify(ids = []) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Connect
Returns a new instance of Connect.
39 40 41 42 43 44 45 46 |
# File 'lib/trans-api/connect.rb', line 39 def initialize(={}) if .empty? @conn = Client::DEFAULT elsif !.nil? @conn = end self.reset_conn end |
Instance Method Details
#blocklist_update ⇒ Object
141 142 143 144 145 146 147 |
# File 'lib/trans-api/connect.rb', line 141 def blocklist_update tm = @conn[:timeout] @conn[:timeout] = (@conn[:timeout] + 5) * 3 arg = self.get_method(:blocklist_update) {|b| b.gsub("-","_")} @conn[:timeout] = tm arg end |
#port_test ⇒ Object
149 150 151 |
# File 'lib/trans-api/connect.rb', line 149 def port_test self.get_method(:port_test) {|b| b.gsub("-","_")} end |
#queue_move_bottom(ids = []) ⇒ Object
172 173 174 175 176 |
# File 'lib/trans-api/connect.rb', line 172 def queue_move_bottom(ids=[]) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:queue_move_bottom, arguments) {|b| b.gsub("-","_")} end |
#queue_move_down(ids = []) ⇒ Object
166 167 168 169 170 |
# File 'lib/trans-api/connect.rb', line 166 def queue_move_down(ids=[]) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:queue_move_down, arguments) {|b| b.gsub("-","_")} end |
#queue_move_top(ids = []) ⇒ Object
154 155 156 157 158 |
# File 'lib/trans-api/connect.rb', line 154 def queue_move_top(ids=[]) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:queue_move_top, arguments) {|b| b.gsub("-","_")} end |
#queue_move_up(ids = []) ⇒ Object
160 161 162 163 164 |
# File 'lib/trans-api/connect.rb', line 160 def queue_move_up(ids=[]) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:queue_move_up, arguments) {|b| b.gsub("-","_")} end |
#reset_conn ⇒ Object
49 50 51 52 53 54 55 56 57 |
# File 'lib/trans-api/connect.rb', line 49 def reset_conn @conn[:headers] = {} # authentication secret = ::Base64.encode64("#{@conn[:user]}:#{@conn[:pass]}") @conn[:headers]["Authorization"]= "Basic #{secret}" if @conn.include?(:user) && @conn.include?(:pass) # placeholder @conn[:headers]["X-Transmission-Session-Id"] = "" self end |
#session_close ⇒ Object
74 75 76 |
# File 'lib/trans-api/connect.rb', line 74 def session_close self.get_method(:session_close) end |
#session_get ⇒ Object
handles
62 63 64 |
# File 'lib/trans-api/connect.rb', line 62 def session_get self.get_method(:session_get) {|b| b.gsub("-","_")} end |
#session_set(arguments = {}) ⇒ Object
70 71 72 |
# File 'lib/trans-api/connect.rb', line 70 def session_set(arguments={}) self.get_method(:session_set, arguments) end |
#session_stats ⇒ Object
66 67 68 |
# File 'lib/trans-api/connect.rb', line 66 def session_stats self.get_method(:session_stats) {|b| b.gsub("-","_")} end |
#torrent_add(arguments = {}) ⇒ Object
112 113 114 115 116 117 |
# File 'lib/trans-api/connect.rb', line 112 def torrent_add(arguments={}) args = self.get_method(:torrent_add, arguments) {|b| b.gsub("-","_")} # omiting BUG: https://trac.transmissionbt.com/ticket/5614 return args[:torrent_duplicate] if args.include?(:torrent_duplicate) args[:torrent_added] end |
#torrent_get(fields = [:id, :name, :status], ids = []) ⇒ Object
78 79 80 81 82 83 |
# File 'lib/trans-api/connect.rb', line 78 def torrent_get(fields = [:id, :name, :status], ids = []) arguments = { fields: fields } arguments[:ids] = ids unless ids.empty? args = self.get_method(:torrent_get, arguments) args[:torrents] end |
#torrent_reannounce(ids = []) ⇒ Object
130 131 132 133 134 |
# File 'lib/trans-api/connect.rb', line 130 def torrent_reannounce(ids=[]) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:torrent_reannounce, arguments) end |
#torrent_remove(arguments = {}, ids = []) ⇒ Object
119 120 121 122 |
# File 'lib/trans-api/connect.rb', line 119 def torrent_remove(arguments={}, ids=[]) arguments[:ids] = ids unless ids.empty? self.get_method(:torrent_remove, arguments) {|b| b.gsub("-","_")} end |
#torrent_set(arguments = {}, ids = []) ⇒ Object
85 86 87 88 89 |
# File 'lib/trans-api/connect.rb', line 85 def torrent_set(arguments={}, ids = []) arguments[:ids] = ids unless ids.empty? args = self.get_method(:torrent_set, arguments) args[:torrents] end |
#torrent_set_location(arguments = {}, ids = []) ⇒ Object
136 137 138 139 |
# File 'lib/trans-api/connect.rb', line 136 def torrent_set_location(arguments={}, ids=[]) arguments[:ids] = ids unless ids.empty? self.get_method(:torrent_set_location, arguments) {|b| b.gsub("-","_")} end |
#torrent_start(ids = []) ⇒ Object
91 92 93 94 95 96 |
# File 'lib/trans-api/connect.rb', line 91 def torrent_start(ids = []) arguments = {} arguments[:ids] = ids unless ids.empty? args = self.get_method(:torrent_start, arguments) args[:torrents] end |
#torrent_start_now(ids = []) ⇒ Object
98 99 100 101 102 103 |
# File 'lib/trans-api/connect.rb', line 98 def torrent_start_now(ids = []) arguments = {} arguments[:ids] = ids unless ids.empty? args = self.get_method(:torrent_start_now, arguments) args[:torrents] end |
#torrent_stop(ids = []) ⇒ Object
105 106 107 108 109 110 |
# File 'lib/trans-api/connect.rb', line 105 def torrent_stop(ids = []) arguments = {} arguments[:ids] = ids unless ids.empty? args = self.get_method(:torrent_stop, arguments) args[:torrents] end |
#torrent_verify(ids = []) ⇒ Object
124 125 126 127 128 |
# File 'lib/trans-api/connect.rb', line 124 def torrent_verify(ids = []) arguments = {} arguments[:ids] = ids unless ids.empty? self.get_method(:torrent_verify, arguments) end |