Class: RecordOnChain::Commands::AbstractCommand
- Inherits:
-
Object
- Object
- RecordOnChain::Commands::AbstractCommand
- Defined in:
- lib/record_on_chain/commands/abstract_command.rb
Overview
base of command class
Instance Method Summary collapse
-
#initialize(command_name, cli = Cli.new) ⇒ AbstractCommand
constructor
A new instance of AbstractCommand.
- #squeeze_args_from_argv(val_context = {}, flag_context = {}, argv = ARGV) ⇒ Object
- #start ⇒ Object
Constructor Details
#initialize(command_name, cli = Cli.new) ⇒ AbstractCommand
Returns a new instance of AbstractCommand.
9 10 11 12 |
# File 'lib/record_on_chain/commands/abstract_command.rb', line 9 def initialize( command_name , cli= Cli.new ) @command_name = command_name @cli = cli end |
Instance Method Details
#squeeze_args_from_argv(val_context = {}, flag_context = {}, argv = ARGV) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/record_on_chain/commands/abstract_command.rb', line 18 def squeeze_args_from_argv( val_context= {} , flag_context= {} , argv= ARGV ) opts = OptionParser.new args = {} # set to args according to hash_context. val_context.each { |key,val| opts.on("#{key} VAL"){|v| args[val] = v} } # set to args according to flag_context flag_context.each{ |key,val| opts.on("#{key}"){|v| args[val] = true} } # raise erro if user set unknown option # except first because @argv.first is command name opts.parse( argv ) return args end |
#start ⇒ Object
14 15 16 |
# File 'lib/record_on_chain/commands/abstract_command.rb', line 14 def start raise NotImplementedError.new end |