class Pio::OpenFlow13::NiciraSendOutPort

NXAST_OUTPUT_REG action

Attributes

source[R]

Public Class Methods

new(source, options = {}) click to toggle source
Calls superclass method Pio::OpenFlow::Action::new
# File lib/pio/open_flow13/nicira_send_out_port.rb, line 25
def initialize(source, options = {})
  @source = source
  super(_n_bits: (options[:n_bits] || oxm_length * 8) - 1,
        _offset: options[:offset] || 0,
        _source: { oxm_class: source_oxm_class.const_get(:OXM_CLASS),
                   oxm_field: source_oxm_class.const_get(:OXM_FIELD),
                   oxm_length: oxm_length },
        max_length: options[:max_length] || SendOutPort::NO_BUFFER)
end

Public Instance Methods

n_bits() click to toggle source
# File lib/pio/open_flow13/nicira_send_out_port.rb, line 41
def n_bits
  _n_bits + 1
end
offset() click to toggle source
# File lib/pio/open_flow13/nicira_send_out_port.rb, line 37
def offset
  _offset
end

Private Instance Methods

oxm_length() click to toggle source
# File lib/pio/open_flow13/nicira_send_out_port.rb, line 47
def oxm_length
  source_oxm_class.new.length
end
source_oxm_class() click to toggle source
# File lib/pio/open_flow13/nicira_send_out_port.rb, line 51
def source_oxm_class
  Match.const_get(@source.to_s.split('_').map(&:capitalize).join)
end