Class: Easycron::Client
- Inherits:
-
Object
- Object
- Easycron::Client
- Defined in:
- lib/easycron/client.rb
Overview
Constant Summary collapse
- ENDPOINT =
'https://www.easycron.com'
- USER_AGENT =
"EasyCron API Ruby Cient/#{Easycron::VERSION}"
- DEFAULT_ADAPTERS =
[ Faraday::Adapter::NetHttp, Faraday::Adapter::Test ]
Instance Method Summary collapse
- #add(cron_job_name: nil, cron_expression:, url:, email_me:, log_output_length:, cookies: nil, posts: nil, via_tor: nil) ⇒ Object
- #delete(id:) ⇒ Object
- #detail(id:) ⇒ Object
- #disable(id:) ⇒ Object
- #edit(id:, cron_job_name: nil, cron_expression:, url:, email_me:, log_output_length:, cookies: nil, posts: nil, via_tor: nil) ⇒ Object
- #enable(id:) ⇒ Object
-
#initialize(token:, **options) ⇒ Client
constructor
A new instance of Client.
- #list(page: nil, size: nil, sortby: nil, order: nil) ⇒ Object
- #logs(id:) ⇒ Object
- #timezone ⇒ Object
Constructor Details
#initialize(token:, **options) ⇒ Client
Returns a new instance of Client.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/easycron/client.rb', line 11 def initialize(token: , **) raise ArgumentError, ':token is required.' if token.nil? @token = token @options = { url: ENDPOINT, }.merge() @conn = Faraday.new(@options) do |faraday| faraday.request :url_encoded faraday.response :json # content-type: text/html faraday.response :raise_error yield(faraday) if block_given? unless DEFAULT_ADAPTERS.any? {|i| faraday.builder.handlers.include?(i) } faraday.adapter Faraday.default_adapter end end @conn.headers[:user_agent] = USER_AGENT end |
Instance Method Details
#add(cron_job_name: nil, cron_expression:, url:, email_me:, log_output_length:, cookies: nil, posts: nil, via_tor: nil) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/easycron/client.rb', line 43 def add(cron_job_name: nil, cron_expression:, url: , email_me: , log_output_length: , cookies: nil, posts: nil, via_tor: nil) request(:add, cron_job_name: cron_job_name, cron_expression: cron_expression, url: url, email_me: email_me, log_output_length: log_output_length, cookies: , posts: posts, via_tor: via_tor, ) end |
#delete(id:) ⇒ Object
82 83 84 |
# File 'lib/easycron/client.rb', line 82 def delete(id: ) request(:delete, id: id) end |
#detail(id:) ⇒ Object
56 57 58 |
# File 'lib/easycron/client.rb', line 56 def detail(id: ) request(:detail, id: id) end |
#disable(id:) ⇒ Object
78 79 80 |
# File 'lib/easycron/client.rb', line 78 def disable(id: ) request(:disable, id: id) end |
#edit(id:, cron_job_name: nil, cron_expression:, url:, email_me:, log_output_length:, cookies: nil, posts: nil, via_tor: nil) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/easycron/client.rb', line 60 def edit(id: ,cron_job_name: nil, cron_expression:, url: , email_me: , log_output_length: , cookies: nil, posts: nil, via_tor: nil) request(:edit, id: id, cron_job_name: cron_job_name, cron_expression: cron_expression, url: url, email_me: email_me, log_output_length: log_output_length, cookies: , posts: posts, via_tor: via_tor, ) end |
#enable(id:) ⇒ Object
74 75 76 |
# File 'lib/easycron/client.rb', line 74 def enable(id: ) request(:enable, id: id) end |
#list(page: nil, size: nil, sortby: nil, order: nil) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/easycron/client.rb', line 34 def list(page: nil, size: nil, sortby: nil, order: nil) request(:list, page: page, size: size, sortby: sortby, order: order, ) end |
#logs(id:) ⇒ Object
86 87 88 |
# File 'lib/easycron/client.rb', line 86 def logs(id: ) request(:logs, id: id) end |
#timezone ⇒ Object
90 91 92 |
# File 'lib/easycron/client.rb', line 90 def timezone request(:timezone) end |