Class: Aio::Module::Cmd::H3C::DisplayOspfPeer
- Inherits:
-
Aio::Module::Cmd::H3C
- Object
- Aio::Module::Cmd
- Aio::Module::Cmd::H3C
- Aio::Module::Cmd::H3C::DisplayOspfPeer
- Includes:
- Aio::Module
- Defined in:
- lib/modules/cmd/h3c/display_ospf_peer.rb
Instance Attribute Summary
Attributes inherited from Aio::Module::Cmd
#cmd_info, #context, #device_info, #ext_info, #useful, #warning_klass
Instance Method Summary collapse
-
#initialize ⇒ DisplayOspfPeer
constructor
A new instance of DisplayOspfPeer.
- #parse ⇒ Object
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
#initialize ⇒ DisplayOspfPeer
Returns a new instance of DisplayOspfPeer.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/modules/cmd/h3c/display_ospf_peer.rb', line 8 def initialize super({ :cmd_full => "display ospf peer", :cmd_short => "dis ospf p", :author => "Elin", :description => "This is H3C Command# display ospf peer", :ranking => Ranking_1, :platform => "all" }) end |
Instance Method Details
#parse ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/modules/cmd/h3c/display_ospf_peer.rb', line 19 def parse context = self.context.dup useful[:ospf_neighbor] = {} count = 0 context.readline_range_loop(/Route/, reg_blank) do |cont| cont.readline_match_block(/Route/) {|b|b} cont.readline_match_block_loop(/(?<neighbor_id>[^\s]+) (?<address>[^\s]+) (?<pri>\d+) (.*) (?<interface>.*) (?<state>.*)/, reg_blank) do |block| nei = {} nei_id = block[:neighbor_id] useful[:ospf_neighbor][nei_id.to_sym] = nei block.update(nei, :neighbor_id) block.update(nei, :pri) block.update(nei, :state) block.update(nei, :address) block.update(nei, :interface) count += 1 end end end |