Class: Pio::PortNumber
- Inherits:
-
BinData::Primitive
- Object
- BinData::Primitive
- Pio::PortNumber
- Defined in:
- lib/pio/open_flow/port_number.rb
Overview
Port numbering.
Constant Summary collapse
- NUMBERS =
{ in_port: 0xfff8, table: 0xfff9, normal: 0xfffa, flood: 0xfffb, all: 0xfffc, controller: 0xfffd, local: 0xfffe, none: 0xffff }
- MAX =
0xff00
Instance Method Summary collapse
Instance Method Details
#get ⇒ Object
20 21 22 23 24 |
# File 'lib/pio/open_flow/port_number.rb', line 20 def get NUMBERS.invert.fetch(port_number) rescue KeyError port_number end |
#set(value) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/pio/open_flow/port_number.rb', line 26 def set(value) if NUMBERS.key?(value) self.port_number = NUMBERS.fetch(value) else port_number = value.to_i fail ArgumentError, 'The port_number should be > 0' if port_number < 1 if port_number >= MAX fail ArgumentError, 'The port_number should be < 0xff00' end self.port_number = port_number end end |