xolphin-api 1.5.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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