Class: LabClient::Issues
- Inherits:
-
Common
- Object
- Common
- LabClient::Issues
show all
- Defined in:
- lib/labclient/issues/list.rb,
lib/labclient/issues/move.rb,
lib/labclient/issues/show.rb,
lib/labclient/issues/todo.rb,
lib/labclient/issues/notes.rb,
lib/labclient/issues/create.rb,
lib/labclient/issues/delete.rb,
lib/labclient/issues/update.rb,
lib/labclient/issues/closed_by.rb,
lib/labclient/issues/subscribe.rb,
lib/labclient/issues/time_stats.rb,
lib/labclient/issues/unsubscribe.rb,
lib/labclient/issues/agent_detail.rb,
lib/labclient/issues/group_issues.rb,
lib/labclient/issues/participants.rb,
lib/labclient/issues/project_issues.rb,
lib/labclient/issues/related_merge_requests.rb
Overview
Constant Summary
Constants included
from AccessLevel
AccessLevel::HUMAN_ACCESS_LEVELS, AccessLevel::MACHINE_ACCESS_LEVELS
Instance Attribute Summary
Attributes inherited from Common
#client
Instance Method Summary
collapse
-
#add_spent_time(project_id, mr_id, duration) ⇒ Object
-
#agent_detail(project_id, issue_id) ⇒ Object
-
#closed_by(project_id, issue_id) ⇒ Object
-
#create(project_id, query = {}) ⇒ Object
-
#delete(project_id, issue_id) ⇒ Object
-
#group_issues(group_id, query = {}) ⇒ Object
-
#list(query = {}) ⇒ Object
-
#move(project_id, issue_id, target_id) ⇒ Object
-
#participants(project_id, issue_id = nil) ⇒ Object
-
#project_issues(project_id, query = {}) ⇒ Object
-
#related_merge_requests(project_id, issue_id) ⇒ Object
-
#reset_spent_time(project_id, issue_id) ⇒ Object
-
#reset_time_estimate(project_id, issue_id) ⇒ Object
-
#show(project_id, issue_id) ⇒ Object
-
#subscribe(project_id, issue_id) ⇒ Object
-
#time_estimate(project_id, mr_id, duration) ⇒ Object
-
#time_stats(project_id, issue_id) ⇒ Object
-
#todo(project_id, issue_id) ⇒ Object
-
#unsubscribe(project_id, issue_id) ⇒ Object
-
#update(project_id, issue_id, query = {}) ⇒ Object
Methods inherited from Common
#api_methods, #api_methods_help, #format_id, #format_query_id, #format_query_ids, #format_time?, #group_name, #help, #initialize, #inspect, #klass, #protected_query_access_level, #query_access_level, #query_format_time
Methods included from Docs
#demo, #desc, #doc, docs, #example, #group_name, #help, json, #markdown, #navigation, #option, #result, #subtitle, #title
#human_access_level, #human_protected_access_level, #machine_access_level, #machine_protected_access_level
Instance Method Details
#add_spent_time(project_id, mr_id, duration) ⇒ Object
60
61
62
63
64
65
66
|
# File 'lib/labclient/issues/time_stats.rb', line 60
def add_spent_time(project_id, mr_id, duration)
project_id = format_id(project_id)
mr_id = format_id(mr_id)
duration = ChronicDuration.output(ChronicDuration.parse(duration.to_s), format: :short)
client.request(:post, "projects/#{project_id}/issues/#{mr_id}/add_spent_time", nil, duration: duration)
end
|
#agent_detail(project_id, issue_id) ⇒ Object
26
27
28
29
|
# File 'lib/labclient/issues/agent_detail.rb', line 26
def agent_detail(project_id, issue_id)
project_id = format_id(project_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}/user_agent_detail")
end
|
#closed_by(project_id, issue_id) ⇒ Object
22
23
24
25
|
# File 'lib/labclient/issues/closed_by.rb', line 22
def closed_by(project_id, issue_id)
project_id = format_id(project_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}/closed_by", MergeRequest)
end
|
#create(project_id, query = {}) ⇒ Object
34
35
36
37
38
39
|
# File 'lib/labclient/issues/create.rb', line 34
def create(project_id, query = {})
project_id = format_id(project_id)
format_query_id(:assignee_id, query)
client.request(:post, "projects/#{project_id}/issues", Issue, query)
end
|
#delete(project_id, issue_id) ⇒ Object
21
22
23
24
|
# File 'lib/labclient/issues/delete.rb', line 21
def delete(project_id, issue_id)
project_id = format_id(project_id)
client.request(:delete, "projects/#{project_id}/issues/#{issue_id}")
end
|
#group_issues(group_id, query = {}) ⇒ Object
22
23
24
25
26
27
|
# File 'lib/labclient/issues/group_issues.rb', line 22
def group_issues(group_id, query = {})
query[:created_after] = query[:created_after].to_time.iso8601 if format_time?(query[:created_after])
query[:created_before] = query[:created_before].to_time.iso8601 if format_time?(query[:created_before])
client.request(:get, "groups/#{group_id}/issues", Issue, query)
end
|
#list(query = {}) ⇒ Object
51
52
53
54
55
56
|
# File 'lib/labclient/issues/list.rb', line 51
def list(query = {})
query[:created_after] = query[:created_after].to_time.iso8601 if format_time?(query[:created_after])
query[:created_before] = query[:created_before].to_time.iso8601 if format_time?(query[:created_before])
client.request(:get, 'issues', Issue, query)
end
|
#move(project_id, issue_id, target_id) ⇒ Object
21
22
23
24
25
26
|
# File 'lib/labclient/issues/move.rb', line 21
def move(project_id, issue_id, target_id)
project_id = format_id(project_id)
target_id = format_id(target_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/move", Issue, to_project_id: target_id)
end
|
#participants(project_id, issue_id = nil) ⇒ Object
29
30
31
32
33
|
# File 'lib/labclient/issues/participants.rb', line 29
def participants(project_id, issue_id = nil)
project_id = format_id(project_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}/participants", User)
end
|
#project_issues(project_id, query = {}) ⇒ Object
22
23
24
25
26
27
28
29
|
# File 'lib/labclient/issues/project_issues.rb', line 22
def project_issues(project_id, query = {})
project_id = format_id(project_id)
query[:created_after] = query[:created_after].to_time.iso8601 if format_time?(query[:created_after])
query[:created_before] = query[:created_before].to_time.iso8601 if format_time?(query[:created_before])
client.request(:get, "projects/#{project_id}/issues", Issue, query)
end
|
23
24
25
26
27
28
|
# File 'lib/labclient/issues/related_merge_requests.rb', line 23
def related_merge_requests(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}/related_merge_requests", MergeRequest)
end
|
#reset_spent_time(project_id, issue_id) ⇒ Object
150
151
152
153
154
155
|
# File 'lib/labclient/issues/time_stats.rb', line 150
def reset_spent_time(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/reset_spent_time")
end
|
#reset_time_estimate(project_id, issue_id) ⇒ Object
126
127
128
129
130
131
|
# File 'lib/labclient/issues/time_stats.rb', line 126
def reset_time_estimate(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/reset_time_estimate")
end
|
#show(project_id, issue_id) ⇒ Object
14
15
16
17
18
19
|
# File 'lib/labclient/issues/show.rb', line 14
def show(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}", Issue)
end
|
#subscribe(project_id, issue_id) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/labclient/issues/subscribe.rb', line 24
def subscribe(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/subscribe", Issue)
end
|
#time_estimate(project_id, mr_id, duration) ⇒ Object
99
100
101
102
103
104
105
|
# File 'lib/labclient/issues/time_stats.rb', line 99
def time_estimate(project_id, mr_id, duration)
project_id = format_id(project_id)
mr_id = format_id(mr_id)
duration = ChronicDuration.output(ChronicDuration.parse(duration.to_s), format: :short)
client.request(:post, "projects/#{project_id}/issues/#{mr_id}/time_estimate", nil, duration: duration)
end
|
#time_stats(project_id, issue_id) ⇒ Object
22
23
24
25
26
27
|
# File 'lib/labclient/issues/time_stats.rb', line 22
def time_stats(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:get, "projects/#{project_id}/issues/#{issue_id}/time_stats")
end
|
#todo(project_id, issue_id) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/labclient/issues/todo.rb', line 24
def todo(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/todo", Todo)
end
|
#unsubscribe(project_id, issue_id) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/labclient/issues/unsubscribe.rb', line 24
def unsubscribe(project_id, issue_id)
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:post, "projects/#{project_id}/issues/#{issue_id}/unsubscribe", Issue)
end
|
#update(project_id, issue_id, query = {}) ⇒ Object
55
56
57
58
59
60
|
# File 'lib/labclient/issues/update.rb', line 55
def update(project_id, issue_id, query = {})
project_id = format_id(project_id)
issue_id = format_id(issue_id)
client.request(:put, "projects/#{project_id}/issues/#{issue_id}", Issue, query)
end
|