Class: BacklogApiClient::Client
- Inherits:
-
Object
- Object
- BacklogApiClient::Client
show all
- Defined in:
- lib/backlog-api-client/space.rb,
lib/backlog-api-client/users.rb,
lib/backlog-api-client/client.rb,
lib/backlog-api-client/issues.rb
Defined Under Namespace
Classes: Issues, Space, Users
Constant Summary
collapse
- API_PATH =
'/api/v2'
Instance Method Summary
collapse
Constructor Details
#initialize(space_name, api_key) ⇒ Client
Returns a new instance of Client.
7
8
9
10
11
12
|
# File 'lib/backlog-api-client/client.rb', line 7
def initialize(space_name, api_key)
@space_name = space_name
@api_key = { apiKey: api_key }
backlog_url = (space_name =~ %r{^https?://.*} ? space_name : "https://#{space_name}")
@http_cli = Faraday.new(url: "#{backlog_url}#{API_PATH}")
end
|
Instance Method Details
#delete(resource_path) ⇒ Object
49
50
51
|
# File 'lib/backlog-api-client/client.rb', line 49
def delete(resource_path)
@http_cli.delete "#{resource_path}#{to_request_params(@api_key)}"
end
|
#file_upload(resource_path, file) ⇒ Object
43
44
45
46
47
|
# File 'lib/backlog-api-client/client.rb', line 43
def file_upload(resource_path, file)
@file_upload_cli ||= file_upload_cli
payload = { file: Faraday::UploadIO.new(file, 'application/octet-stream') }
@file_upload_cli.post "#{resource_path}#{to_request_params(@api_key)}", payload
end
|
#get(resource_path, params = {}) ⇒ Object
14
15
16
17
|
# File 'lib/backlog-api-client/client.rb', line 14
def get(resource_path, params = {})
params.merge!(@api_key)
@http_cli.get "#{resource_path}#{to_request_params(params)}"
end
|
#patch(resource_path, request = {}) ⇒ Object
27
28
29
30
31
32
33
|
# File 'lib/backlog-api-client/client.rb', line 27
def patch(resource_path, request = {})
@http_cli.patch do |req|
req.url "#{resource_path}#{to_request_params(@api_key)}"
req.['Content-Type'] = 'application/x-www-form-urlencoded'
req.body = build_request_body(request)
end
end
|
#post(resource_path, request = {}) ⇒ Object
19
20
21
22
23
24
25
|
# File 'lib/backlog-api-client/client.rb', line 19
def post(resource_path, request = {})
@http_cli.post do |req|
req.url "#{resource_path}#{to_request_params(@api_key)}"
req.['Content-Type'] = 'application/x-www-form-urlencoded'
req.body = build_request_body(request)
end
end
|
#put(resource_path, request = {}) ⇒ Object
35
36
37
38
39
40
41
|
# File 'lib/backlog-api-client/client.rb', line 35
def put(resource_path, request = {})
@http_cli.put do |req|
req.url "#{resource_path}#{to_request_params(@api_key)}"
req.['Content-Type'] = 'application/x-www-form-urlencoded'
req.body = build_request_body(request)
end
end
|