class TaskManager::NewTaskFile
Public Instance Methods
delete(id)
click to toggle source
# File lib/task_manager/new_task_file.rb, line 11 def delete(id) node = find_node(id) task = Task.new_from_node(node) handle_xml { node.remove } task end
pick(id) { |task| ... }
click to toggle source
# File lib/task_manager/new_task_file.rb, line 3 def pick(id) node = find_node(id) task = Task.new_from_node(node) yield(task) if block_given? handle_xml { node.remove } task end
Protected Instance Methods
create_node(task)
click to toggle source
Calls superclass method
# File lib/task_manager/new_task_file.rb, line 36 def create_node(task) node = super node['created_at'] = time_now node end
find_node(id)
click to toggle source
# File lib/task_manager/new_task_file.rb, line 20 def find_node(id) node = root_node.css('task').find { |t| t['id'].to_i == id.to_i } raise 'ID not exists'.colorize(:light_red) unless node node end
root_node()
click to toggle source
Calls superclass method
# File lib/task_manager/new_task_file.rb, line 26 def root_node @root_node ||= begin xml.css(NEW_NODE).first || begin node = xml.create_element(NEW_NODE) super.add_child(node) node end end end