Sha256: 6a7624518499119b098bf512034f05bb8b4ae64fa2cda16b017360dedc362de5

Contents?: true

Size: 1.16 KB

Versions: 8

Compression:

Stored size: 1.16 KB

Contents

#coding=utf-8

require "aio/core"

class Aio::Module::Cmd::H3C::DisplayDeviceManuinfo < Aio::Module::Cmd::H3C
  include Aio::Module

  def initialize
    super({
      :cmd_full			=> "display device manuinfo",
      :cmd_short		=> "dis dev m",
      :author				=> "Elin",
      :description	=> "This is H3C Command# display device manuinfo",
      :ranking			=> Ranking_1,
      :platform			=> "all",
    })
  end

  def parse
    context = self.context.dup
    inv_info = {}
    useful[:inventory] = inv_info

    context.readline_range_loop(/:/, /VENDOR_NAME/) do |cont|
      slot_info = {}
      name = ""
      pid  = ""

      cont.readline_match_block(/(?<name>[^:]+):/) do |block|
        name = block[:name]
      end
      cont.readline_match_block(/DEVICE_NAME : (?<pid>.*)/) do |block|
        pid = block[:pid]
      end
      cont.readline_match_block(/DEVICE_SERIAL_NUMBER : (?<sn>.*)/) do |block|
        sn = block[:sn]
        inv_info[sn.to_sym] = slot_info
        block.update(slot_info, :name, name)
        block.update(slot_info, :description, "H3C")
        block.update(slot_info, :pid, pid)
        block.update(slot_info, :sn)
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
aio_elin-1.1.8 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.7 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.4 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.3 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.2 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.1 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.1.0 lib/modules/cmd/h3c/display_device_manuinfo.rb
aio_elin-1.0.9 lib/modules/cmd/h3c/display_device_manuinfo.rb