Class: Miles::Scheduler
- Inherits:
-
Object
- Object
- Miles::Scheduler
- Includes:
- HTTParty
- Defined in:
- lib/miles/scheduler.rb
Instance Attribute Summary collapse
-
#base_uri ⇒ Object
readonly
Returns the value of attribute base_uri.
-
#host ⇒ Object
readonly
Returns the value of attribute host.
-
#port ⇒ Object
readonly
Returns the value of attribute port.
Instance Method Summary collapse
- #create_individual(callback, data, description, method, time) ⇒ Object
- #create_reoccurring(callback, data, description, method, delay, interval) ⇒ Object
- #delete_reoccurring(id) ⇒ Object
- #get_individual(id) ⇒ Object
- #get_reoccurring(id) ⇒ Object
-
#initialize(host, port = 80) ⇒ Scheduler
constructor
A new instance of Scheduler.
Constructor Details
#initialize(host, port = 80) ⇒ Scheduler
Returns a new instance of Scheduler.
10 11 12 13 14 15 |
# File 'lib/miles/scheduler.rb', line 10 def initialize(host, port=80) @host = host @port = port @base_uri = "#{host}#{port != 80 ? ':' + @port.to_s : ''}" self.class.base_uri @base_uri end |
Instance Attribute Details
#base_uri ⇒ Object (readonly)
Returns the value of attribute base_uri.
8 9 10 |
# File 'lib/miles/scheduler.rb', line 8 def base_uri @base_uri end |
#host ⇒ Object (readonly)
Returns the value of attribute host.
8 9 10 |
# File 'lib/miles/scheduler.rb', line 8 def host @host end |
#port ⇒ Object (readonly)
Returns the value of attribute port.
8 9 10 |
# File 'lib/miles/scheduler.rb', line 8 def port @port end |
Instance Method Details
#create_individual(callback, data, description, method, time) ⇒ Object
17 18 19 20 21 |
# File 'lib/miles/scheduler.rb', line 17 def create_individual(callback, data, description, method, time) req = {'callback' => callback, 'data' => data, 'description' => description, 'method' => method, 'time' => time} response = self.class.post('/individual', :body => req.to_json, :headers => {'Content-type' => 'application/json'}) return JSON.parse(response.body) end |
#create_reoccurring(callback, data, description, method, delay, interval) ⇒ Object
30 31 32 33 34 |
# File 'lib/miles/scheduler.rb', line 30 def create_reoccurring(callback, data, description, method, delay, interval) req = {'callback' => callback, 'data' => data, 'description' => description, 'method' => method, 'delay' => delay, 'interval' => interval} response = self.class.post('/reoccurring', :body => req.to_json, :headers => {'Content-type' => 'application/json'}) return JSON.parse(response.body) end |
#delete_reoccurring(id) ⇒ Object
43 44 45 46 |
# File 'lib/miles/scheduler.rb', line 43 def delete_reoccurring(id) response = self.class.delete("/reoccurring/#{id}") return response.code == 200 end |
#get_individual(id) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/miles/scheduler.rb', line 23 def get_individual(id) response = self.class.get("/individual/#{id}") ret = JSON.parse(response.body) ret['time'] = DateTime.parse(ret['time']) return ret end |
#get_reoccurring(id) ⇒ Object
36 37 38 39 40 41 |
# File 'lib/miles/scheduler.rb', line 36 def get_reoccurring(id) response = self.class.get("/reoccurring/#{id}") ret = JSON.parse(response.body) ret['last_ran'] = DateTime.parse(ret['last_ran']) return ret end |