Signed-off-by: Jason Kölker <[email protected]>
---
ryu/lib/ofctl_common.py | 17 +++++++++++++++++
ryu/lib/ofctl_utils.py | 17 +++++++++--------
ryu/lib/ofctl_v1_2.py | 17 ++---------------
ryu/lib/ofctl_v1_3.py | 16 ++--------------
ryu/lib/ofctl_v1_4.py | 17 ++---------------
5 files changed, 32 insertions(+), 52 deletions(-)
diff --git a/ryu/lib/ofctl_common.py b/ryu/lib/ofctl_common.py
index 47bf56a..7a51d36 100644
--- a/ryu/lib/ofctl_common.py
+++ b/ryu/lib/ofctl_common.py
@@ -191,3 +191,20 @@ def send_stats_request(dp, stats, waiters, msgs,
logger=None):
if not lock.is_set():
del waiters_per_dp[stats.xid]
+
+
+def send_experimenter(dp, exp, logger=None):
+ experimenter = exp.get('experimenter', 0)
+ exp_type = exp.get('exp_type', 0)
+ data_type = exp.get('data_type', 'ascii')
+
+ if data_type not in ('ascii', 'base64'):
+ LOG.error('Unknown data type: %s', data_type)
+
+ data = exp.get('data', '')
+ if data_type == 'base64':
+ data = base64.b64decode(data)
+
+ expmsg = dp.ofproto_parser.OFPExperimenter(dp, experimenter, exp_type,
+ data)
+ ofctl_utils.send_msg(dp, expmsg, logger)
diff --git a/ryu/lib/ofctl_utils.py b/ryu/lib/ofctl_utils.py
index bc0e740..b23a9d6 100644
--- a/ryu/lib/ofctl_utils.py
+++ b/ryu/lib/ofctl_utils.py
@@ -19,6 +19,14 @@ import logging
LOG = logging.getLogger(__name__)
+def get_logger(logger=None):
+ # NOTE(jkoelker) use the logger the calling code wants us to
+ if logger is not None:
+ return logger
+
+ return LOG
+
+
def str_to_int(str_num):
return int(str(str_num), 0)
@@ -27,14 +35,7 @@ def send_msg(dp, msg, logger=None):
if msg.xid is None:
dp.set_xid(msg)
- # NOTE(jkoelker) use the logger the calling code wants us to
- if logger is not None:
- log = logger
-
- else:
- log = LOG
-
- log.debug('Sending message with xid(%x): %s', msg.xid, msg)
+ get_logger(logger).debug('Sending message with xid(%x): %s', msg.xid, msg)
dp.send_msg(msg)
diff --git a/ryu/lib/ofctl_v1_2.py b/ryu/lib/ofctl_v1_2.py
index fae4df4..c607b50 100644
--- a/ryu/lib/ofctl_v1_2.py
+++ b/ryu/lib/ofctl_v1_2.py
@@ -13,7 +13,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import base64
import logging
import netaddr
@@ -928,17 +927,5 @@ def mod_port_behavior(dp, port_config):
ofctl_utils.send_msg(dp, port_mod, LOG)
-def send_experimenter(dp, exp):
- experimenter = exp.get('experimenter', 0)
- exp_type = exp.get('exp_type', 0)
- data_type = exp.get('data_type', 'ascii')
- if data_type != 'ascii' and data_type != 'base64':
- LOG.error('Unknown data type: %s', data_type)
- data = exp.get('data', '')
- if data_type == 'base64':
- data = base64.b64decode(data)
-
- expmsg = dp.ofproto_parser.OFPExperimenter(
- dp, experimenter, exp_type, data)
-
- ofctl_utils.send_msg(dp, expmsg, LOG)
+# NOTE(jkoelker) Alias common funcitons
+send_experimenter = ofctl_common.send_experimenter
diff --git a/ryu/lib/ofctl_v1_3.py b/ryu/lib/ofctl_v1_3.py
index 29938b1..3ae87c1 100644
--- a/ryu/lib/ofctl_v1_3.py
+++ b/ryu/lib/ofctl_v1_3.py
@@ -1151,17 +1151,5 @@ def mod_port_behavior(dp, port_config):
ofctl_utils.send_msg(dp, port_mod, LOG)
-def send_experimenter(dp, exp):
- experimenter = exp.get('experimenter', 0)
- exp_type = exp.get('exp_type', 0)
- data_type = exp.get('data_type', 'ascii')
- if data_type != 'ascii' and data_type != 'base64':
- LOG.error('Unknown data type: %s', data_type)
- data = exp.get('data', '')
- if data_type == 'base64':
- data = base64.b64decode(data)
-
- expmsg = dp.ofproto_parser.OFPExperimenter(
- dp, experimenter, exp_type, data)
-
- ofctl_utils.send_msg(dp, expmsg, LOG)
+# NOTE(jkoelker) Alias common funcitons
+send_experimenter = ofctl_common.send_experimenter
diff --git a/ryu/lib/ofctl_v1_4.py b/ryu/lib/ofctl_v1_4.py
index 5f93c4a..b68c32e 100644
--- a/ryu/lib/ofctl_v1_4.py
+++ b/ryu/lib/ofctl_v1_4.py
@@ -13,7 +13,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import base64
import logging
from ryu.ofproto import ether
@@ -827,17 +826,5 @@ def mod_port_behavior(dp, port_config):
ofctl_utils.send_msg(dp, port_mod, LOG)
-def send_experimenter(dp, exp):
- experimenter = exp.get('experimenter', 0)
- exp_type = exp.get('exp_type', 0)
- data_type = exp.get('data_type', 'ascii')
- if data_type != 'ascii' and data_type != 'base64':
- LOG.error('Unknown data type: %s', data_type)
- data = exp.get('data', '')
- if data_type == 'base64':
- data = base64.b64decode(data)
-
- expmsg = dp.ofproto_parser.OFPExperimenter(
- dp, experimenter, exp_type, data)
-
- ofctl_utils.send_msg(dp, expmsg, LOG)
+# NOTE(jkoelker) Alias common funcitons
+send_experimenter = ofctl_common.send_experimenter
--
2.7.3
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel