Module: SendGrid4r::REST::Ips::Warmup

Includes:
Request
Included in:
API
Defined in:
lib/sendgrid4r/rest/ips/warmup.rb

Overview

SendGrid Web API v3 Ip Management - Warmup

Defined Under Namespace

Classes: WarmupIp

Constant Summary

Constants included from Request

Request::BASE_URL

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Request

#create_args, #delete, #execute, #finish, #get, #patch, #post, #process_array_params, #process_url_params, #put

Class Method Details

.create_warmup_ip(resp) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 18

def self.create_warmup_ip(resp)
  return resp if resp.nil?
  WarmupIp.new(
    resp['ip'],
    resp['start_date'].nil? ? nil : Time.at(resp['start_date'])
  )
end

.create_warmup_ips(resp) ⇒ Object



13
14
15
16
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 13

def self.create_warmup_ips(resp)
  return resp if resp.nil?
  resp.map { |warmup_ip| Ips::Warmup.create_warmup_ip(warmup_ip) }
end

.url(ip_address = nil) ⇒ Object



26
27
28
29
30
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 26

def self.url(ip_address = nil)
  url = "#{BASE_URL}/ips/warmup"
  url = "#{url}/#{ip_address}" unless ip_address.nil?
  url
end

Instance Method Details

#delete_warmup_ip(ip:, &block) ⇒ Object



47
48
49
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 47

def delete_warmup_ip(ip:, &block)
  delete(@auth, Ips::Warmup.url(ip), &block)
end

#get_warmup_ip(ip:, &block) ⇒ Object



37
38
39
40
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 37

def get_warmup_ip(ip:, &block)
  resp = get(@auth, Ips::Warmup.url(ip), &block)
  finish(resp, @raw_resp) { |r| Ips::Warmup.create_warmup_ip(r) }
end

#get_warmup_ips(&block) ⇒ Object



32
33
34
35
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 32

def get_warmup_ips(&block)
  resp = get(@auth, Ips::Warmup.url, &block)
  finish(resp, @raw_resp) { |r| Ips::Warmup.create_warmup_ips(r) }
end

#post_warmup_ip(ip:, &block) ⇒ Object



42
43
44
45
# File 'lib/sendgrid4r/rest/ips/warmup.rb', line 42

def post_warmup_ip(ip:, &block)
  resp = post(@auth, Ips::Warmup.url, ip: ip, &block)
  finish(resp, @raw_resp) { |r| Ips::Warmup.create_warmup_ip(r) }
end