Sha256: cae51ce83e03d15d87d67adaf5bfa22d49f92791f2ec2a34d7af170cb02810bb

Contents?: true

Size: 877 Bytes

Versions: 7

Compression:

Stored size: 877 Bytes

Contents

require 'thor'

module TaskManager
  class Cli < Thor
    include Thor::Actions

    desc 'add', 'Add a new task to the waiting queue'
    method_option :name, aliases: '-n', desc: 'Name of the task', type: :string, required: true
    method_option :score, aliases: '-s', desc: 'Score of the task', type: :numeric
    def add
      TaskManager.add(options[:name], options[:score])
    end

    desc 'pick', 'Pick a task from the waiting queue'
    method_option :id, aliases: '-i', desc: 'ID of the task', type: :numeric, required: true
    def pick
      TaskManager.pick(options[:id])
    end

    desc 'current', 'Current task'
    def current
      TaskManager.current
    end

    desc 'finish', 'Finish the current task'
    def finish
      TaskManager.finish
    end

    desc 'stats', 'Statistics of all queues'
    def stats
      TaskManager.stats
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
task_manager2-0.0.13 lib/task_manager/cli.rb
task_manager2-0.0.12 lib/task_manager/cli.rb
task_manager2-0.0.11 lib/task_manager/cli.rb
task_manager2-0.0.10 lib/task_manager/cli.rb
task_manager2-0.0.9 lib/task_manager/cli.rb
task_manager2-0.0.8 lib/task_manager/cli.rb
task_manager2-0.0.6 lib/task_manager/cli.rb