Sha256: 91645cfb557c88d08481d1b905151d6c936dd48c246dd8ef407e5e55767280f0

Contents?: true

Size: 949 Bytes

Versions: 58

Compression:

Stored size: 949 Bytes

Contents

require "optparse"

module Brightbox
  module Legacy
    # This is a simple class to take the ARGV array and inject a command in the
    # correct position (after global options but before anything else)
    #
    class ArgsAdjuster
      def initialize(args)
        @args = args
      end

      # @param [String] command The command is insert
      # @return [Array<String>]
      def for_command(command)
        @globals = []

        parser = OptionParser.new do |opts|
          opts.on("-v", "--version") { |_op| @globals << "-v" }
          opts.on("-s", "--simple") { |_op| @globals << "-s" }
          opts.on("-k", "--insecure") { |_op| @globals << "-k" }
          opts.on("-c", "--client CLIENT") { |op| @globals << "-c" << op }
          opts.on("--account ACCOUNT") { |op| @globals << "--account" << op }
        end

        remaining = parser.order(@args)

        [] + @globals + [command] + remaining
      end
    end
  end
end

Version data entries

58 entries across 58 versions & 1 rubygems

Version Path
brightbox-cli-5.0.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-5.0.0.rc2 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-5.0.0.rc1 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-5.0.0.alpha lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.8.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.7.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.6.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.5.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.5.0.rc1 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.4.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.3.2 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.3.1 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.3.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.2.1 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.2.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.1.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.0.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-4.0.0.rc2 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-3.3.0 lib/brightbox-cli/legacy/args_adjuster.rb
brightbox-cli-3.2.0 lib/brightbox-cli/legacy/args_adjuster.rb