Class: Pio::OpenFlow::Error

Inherits:
Object
  • Object
show all
Defined in:
lib/pio/open_flow/error.rb

Overview

Error message parser

Class Method Summary collapse

Class Method Details

.read(binary) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/pio/open_flow/error.rb', line 5

def self.read(binary)
  version = OpenFlowHeaderParser.read(binary).ofp_version
  error_parser = case version
                 when 1
                   Pio::OpenFlow10::Error
                 when 4
                   Pio::OpenFlow13::Error
                 else
                   fail "Unsupported OpenFlow version: #{version}"
                 end
  error_parser.read binary
end