Class: LabClient::ProjectMilestone

Inherits:
Klass show all
Includes:
ClassHelpers
Defined in:
lib/labclient/projects/milestones/project_milestone.rb

Overview

Inspect Helper

Instance Attribute Summary

Attributes inherited from Klass

#client

Attributes inherited from LabStruct

#response, #table

Instance Method Summary collapse

Methods included from ClassHelpers

#has?, #keys, #raw

Methods inherited from Klass

#api_methods, #collect_project_id, #collect_release_id, #collect_repository_id, date_time_attrs, #format_time?, #group_name, #help, #initialize, #klass, #quiet?, #success?, #to_json, #update_self, user_attrs, #valid_group_project_levels, #verbose

Methods included from Docs

#demo, #desc, #doc, docs, #example, #group_name, #help, json, #markdown, #navigation, #option, #result, #subtitle, #title

Methods included from CurlHelper

#curl

Methods included from Logger

#logger, logger, logger_setup

Methods inherited from LabStruct

#[], #[]=, #as_json, #client, #initialize, #key?, #keys, #method_missing, #respond_to_missing?, #slice, #success?, #to_h

Constructor Details

This class inherits a constructor from LabClient::Klass

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class LabClient::LabStruct

Instance Method Details

#burndownObject



35
36
37
38
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 35

def burndown
  project_id = collect_project_id
  client.projects.milestones.burndown(project_id, id)
end

#deleteObject



40
41
42
43
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 40

def delete
  project_id = collect_project_id
  client.projects.milestones.delete(project_id, id)
end

#inspectObject



7
8
9
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 7

def inspect
  "#<ProjectMilestone id: #{id}, title: #{title}>"
end

#issuesObject



25
26
27
28
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 25

def issues
  project_id = collect_project_id
  client.projects.milestones.issues(project_id, id)
end

#merge_requestsObject



30
31
32
33
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 30

def merge_requests
  project_id = collect_project_id
  client.projects.milestones.merge_requests(project_id, id)
end

#projectObject



11
12
13
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 11

def project
  client.projects.show project_id
end

#promoteObject



20
21
22
23
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 20

def promote
  project_id = collect_project_id
  client.projects.milestones.promote(project_id, id)
end

#update(query = {}) ⇒ Object



15
16
17
18
# File 'lib/labclient/projects/milestones/project_milestone.rb', line 15

def update(query = {})
  project_id = collect_project_id
  update_self client.projects.milestones.update(project_id, id, query)
end