Class: Twigg::Pivotal::Project

Inherits:
Resource
  • Object
show all
Defined in:
lib/twigg-pivotal/pivotal/project.rb

Overview

Models the project resource in Pivotal Tracker.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(json) ⇒ Project

Returns a new instance of Project.

Raises:

  • (ArgumentError)


16
17
18
19
# File 'lib/twigg-pivotal/pivotal/project.rb', line 16

def initialize(json)
  raise ArgumentError unless @pivotal_id = json['id']
  raise ArgumentError unless @name       = json['name']
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



5
6
7
# File 'lib/twigg-pivotal/pivotal/project.rb', line 5

def name
  @name
end

#pivotal_idObject (readonly)

Returns the value of attribute pivotal_id.



5
6
7
# File 'lib/twigg-pivotal/pivotal/project.rb', line 5

def pivotal_id
  @pivotal_id
end

Class Method Details

.projectsObject

Returns an array of all projects accessible with the configured access token.



10
11
12
13
# File 'lib/twigg-pivotal/pivotal/project.rb', line 10

def projects
  results = get 'projects', fields: 'name', paginate: false
  results.map { |project| new(project) }
end

Instance Method Details

#storiesObject

Returns the open stories for this project.



22
23
24
# File 'lib/twigg-pivotal/pivotal/project.rb', line 22

def stories
  Story.stories(@pivotal_id)
end