Sha256: 5c6cdab675fb3470986a4b9732ad01dde4b961e3444face5e28a446dbb9f63f6

Contents?: true

Size: 845 Bytes

Versions: 3

Compression:

Stored size: 845 Bytes

Contents

require 'dumbcli/device'
require 'dumbcli/logger'
require 'dumbcli/version'

module Dumbcli
  @logger = Dumbcli::Logger.new(STDOUT).tap {|l| l.level = Dumbcli::Logger::Severity::INFO }

  class << self
    attr_accessor :logger

    def Device(host, platform, options={})
      case platform
      when 'a10'
        Dumbcli::Device::A10.new(host, options)
      when 'arista'
        Dumbcli::Device::Arista.new(host, options)
      when 'cisco'
        Dumbcli::Device::Cisco.new(host, options)
      when 'cisco-asa'
        Dumbcli::Device::CiscoAsa.new(host, options)
      when 'cisco-xr'
        Dumbcli::Device::CiscoXr.new(host, options)
      when 'juniper'
        Dumbcli::Device::Juniper.new(host, options)
      else
        raise ArgumentError, %(Unknown device type: "#{platform}" for host "#{host}")
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dumbcli-0.1.0 lib/dumbcli.rb
dumbcli-0.2.0 lib/dumbcli.rb
dumbcli-0.0.1 lib/dumbcli.rb