class TaskManager::CurrentTaskFile

Public Instance Methods

add(task) click to toggle source
Calls superclass method
# File lib/task_manager/current_task_file.rb, line 3
def add(task)
  raise "You haven't finished the current task".colorize(:light_red) if current_node
  super
end
current() click to toggle source
# File lib/task_manager/current_task_file.rb, line 8
def current
  raise "You don't have any current task".colorize(:light_red) unless current_node
  Task.new_from_node(current_node)
end
pick() click to toggle source
# File lib/task_manager/current_task_file.rb, line 13
def pick
  task = current
  handle_xml { current_node.remove }
  task
end

Protected Instance Methods

create_node(task) click to toggle source
Calls superclass method
# File lib/task_manager/current_task_file.rb, line 35
def create_node(task)
  node = super
  node['started_at'] = time_now
  node
end
current_node() click to toggle source
# File lib/task_manager/current_task_file.rb, line 21
def current_node
  root_node.css(ELEMENT).first
end
root_node() click to toggle source
Calls superclass method
# File lib/task_manager/current_task_file.rb, line 25
def root_node
  @root_node ||= begin
    xml.css(CURRENT_NODE).first || begin
      node = xml.create_element(CURRENT_NODE)
      super.add_child(node)
      node
    end
  end
end