class Jira::Command::Sprint

Public Instance Methods

run() click to toggle source
# File lib/jira/commands/sprint.rb, line 14
def run
  return if rapid_view.empty?
  return if no_sprints?
  return if sprint.empty?
  render_table(
    [ 'Sprint', 'State' ],
    [ [ info['sprint']['name'], info['sprint']['state'] ] ]
  )
end

Private Instance Methods

info() click to toggle source
# File lib/jira/commands/sprint.rb, line 34
def info
  @info ||= sprint_api.sprint(rapid_view['id'], sprint['id'])
end
no_sprints?() click to toggle source
# File lib/jira/commands/sprint.rb, line 26
def no_sprints?
  if sprints.empty?
    puts "The #{rapid_view['name']} board has no sprints."
    return true
  end
  false
end
rapid_view() click to toggle source
# File lib/jira/commands/sprint.rb, line 57
def rapid_view
  keys = rapid_views.keys
  return '' if keys.empty?
  @rapid_view ||= rapid_views[
    io.select("Select a rapid view:", keys)
  ]
end
rapid_views() click to toggle source
# File lib/jira/commands/sprint.rb, line 65
def rapid_views
  @rapid_views ||= (
    rapid_views = {}
    sprint_api.rapid_views.each do |rapid_view|
      rapid_views[rapid_view['name']] = {
        'id'   => rapid_view['id'],
        'name' => rapid_view['name']
      }
    end
    rapid_views
  )
end
sprint() click to toggle source
# File lib/jira/commands/sprint.rb, line 38
def sprint
  @sprint ||= sprints[
    io.select("Select a sprint:", sprints.keys[-10..-1])
  ]
end
sprints() click to toggle source
# File lib/jira/commands/sprint.rb, line 44
def sprints
  @sprints ||= (
    sprints = {}
    sprint_api.sprints(rapid_view['id'])['sprints'].each do |sprint|
      sprints[sprint['name']] = {
        'id'   => sprint['id'],
        'name' => sprint['name']
      }
    end
    sprints
  )
end