Class: PivotalApi::Endpoints::Stories
- Inherits:
-
Object
- Object
- PivotalApi::Endpoints::Stories
- Defined in:
- lib/pivotal_api/endpoints/stories.rb
Instance Attribute Summary collapse
-
#client ⇒ Object
Returns the value of attribute client.
Instance Method Summary collapse
- #all(project_id, params = {}) ⇒ Object
- #comments ⇒ Object
- #create(project_id, params) ⇒ Object
- #delete(project_id, id) ⇒ Object
- #get(project_id, id) ⇒ Object
-
#initialize(client) ⇒ Stories
constructor
A new instance of Stories.
- #labels ⇒ Object
- #tasks ⇒ Object
- #update(project_id, id, params) ⇒ Object
Constructor Details
#initialize(client) ⇒ Stories
Returns a new instance of Stories.
6 7 8 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 6 def initialize(client) @client = client end |
Instance Attribute Details
#client ⇒ Object
Returns the value of attribute client.
4 5 6 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 4 def client @client end |
Instance Method Details
#all(project_id, params = {}) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 10 def all(project_id, params={}) data = client.paginate("/projects/#{project_id}/stories", params: params) raise PivotalApi::Errors::UnexpectedData, 'Array of stories expected' unless data.is_a? Array data.map do |story| Resources::Story.new({ project_id: project_id }.merge(story)) end end |
#comments ⇒ Object
45 46 47 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 45 def comments Endpoints::Comments.new(client) end |
#create(project_id, params) ⇒ Object
25 26 27 28 29 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 25 def create(project_id, params) data = client.post("/projects/#{project_id}/stories", params: params).body Resources::Story.new({ }.merge(data)) end |
#delete(project_id, id) ⇒ Object
37 38 39 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 37 def delete(project_id, id) client.delete("/projects/#{project_id}/stories/#{id}").body end |
#get(project_id, id) ⇒ Object
19 20 21 22 23 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 19 def get(project_id, id) data = client.get("/projects/#{project_id}/stories/#{id}").body Resources::Story.new({ project_id: project_id }.merge(data)) end |
#labels ⇒ Object
49 50 51 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 49 def labels Endpoints::Labels.new(client) end |
#tasks ⇒ Object
41 42 43 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 41 def tasks Endpoints::Tasks.new(client) end |
#update(project_id, id, params) ⇒ Object
31 32 33 34 35 |
# File 'lib/pivotal_api/endpoints/stories.rb', line 31 def update(project_id, id, params) data = client.put("/projects/#{project_id}/stories/#{id}", params: params).body Resources::Story.new({ }.merge(data)) end |