xolphin-api 1.5.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +13 -12
  3. data/.rspec +2 -2
  4. data/.rubocop.yml +28 -28
  5. data/.travis.yml +5 -5
  6. data/CHANGELOG.md +19 -0
  7. data/Gemfile +6 -6
  8. data/LICENSE.txt +21 -21
  9. data/README.md +169 -169
  10. data/Rakefile +12 -12
  11. data/bin/console +14 -14
  12. data/bin/setup +8 -8
  13. data/examples/_credentials.rb +9 -8
  14. data/examples/certificate_cancel.rb +6 -6
  15. data/examples/certificate_reissue.rb +23 -25
  16. data/examples/certificate_renew.rb +22 -22
  17. data/examples/get_notes.rb +9 -9
  18. data/examples/invoices_get.rb +7 -0
  19. data/examples/request_create_ee.rb +29 -29
  20. data/examples/request_validation_call.rb +5 -5
  21. data/examples/requests_get.rb +7 -7
  22. data/examples/send_csa_email.rb +5 -5
  23. data/examples/send_note.rb +6 -6
  24. data/lib/xolphin/api/certificate_requests/certificate_reissue.rb +47 -47
  25. data/lib/xolphin/api/certificate_requests/certificate_renew.rb +51 -51
  26. data/lib/xolphin/api/certificate_requests/create_certificate_request.rb +53 -52
  27. data/lib/xolphin/api/certificate_requests/create_ee_request.rb +28 -33
  28. data/lib/xolphin/api/client.rb +25 -21
  29. data/lib/xolphin/api/dcv_type.rb +9 -9
  30. data/lib/xolphin/api/endpoint/certificate.rb +59 -59
  31. data/lib/xolphin/api/endpoint/invoice.rb +40 -0
  32. data/lib/xolphin/api/endpoint/request.rb +90 -86
  33. data/lib/xolphin/api/endpoint/support.rb +47 -47
  34. data/lib/xolphin/api/format_type.rb +12 -12
  35. data/lib/xolphin/api/http.rb +67 -67
  36. data/lib/xolphin/api/invoice_format_type.rb +8 -0
  37. data/lib/xolphin/api/product_type.rb +9 -9
  38. data/lib/xolphin/api/responses/base.rb +43 -43
  39. data/lib/xolphin/api/responses/certificate.rb +53 -53
  40. data/lib/xolphin/api/responses/certificates.rb +25 -25
  41. data/lib/xolphin/api/responses/csr_data.rb +43 -43
  42. data/lib/xolphin/api/responses/invoice.rb +57 -0
  43. data/lib/xolphin/api/responses/invoices.rb +25 -0
  44. data/lib/xolphin/api/responses/note.rb +45 -37
  45. data/lib/xolphin/api/responses/notes.rb +23 -24
  46. data/lib/xolphin/api/responses/product.rb +53 -53
  47. data/lib/xolphin/api/responses/product_price.rb +27 -27
  48. data/lib/xolphin/api/responses/products.rb +25 -25
  49. data/lib/xolphin/api/responses/request.rb +119 -119
  50. data/lib/xolphin/api/responses/request_ee.rb +29 -29
  51. data/lib/xolphin/api/responses/request_validation.rb +37 -37
  52. data/lib/xolphin/api/responses/request_validation_domain.rb +51 -35
  53. data/lib/xolphin/api/responses/requests.rb +25 -25
  54. data/lib/xolphin/api/responses/validation_call.rb +23 -0
  55. data/lib/xolphin/api/responses/validation_calls.rb +25 -0
  56. data/lib/xolphin/api/version.rb +5 -5
  57. data/lib/xolphin/api.rb +38 -32
  58. data/xolphin-api.gemspec +25 -26
  59. metadata +17 -9
  60. data/xolphin-api-0.1.0.gem +0 -0
