Class: Aio::Module::Cmd::H3C::DisplayIpInterfaceBrief

Inherits:
Aio::Module::Cmd::H3C show all
Includes:
Aio::Module
Defined in:
lib/modules/cmd/h3c/display_ip_interface_brief.rb

Instance Attribute Summary

Attributes inherited from Aio::Module::Cmd

#cmd_info, #context, #device_info, #ext_info, #useful, #warning_klass

Instance Method Summary collapse

Methods inherited from Aio::Module::Cmd

#author, #benchmark, #clear_useful, #cmd_full, #cmd_short, #description, #division, #key_stand, #license, #platform, #ranking, #set_defaults, #type

Methods included from Ui::Verbose

#clear_line, #print_error, #print_good, #progress_bar

Constructor Details

#initializeDisplayIpInterfaceBrief

Returns a new instance of DisplayIpInterfaceBrief.



8
9
10
11
12
13
14
15
16
17
# File 'lib/modules/cmd/h3c/display_ip_interface_brief.rb', line 8

def initialize
	super({
		:cmd_full			=> "display ip interface brief",
		:cmd_short		=> "dis ip int b",
		:author				=> "Elin",
		:description	=> "This is H3C Command# display ip interface brief",
		:ranking			=> Ranking_1,
		:platform			=> "all",
	})
end

Instance Method Details

#parseObject



19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/modules/cmd/h3c/display_ip_interface_brief.rb', line 19

def parse
	context = self.context.dup
	useful[:interface_brief] = {}
	context.readline_match_block(/Interface Physical Protocol IP Address/) {|b|b}
	context.readline_match_block_loop(/(?<interface_id>[^\s]+) (?<status>[^\s]+) (?<protocol>[^\s]+) (?<ip>[^\s]+)/, reg_blank) do |block|
		iface = {}
		iface_id = block[:interface_id]
		useful[:interface_brief][iface_id.to_sym] = iface
		block.update(iface, :interface_id)
		block.update(iface, :ip)
		block.update(iface, :status)
		block.update(iface, :protocol)
	end
end