class HDOC::CLI
Provides the CLI
interface for interact with the program.
Constants
- AVAILABLE_COMMANDS
Attributes
options[R]
Public Class Methods
new(option_parser = OptionParser)
click to toggle source
# File lib/1hdoc/cli.rb, line 15 def initialize(option_parser = OptionParser) @option_parser = option_parser check_for_configuration end
Public Instance Methods
run()
click to toggle source
# File lib/1hdoc/cli.rb, line 20 def run start_option_parser rescue @option_parser::ParseError $stderr.puts options end
Private Instance Methods
check_for_configuration()
click to toggle source
# File lib/1hdoc/cli.rb, line 28 def check_for_configuration unless File.exist? ENVIRONMENT[:configuration_file] $stderr.puts 'Seems like it is the first time you use 1hdoc..' init end end
initialize_options()
click to toggle source
# File lib/1hdoc/cli.rb, line 44 def initialize_options AVAILABLE_COMMANDS.each do |command| # Retrieve method's name deleting double dashes from command. target_method = command[1].gsub('--', '') options.on(*command) { send(target_method) } end end
start_option_parser()
click to toggle source
# File lib/1hdoc/cli.rb, line 35 def start_option_parser @option_parser.new do |opts| opts.banner = 'Usage: 1hdoc [options]' @options = opts initialize_options end.parse! end