Sha256: 985b14b41d22a556604543b4ad6880bc99a17e98e5a015c60ec3d987429b5876

Contents?: true

Size: 680 Bytes

Versions: 3

Compression:

Stored size: 680 Bytes

Contents

require_relative 'content'
require_relative 'renderer'
require_relative 'detector'

module DuperVisor
  class CLIError < ArgumentError
  end

  class Config
    attr_accessor :to, :output

    def initialize(to: nil, output: nil)
      self.to      = to
      self.output  = output
    end

    def validate!
      raise CLIError.new('Either the output format or filename is required!') unless to

      self.output = if output.is_a?(String) && output != ''
                      File.open(output, 'w')
                    elsif output.respond_to?(:puts)
                      output
                    else
                      STDOUT
                    end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dupervisor-1.0.5 lib/dupervisor/config.rb
dupervisor-1.0.4 lib/dupervisor/config.rb
dupervisor-1.0.3 lib/dupervisor/config.rb