xrpc 0.1.6 → 0.1.7.1

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: 0f3d51cb6ae781b3eb9c5d63e2169cb50190953addaa2c893818b6e3da7e6e4b
4
- data.tar.gz: dd43f705448252a67bca0b722dc7feb8042722d76d55d8b9e79d21994a15affb
3
+ metadata.gz: 8825e70d17e8d6876f64a5c77de564a456ac77de4ddbcf4c39c78689cdbb183a
4
+ data.tar.gz: 4b577d36fa0b00b2dbdd4bfc39eea2f45a1bab19328c129b68ab872731804ba0
5
5
  SHA512:
6
- metadata.gz: e1622cf6190d363d507d1db065d00e8db8acbb744ed049c85de0fc71b206d3ae693ea79dd9a66d3f9be14f488821fedc1b70a6d6c6c8adbdda7bfaef9cf7c3f4
7
- data.tar.gz: eb7834ed2d23dbb57ca42686603ba8cdae429a7070923f44d0db5efb3e5fce8d08f2cee1c5f6f843d468c719315e23d3fcec69e6d362fae91ceaa7e92efa70f0
6
+ metadata.gz: bf67af9d4340fc5f7c22fa0fbcbf8c9bb08bc6827e3b55a8f074db25bf759f212e57b573ebfa74d91bdd8829eb4936635070515ad08a77e25a55d938f79efd4d
7
+ data.tar.gz: eca8e6351a22de1080cf6280c607031973dc7cbd5bdeb90128579627bfd605de98c12f8065605f4d84fe772b09c66b96e7b457d611d4eabe988fd445106c5477
data/lib/xrpc/client.rb CHANGED
@@ -9,13 +9,34 @@ module XRPC
9
9
  end
10
10
 
11
11
  class Client
12
- attr_reader :get, :post
12
+ attr_accessor :headers
13
+ attr_reader :token
13
14
 
14
15
  def initialize(base_url, token = nil)
15
- @headers = { :"Content-Type" => "application/json", :Authorization => "Bearer #{token}" }
16
+ @token = token
17
+ @headers = { :"Content-Type" => "application/json", :Authorization => "Bearer #{@token}" }
16
18
  @base_url = base_url
17
- @get = GetRequest.new(base_url, @headers)
18
- @post = PostRequest.new(base_url, @headers)
19
+ end
20
+
21
+ def headers!
22
+ @headers[:Authorization] = "Bearer #{@token}"
23
+ end
24
+
25
+ def token=(token)
26
+ @token = token
27
+ headers!
28
+ end
29
+
30
+ def get
31
+ GetRequest.new(base_url, @headers)
32
+ end
33
+
34
+ def post
35
+ PostRequest.new(base_url, @headers)
36
+ end
37
+
38
+ def inspect
39
+ "XRPC::Client(\"#{@base_url}\")"
19
40
  end
20
41
 
21
42
  class GetRequest
@@ -27,8 +48,9 @@ module XRPC
27
48
  end
28
49
 
29
50
  def method_missing(method_name, **params)
30
- response = self.class.get("/xrpc/#{method_name.to_s.gsub("_", ".")}", query: params, headers: @headers)
31
- response.body.empty? ? response.code : JSON.parse(response.body)
51
+ self.class.get("/xrpc/#{method_name.to_s.gsub("_", ".")}", query: params, headers: @headers).then do |response|
52
+ response.body.empty? ? response.code : JSON.parse(response.body)
53
+ end
32
54
  end
33
55
  end
34
56
 
data/lib/xrpc/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module XRPC
4
- VERSION = "0.1.6"
4
+ VERSION = "0.1.7.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xrpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shreyan Jain
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-24 00:00:00.000000000 Z
11
+ date: 2023-08-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json