Class: Xolphin::Api::Endpoint::Certificate

Inherits:
Object
  • Object
show all
Defined in:
lib/xolphin/api/endpoint/certificate.rb

Instance Method Summary collapse

Constructor Details

#initialize(http) ⇒ Certificate

Returns a new instance of Certificate.



5
6
7
# File 'lib/xolphin/api/endpoint/certificate.rb', line 5

def initialize(http)
  @http = http
end

Instance Method Details

#allObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/xolphin/api/endpoint/certificate.rb', line 9

def all
  certificates = []

  result = @http.get("/certificates", page: 1)
  response = Xolphin::Api::Responses::Certificates.new(result)

  unless response.error?
    certificates = response.certificates
    while response.page < response.pages
      result = @http.get("/certificates", page: response.page + 1)
      response = Xolphin::Api::Responses::Certificates.new(result)
      break if response.error?

      certificates += response.certificates
    end
  end

  certificates
end

#cancel(id, reason, revoke = nil) ⇒ Object



49
50
51
52
53
54
55
# File 'lib/xolphin/api/endpoint/certificate.rb', line 49

def cancel(id, reason, revoke = nil)
  revoke ||= false
  @http.post("/certificates/#{id}/cancel", [
               'reason' => reason,
               'revoke' => revoke
             ])
end

#download(id, format = Xolphin::Api::FormatType::CRT) ⇒ Object



35
36
37
# File 'lib/xolphin/api/endpoint/certificate.rb', line 35

def download(id, format = Xolphin::Api::FormatType::CRT)
  @http.download("/certificates/#{id}/download", format: format)
end

#get(id) ⇒ Object



29
30
31
32
33
# File 'lib/xolphin/api/endpoint/certificate.rb', line 29

def get(id)
  result = @http.get("/certificates/#{id}")

  Xolphin::Api::Responses::Certificate.new(result)
end

#reissue(id, request) ⇒ Object



39
40
41
42
# File 'lib/xolphin/api/endpoint/certificate.rb', line 39

def reissue(id, request)
  result = @http.post("/certificates/#{id}/reissue", request.to_param)
  Xolphin::Api::Responses::Requests.new(result)
end

#renew(id, request) ⇒ Object



44
45
46
47
# File 'lib/xolphin/api/endpoint/certificate.rb', line 44

def renew(id, request)
  result = @http.post("/certificates/#{id}/renew", request.to_param)
  Xolphin::Api::Responses::Requests.new(result)
end