chatoperastore 0.0.8 → 0.0.9

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 105d1b144172c1469aba86b943959f2f1f140dc948e7b2b1edd874bb71575765
4
- data.tar.gz: d2b7b2e64555f215f86df00286bd3040da8e901e41b440d10e49c9c7c336c2a1
3
+ metadata.gz: 81f4496c26ebf1e02be4b0bfa4ddead7727596e3692d406b54213d0de4b5d92c
4
+ data.tar.gz: c1c19a514ab5f077969efea860b5032403a2fbeffb0578026aa1146f41753a98
5
5
  SHA512:
6
- metadata.gz: ab61f884119e338abb1e3393efa86044d3961fb9b80a93b3be9425e2347f9cc8467931a47d17ca54ff3039b2ef71178ef6009ece4744bb72bcadb11def36b56f
7
- data.tar.gz: e0ae7f8910117c711356e59f16fbe18685960f7c0aef65613b9ffb832a0d0a47a2f7df03e86bc5915d3617b609f6b41d77511baf7fe8074f81c890a6fb1d3b5e
6
+ metadata.gz: 3d882fd5c87e59c4717e5b502194aa4e6af40979456f8eb1439a681ccec3b67832a2844e6b584f4fe789428b4b8db5bb29d9f364c06543d625df38b008850790
7
+ data.tar.gz: 99d8fc7ee90d046a5a79e01f345171f29ee09d01af8a64c8ca2d84d27d33f5c5b5afa1291d078729a711eef1c98e6ada99165f36ffb216347a84be500b069b6b
@@ -18,5 +18,4 @@
18
18
  module Chatoperastore
19
19
  class InvalidProviderError < StandardError; end
20
20
  class InvalidStoreResponseError < StandardError; end
21
-
22
21
  end
@@ -21,7 +21,7 @@ require_relative 'errors'
21
21
  module Chatoperastore
22
22
 
23
23
  module Requests
24
- def getRequestBypassSSLChecks(url, **params)
24
+ def getRequestBypassSSLChecks(url)
25
25
  uri = URI(url)
26
26
  req = Net::HTTP::Get.new(uri.path)
27
27
  res = Net::HTTP.start(
@@ -36,6 +36,24 @@ module Chatoperastore
36
36
  raise Chatoperastore::InvalidStoreResponseError.new "Invalid resp code " + res.code
37
37
  end
38
38
  end
39
+
40
+ def postRequestBypassSSLChecks(url, body)
41
+ uri = URI(url)
42
+ req = Net::HTTP::Post.new(uri.path)
43
+ req.content_type = 'application/json'
44
+ req.body = body.to_json
45
+ res = Net::HTTP.start(
46
+ uri.host, uri.port,
47
+ :use_ssl => uri.scheme == 'https',
48
+ :verify_mode => OpenSSL::SSL::VERIFY_NONE) do |https|
49
+ https.request(req)
50
+ end
51
+ if res.code == "200"
52
+ return JSON.parse(res.body)
53
+ else
54
+ raise Chatoperastore::InvalidStoreResponseError.new "Invalid resp code " + res.code
55
+ end
56
+ end
39
57
  end
40
58
 
41
59
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Chatoperastore
4
- VERSION = "0.0.8"
4
+ VERSION = "0.0.9"
5
5
  end
@@ -33,8 +33,13 @@ module Chatoperastore
33
33
 
34
34
  def initialize
35
35
  super
36
- if ENV.has_key?(LICENSE_STORE_PROVIDER)
37
- @base_url = ENV[LICENSE_STORE_PROVIDER]
36
+ if ENV.has_key?(LICENSE_STORE_PROVIDER) && !ENV[LICENSE_STORE_PROVIDER].strip.empty?
37
+ @base_url = ENV[LICENSE_STORE_PROVIDER].strip
38
+
39
+ if @base_url.end_with?("/")
40
+ @base_url = @base_url.chop
41
+ end
42
+
38
43
  unless VALID_BASEURLS.include?(@base_url)
39
44
  raise InvalidProviderError.new "Invalid Base Url value for chatopera store."
40
45
  end
@@ -52,7 +57,35 @@ module Chatoperastore
52
57
  end
53
58
 
54
59
  def getLicenseBasics(license_id)
55
- req_url = @base_url + BASE_PATH + "/quotawd/license/basics/" + license_id
60
+ req_values = nil
61
+ if license_id.kind_of?(String)
62
+ req_values = license_id
63
+ elsif license_id.kind_of?(Array)
64
+ req_values = license_id.join(',')
65
+ else
66
+ raise ArgumentError.new("Expected string or array<string>")
67
+ end
68
+
69
+ req_url = @base_url + BASE_PATH + "/quotawd/license/basics/" + req_values
70
+ resp_body = getRequestBypassSSLChecks(req_url)
71
+ if resp_body.include?("rc")
72
+ return resp_body
73
+ else
74
+ raise InvalidStoreResponseError.new "Invalid response"
75
+ end
76
+ end
77
+
78
+ def getLicenseStatus(license_id)
79
+ req_values = nil
80
+ if license_id.kind_of?(String)
81
+ req_values = license_id
82
+ elsif license_id.kind_of?(Array)
83
+ req_values = license_id.join(',')
84
+ else
85
+ raise ArgumentError.new("Expected string or array<string>")
86
+ end
87
+
88
+ req_url = @base_url + BASE_PATH + "/quotawd/license/status/" + req_values
56
89
  resp_body = getRequestBypassSSLChecks(req_url)
57
90
  if resp_body.include?("rc")
58
91
  return resp_body
@@ -61,5 +94,20 @@ module Chatoperastore
61
94
  end
62
95
  end
63
96
 
97
+ def write(license_id, serverinst_id, servicename, consumes)
98
+ body = { licenseId: license_id, serverinstId: serverinst_id, servicename: servicename, requestlangorsdk: "rubysdk" }
99
+
100
+ if consumes.kind_of?(Integer)
101
+ c = [consumes]
102
+ body["consumes"] = c
103
+ elsif consumes.kind_of?(Array)
104
+ body["consumes"] = consumes
105
+ end
106
+
107
+ req_url = @base_url + BASE_PATH + "/quotawd/write"
108
+ resp_body = postRequestBypassSSLChecks(req_url, body)
109
+ return resp_body
110
+ end
111
+
64
112
  end
65
113
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chatoperastore
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hai Liang Wang
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-30 00:00:00.000000000 Z
11
+ date: 2023-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -50,7 +50,7 @@ licenses:
50
50
  - Chunsong Public License, version 1.0
51
51
  metadata:
52
52
  homepage_uri: https://readthe.gitee.io/store-docs/
53
- post_install_message:
53
+ post_install_message:
54
54
  rdoc_options: []
55
55
  require_paths:
56
56
  - lib
@@ -65,8 +65,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
65
65
  - !ruby/object:Gem::Version
66
66
  version: '0'
67
67
  requirements: []
68
- rubygems_version: 3.4.22
69
- signing_key:
68
+ rubygems_version: 3.2.22
69
+ signing_key:
70
70
  specification_version: 4
71
71
  summary: Ruby SDK of Chatopera Store, https://store.chatopera.com
72
72
  test_files: []