@@ -1,9 +1,9 @@
1
- module Xolphin
2
- module Api
3
- module ProductType
4
- SINGLE = "SINGLE"
5
- MULTI = "MULTI"
6
- WILDCARD = "WILDCARD"
7
- end
8
- end
9
- end
1
+ module Xolphin
2
+ module Api
3
+ module ProductType
4
+ SINGLE = "SINGLE"
5
+ MULTI = "MULTI"
6
+ WILDCARD = "WILDCARD"
7
+ end
8
+ end
9
+ end
@@ -1,43 +1,43 @@
1
- module Xolphin
2
- module Api
3
- module Responses
4
- class Base
5
- def initialize(data)
6
- @data = data
7
- end
8
-
9
- def error?
10
- errors || message
11
- end
12
-
13
- def errors
14
- @data["errors"]
15
- end
16
-
17
- def message
18
- @data["message"]
19
- end
20
-
21
- def page
22
- @data["page"]
23
- end
24
-
25
- def pages
26
- @data["pages"]
27
- end
28
-
29
- def limit
30
- @data["limit"]
31
- end
32
-
33
- def total
34
- @data["total"]
35
- end
36
-
37
- def _embedded
38
- @data["_embedded"]
39
- end
40
- end
41
- end
42
- end
43
- end
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class Base
5
+ def initialize(data)
6
+ @data = data
7
+ end
8
+
9
+ def error?
10
+ errors || message
11
+ end
12
+
13
+ def errors
14
+ @data["errors"]
15
+ end
16
+
17
+ def message
18
+ @data["message"]
19
+ end
20
+
21
+ def page
22
+ @data["page"]
23
+ end
24
+
25
+ def pages
26
+ @data["pages"]
27
+ end
28
+
29
+ def limit
30
+ @data["limit"]
31
+ end
32
+
33
+ def total
34
+ @data["total"]
35
+ end
36
+
37
+ def _embedded
38
+ @data["_embedded"]
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -1,53 +1,53 @@
1
- require 'time'
2
-
3
- module Xolphin
4
- module Api
5
- module Responses
6
- class Certificate < Base
7
- def initialize(data)
8
- super(data)
9
- end
10
-
11
- def id
12
- @data["id"]
13
- end
14
-
15
- def domain_name
16
- @data["domainName"]
17
- end
18
-
19
- def subject_alternative_names
20
- @data["subjectAlternativeNames"]
21
- end
22
-
23
- def date_issued
24
- Time.parse(@data["dateIssued"])
25
- end
26
-
27
- def date_expired
28
- Time.parse(@data["dateExpired"])
29
- end
30
-
31
- def company
32
- @data["company"]
33
- end
34
-
35
- def customer_id
36
- @data["customerId"]
37
- end
38
-
39
- def expired?
40
- date_expired <= Time.now
41
- end
42
-
43
- def product
44
- @product ||= begin
45
- if _embedded && _embedded["product"]
46
- Product.new(_embedded["product"])
47
- end
48
- end
49
- end
50
- end
51
- end
52
- end
53
- end
1
+ require 'time'
2
+
3
+ module Xolphin
4
+ module Api
5
+ module Responses
6
+ class Certificate < Base
7
+ def initialize(data)
8
+ super(data)
9
+ end
10
+
11
+ def id
12
+ @data["id"]
13
+ end
14
+
15
+ def domain_name
16
+ @data["domainName"]
17
+ end
18
+
19
+ def subject_alternative_names
20
+ @data["subjectAlternativeNames"]
21
+ end
22
+
23
+ def date_issued
24
+ Time.parse(@data["dateIssued"])
25
+ end
26
+
27
+ def date_expired
28
+ Time.parse(@data["dateExpired"])
29
+ end
30
+
31
+ def company
32
+ @data["company"]
33
+ end
34
+
35
+ def customer_id
36
+ @data["customerId"]
37
+ end
38
+
39
+ def expired?
40
+ date_expired <= Time.now
41
+ end
42
+
43
+ def product
44
+ @product ||= begin
45
+ if _embedded && _embedded["product"]
46
+ Product.new(_embedded["product"])
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -1,25 +1,25 @@
1
- module Xolphin
2
- module Api
3
- module Responses
4
- class Certificates < Base
5
- def initialize(data)
6
- super(data)
7
- end
8
-
9
- def certificates
10
- @certificates ||= begin
11
- certificates = []
12
-
13
- if _embedded && _embedded["certificates"]
14
- _embedded["certificates"].each do |certificate|
15
- certificates << Certificate.new(certificate)
16
- end
17
- end
18
-
19
- certificates
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class Certificates < Base
5
+ def initialize(data)
6
+ super(data)
7
+ end
8
+
9
+ def certificates
10
+ @certificates ||= begin
11
+ certificates = []
12
+
13
+ if _embedded && _embedded["certificates"]
14
+ _embedded["certificates"].each do |certificate|
15
+ certificates << Certificate.new(certificate)
16
+ end
17
+ end
18
+
19
+ certificates
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,43 +1,43 @@
1
- module Xolphin
2
- module Api
3
- module Responses
4
- class CsrData < Base
5
- def initialize(data)
6
- super(data)
7
- end
8
-
9
- def type
10
- @data["type"]
11
- end
12
-
13
- def size
14
- @data["size"]
15
- end
16
-
17
- def company
18
- @data["company"]
19
- end
20
-
21
- def cn
22
- @data["cn"]
23
- end
24
-
25
- def state
26
- @data["state"]
27
- end
28
-
29
- def city
30
- @data["city"]
31
- end
32
-
33
- def country
34
- @data["country"]
35
- end
36
-
37
- def alt_names
38
- @data["altNames"]
39
- end
40
- end
41
- end
42
- end
43
- end
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class CsrData < Base
5
+ def initialize(data)
6
+ super(data)
7
+ end
8
+
9
+ def type
10
+ @data["type"]
11
+ end
12
+
13
+ def size
14
+ @data["size"]
15
+ end
16
+
17
+ def company
18
+ @data["company"]
19
+ end
20
+
21
+ def cn
22
+ @data["cn"]
23
+ end
24
+
25
+ def state
26
+ @data["state"]
27
+ end
28
+
29
+ def city
30
+ @data["city"]
31
+ end
32
+
33
+ def country
34
+ @data["country"]
35
+ end
36
+
37
+ def alt_names
38
+ @data["altNames"]
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,57 @@
1
+ require 'time'
2
+
3
+ module Xolphin
4
+ module Api
5
+ module Responses
6
+ class Invoice < Base
7
+ def initialize(data)
8
+ super(data)
9
+ end
10
+
11
+ def id
12
+ @data['id']
13
+ end
14
+
15
+ def currency
16
+ @data['currency']
17
+ end
18
+
19
+ def amount
20
+ @data['amount']
21
+ end
22
+
23
+ def tax
24
+ @data['tax']
25
+ end
26
+
27
+ def invoice_number
28
+ @data['invoiceNr']
29
+ end
30
+
31
+ def amount_paid
32
+ @data['amountPaid']
33
+ end
34
+
35
+ def status
36
+ @data['status']
37
+ end
38
+
39
+ def total
40
+ @data['total']
41
+ end
42
+
43
+ def date_created
44
+ Time.parse(@data['date_created'])
45
+ end
46
+
47
+ def date_reminder
48
+ Time.parse(@data['date_reminder'])
49
+ end
50
+
51
+ def date_payed
52
+ Time.parse(@data['date_payed'])
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,25 @@
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class Invoices < Base
5
+ def initialize(data)
6
+ super(data)
7
+ end
8
+
9
+ def invoices
10
+ @invoices ||= begin
11
+ invoices = []
12
+
13
+ if _embedded && _embedded["invoices"]
14
+ _embedded["invoices"].each do |invoice|
15
+ invoices << Invoice.new(invoice)
16
+ end
17
+ end
18
+
19
+ invoices
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -1,37 +1,45 @@
1
- require 'time'
2
-
3
- module Xolphin
4
- module Api
5
- module Responses
6
- class Note < Base
7
- def initialize(data)
8
- super(data)
9
- end
10
-
11
- def contact
12
- @data["contact"]
13
- end
14
-
15
- def staff
16
- @data["staff"]
17
- end
18
-
19
- def date
20
- @data["date"]
21
- end
22
-
23
- def time
24
- @data["time"]
25
- end
26
-
27
- def message_body
28
- @data["message"]
29
- end
30
-
31
- def created_at
32
- Time.parse(@data["createdAt"])
33
- end
34
- end
35
- end
36
- end
37
- end
1
+ require 'time'
2
+
3
+ module Xolphin
4
+ module Api
5
+ module Responses
6
+ class Note < Base
7
+ def initialize(data)
8
+ super(data)
9
+ end
10
+
11
+ def id
12
+ @data["id"]
13
+ end
14
+
15
+ def contact
16
+ @data["contact"]
17
+ end
18
+
19
+ def staff
20
+ @data["staff"]
21
+ end
22
+
23
+ def date
24
+ @data["date"]
25
+ end
26
+
27
+ def time
28
+ @data["time"]
29
+ end
30
+
31
+ def message_body
32
+ @data["message"]
33
+ end
34
+
35
+ def created_at
36
+ Time.parse(@data["createdAt"])
37
+ end
38
+
39
+ def end_customer
40
+ @data['endCustomer']
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -1,24 +1,23 @@
1
- module Xolphin
2
- module Api
3
- module Responses
4
- class Notes < Base
5
- def initialize(data)
6
- super(data)
7
- end
8
-
9
- def notes
10
- @notes ||= begin
11
- notes = []
12
- if _embedded && _embedded["notes"]
13
- _embedded["notes"].each do |note|
14
- notes << Note.new(note)
15
- end
16
- end
17
- notes
18
- end
19
- end
20
-
21
- end
22
- end
23
- end
24
- end
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class Notes < Base
5
+ def initialize(data)
6
+ super(data)
7
+ end
8
+
9
+ def notes
10
+ @notes ||= begin
11
+ notes = []
12
+ if _embedded && _embedded["notes"]
13
+ _embedded["notes"].each do |note|
14
+ notes << Note.new(note)
15
+ end
16
+ end
17
+ notes
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -1,53 +1,53 @@
1
- module Xolphin
2
- module Api
3
- module Responses
4
- class Product < Base
5
- def initialize(data)
6
- super(data)
7
- end
8
-
9
- def prices
10
- @prices ||= begin
11
- prices = []
12
-
13
- if @data["prices"]
14
- @data["prices"].each do |price|
15
- prices << ProductPrice.new(price)
16
- end
17
- end
18
-
19
- prices
20
- end
21
- end
22
-
23
- def id
24
- @data["id"]
25
- end
26
-
27
- def brand
28
- @data["brand"]
29
- end
30
-
31
- def name
32
- @data["name"]
33
- end
34
-
35
- def type
36
- @data["type"]
37
- end
38
-
39
- def validation
40
- @data["validation"]
41
- end
42
-
43
- def included_domains
44
- @data["includedDomains"]
45
- end
46
-
47
- def max_domains
48
- @data["maxDomains"]
49
- end
50
- end
51
- end
52
- end
53
- end
1
+ module Xolphin
2
+ module Api
3
+ module Responses
4
+ class Product < Base
5
+ def initialize(data)
6
+ super(data)
7
+ end
8
+
9
+ def prices
10
+ @prices ||= begin
11
+ prices = []
12
+
13
+ if @data["prices"]
14
+ @data["prices"].each do |price|
15
+ prices << ProductPrice.new(price)
16
+ end
17
+ end
18
+
19
+ prices
20
+ end
21
+ end
22
+
23
+ def id
24
+ @data["id"]
25
+ end
26
+
27
+ def brand
28
+ @data["brand"]
29
+ end
30
+
31
+ def name
32
+ @data["name"]
33
+ end
34
+
35
+ def type
36
+ @data["type"]
37
+ end
38
+
39
+ def validation
40
+ @data["validation"]
41
+ end
42
+
43
+ def included_domains
44
+ @data["includedDomains"]
45
+ end
46
+
47
+ def max_domains
48
+ @data["maxDomains"]
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end