@@ 133-163 (lines=31) @@ | ||
130 | ||
131 | return message_instance |
|
132 | ||
133 | ||
134 | def new_message_from_header(header): |
|
135 | """Given an OF Header, return an empty message of header's message_type. |
|
136 | ||
137 | Args: |
|
138 | header (:class:`~pyof.v0x04.common.header.Header`): |
|
139 | Unpacked OpenFlow Header. |
|
140 | ||
141 | Returns: |
|
142 | Empty OpenFlow message of the same type of message_type attribute from |
|
143 | the given header. |
|
144 | The header attribute of the message will be populated. |
|
145 | ||
146 | Raises: |
|
147 | KytosUndefinedMessageType: Unkown Message_Type. |
|
148 | """ |
|
149 | message_type = header.message_type |
|
150 | if not isinstance(message_type, Type): |
|
151 | try: |
|
152 | if isinstance(message_type, str): |
|
153 | # False positive https://github.com/PyCQA/pylint/issues/992 |
|
154 | # pylint: disable=E1136 |
|
155 | message_type = Type[message_type] |
|
156 | elif isinstance(message_type, int): |
|
157 | message_type = Type(message_type) |
|
158 | except ValueError: |
|
159 | raise ValueError |
|
160 | ||
161 | message = new_message_from_message_type(message_type) |
|
162 | message.header.xid = header.xid |
|
163 | message.header.length = header.length |
|
164 | ||
165 | return message |
|
166 |
@@ 89-119 (lines=31) @@ | ||
86 | ||
87 | return message_instance |
|
88 | ||
89 | ||
90 | def new_message_from_header(header): |
|
91 | """Given an OF Header, return an empty message of header's message_type. |
|
92 | ||
93 | Args: |
|
94 | header (~pyof.v0x01.common.header.Header): Unpacked OpenFlow Header. |
|
95 | ||
96 | Returns: |
|
97 | Empty OpenFlow message of the same type of message_type attribute from |
|
98 | the given header. |
|
99 | The header attribute of the message will be populated. |
|
100 | ||
101 | Raises: |
|
102 | KytosUndefinedMessageType: Unkown Message_Type. |
|
103 | """ |
|
104 | message_type = header.message_type |
|
105 | if not isinstance(message_type, Type): |
|
106 | try: |
|
107 | if isinstance(message_type, str): |
|
108 | # False positive https://github.com/PyCQA/pylint/issues/992 |
|
109 | # pylint: disable=E1136 |
|
110 | message_type = Type[message_type] |
|
111 | elif isinstance(message_type, int): |
|
112 | message_type = Type(message_type) |
|
113 | except ValueError: |
|
114 | raise ValueError |
|
115 | ||
116 | message = new_message_from_message_type(message_type) |
|
117 | message.header.xid = header.xid |
|
118 | message.header.length = header.length |
|
119 | ||
120 | return message |
|
121 | ||
122 |