class Redminer::Issue

Attributes

author[RW]
category[RW]
created_on[RW]
description[RW]
due_date[RW]
id[R]
priority[RW]
project[RW]
start_date[RW]
status[RW]
subject[RW]
tracker[RW]
updated_on[RW]

Public Class Methods

new(server, id = nil) click to toggle source
# File lib/redminer/issue.rb, line 10
def initialize(server, id = nil)
  @server = server
  unless id.nil?
    @id = id
    self.retrieve
  end
end

Public Instance Methods

craete() click to toggle source
# File lib/redminer/issue.rb, line 30
def craete
  server.post("/issues.json", to_hash)
end
retrieve() click to toggle source
# File lib/redminer/issue.rb, line 18
def retrieve
  response = server.get("/issues/#{id}.json")
  raise "#{id} issue does not exists" if response.nil?
  origin = response["issue"]
  self.all = origin
  self
end
sync() click to toggle source
# File lib/redminer/issue.rb, line 26
def sync
  (@id.nil? ? create : update)
end
update(note = nil) click to toggle source
# File lib/redminer/issue.rb, line 34
def update(note = nil)
  params = to_hash.merge(:notes => note) unless note.nil?
  server.put("/issues/#{id}.json", params)
end

Private Instance Methods

to_hash() click to toggle source
# File lib/redminer/issue.rb, line 40
def to_hash
  {
    :subject => @subject,
    :description => @description,
    :project => @project
  }
end