Sha256: a0edaaf2296923d2379fb623dba583d1eab7813e0bcaed3e1b5cbd420a43d1f8
Contents?: true
Size: 866 Bytes
Versions: 3
Compression:
Stored size: 866 Bytes
Contents
module TaskManager class NewTaskFile < TaskFile def pick(id) node = find_node(id) task = Task.new_from_node(node) yield(task) if block_given? handle_xml { node.remove } task end def delete(id) node = find_node(id) task = Task.new_from_node(node) handle_xml { node.remove } task end protected 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 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 def create_node(task) node = super node['created_at'] = time_now node end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
task_manager2-0.0.16 | lib/task_manager/new_task_file.rb |
task_manager2-0.0.15 | lib/task_manager/new_task_file.rb |
task_manager2-0.0.14 | lib/task_manager/new_task_file.rb |