Signed-off-by: YAMAMOTO Takashi <[email protected]>
---
 ryu/ofproto/ofproto_v1_3_parser.py | 78 +++++++++++++++++---------------------
 1 file changed, 35 insertions(+), 43 deletions(-)

diff --git a/ryu/ofproto/ofproto_v1_3_parser.py 
b/ryu/ofproto/ofproto_v1_3_parser.py
index 3b5a4b4..a2032c2 100644
--- a/ryu/ofproto/ofproto_v1_3_parser.py
+++ b/ryu/ofproto/ofproto_v1_3_parser.py
@@ -2371,9 +2371,7 @@ class OFPInstructionGotoTable(StringifyMixin):
     table_id         Next table
     ================ ======================================================
     """
-    _base_attributes = ['type', 'len']
-
-    def __init__(self, table_id):
+    def __init__(self, table_id, type_=None, len_=None):
         super(OFPInstructionGotoTable, self).__init__()
         self.type = ofproto_v1_3.OFPIT_GOTO_TABLE
         self.len = ofproto_v1_3.OFP_INSTRUCTION_GOTO_TABLE_SIZE
@@ -2405,9 +2403,7 @@ class OFPInstructionWriteMetadata(StringifyMixin):
     metadata_mask    Metadata write bitmask
     ================ ======================================================
     """
-    _base_attributes = ['type', 'len']
-
-    def __init__(self, metadata, metadata_mask):
+    def __init__(self, metadata, metadata_mask, len_=None):
         super(OFPInstructionWriteMetadata, self).__init__()
         self.type = ofproto_v1_3.OFPIT_WRITE_METADATA
         self.len = ofproto_v1_3.OFP_INSTRUCTION_WRITE_METADATA_SIZE
@@ -2446,9 +2442,7 @@ class OFPInstructionActions(StringifyMixin):
     actions          list of OpenFlow action class
     ================ ======================================================
     """
-    _base_attributes = ['len']
-
-    def __init__(self, type_, actions=None):
+    def __init__(self, type_, actions=None, len_=None):
         super(OFPInstructionActions, self).__init__()
         self.type = type_
         self.actions = actions
@@ -2522,8 +2516,6 @@ class OFPInstructionMeter(StringifyMixin):
 
 
 class OFPActionHeader(StringifyMixin):
-    _base_attributes = ['type', 'len']
-
     def __init__(self, type_, len_):
         self.type = type_
         self.len = len_
@@ -2574,7 +2566,7 @@ class OFPActionOutput(OFPAction):
     max_len          Max length to send to controller
     ================ ======================================================
     """
-    def __init__(self, port, max_len=0):
+    def __init__(self, port, max_len=0, type_=None, len_=None):
         super(OFPActionOutput, self).__init__()
         self.port = port
         self.max_len = max_len
@@ -2604,7 +2596,7 @@ class OFPActionGroup(OFPAction):
     group_id         Group identifier
     ================ ======================================================
     """
-    def __init__(self, group_id):
+    def __init__(self, group_id, type_=None, len_=None):
         super(OFPActionGroup, self).__init__()
         self.group_id = group_id
 
@@ -2634,7 +2626,7 @@ class OFPActionSetQueue(OFPAction):
     queue_id         Queue ID for the packets
     ================ ======================================================
     """
-    def __init__(self, queue_id):
+    def __init__(self, queue_id, type_=None, len_=None):
         super(OFPActionSetQueue, self).__init__()
         self.queue_id = queue_id
 
@@ -2663,7 +2655,7 @@ class OFPActionSetMplsTtl(OFPAction):
     mpls_ttl         MPLS TTL
     ================ ======================================================
     """
-    def __init__(self, mpls_ttl):
+    def __init__(self, mpls_ttl, type_=None, len_=None):
         super(OFPActionSetMplsTtl, self).__init__()
         self.mpls_ttl = mpls_ttl
 
@@ -2686,7 +2678,7 @@ class OFPActionDecMplsTtl(OFPAction):
 
     This action decrements the MPLS TTL.
     """
-    def __init__(self):
+    def __init__(self, type_=None, len_=None):
         super(OFPActionDecMplsTtl, self).__init__()
 
 
@@ -2704,7 +2696,7 @@ class OFPActionSetNwTtl(OFPAction):
     nw_ttl           IP TTL
     ================ ======================================================
     """
-    def __init__(self, nw_ttl):
+    def __init__(self, nw_ttl, type_=None, len_=None):
         super(OFPActionSetNwTtl, self).__init__()
         self.nw_ttl = nw_ttl
 
@@ -2727,7 +2719,7 @@ class OFPActionDecNwTtl(OFPAction):
 
     This action decrements the IP TTL.
     """
-    def __init__(self):
+    def __init__(self, type_=None, len_=None):
         super(OFPActionDecNwTtl, self).__init__()
 
     @classmethod
@@ -2745,7 +2737,7 @@ class OFPActionCopyTtlOut(OFPAction):
     This action copies the TTL from the next-to-outermost header with TTL to
     the outermost header with TTL.
     """
-    def __init__(self):
+    def __init__(self, type_=None, len_=None):
         super(OFPActionCopyTtlOut, self).__init__()
 
     @classmethod
@@ -2763,7 +2755,7 @@ class OFPActionCopyTtlIn(OFPAction):
     This action copies the TTL from the outermost header with TTL to the
     next-to-outermost header with TTL.
     """
-    def __init__(self):
+    def __init__(self, type_=None, len_=None):
         super(OFPActionCopyTtlIn, self).__init__()
 
     @classmethod
@@ -2786,7 +2778,7 @@ class OFPActionPushVlan(OFPAction):
     ethertype        Ether type
     ================ ======================================================
     """
-    def __init__(self, ethertype):
+    def __init__(self, ethertype, type_=None, len_=None):
         super(OFPActionPushVlan, self).__init__()
         self.ethertype = ethertype
 
@@ -2815,7 +2807,7 @@ class OFPActionPushMpls(OFPAction):
     ethertype        Ether type
     ================ ======================================================
     """
-    def __init__(self, ethertype):
+    def __init__(self, ethertype, type_=None, len_=None):
         super(OFPActionPushMpls, self).__init__()
         self.ethertype = ethertype
 
@@ -2838,7 +2830,7 @@ class OFPActionPopVlan(OFPAction):
 
     This action pops the outermost VLAN tag from the packet.
     """
-    def __init__(self):
+    def __init__(self, type_=None, len_=None):
         super(OFPActionPopVlan, self).__init__()
 
     @classmethod
@@ -2855,7 +2847,7 @@ class OFPActionPopMpls(OFPAction):
 
     This action pops the MPLS header from the packet.
     """
-    def __init__(self, ethertype):
+    def __init__(self, ethertype, type_=None, len_=None):
         super(OFPActionPopMpls, self).__init__()
         self.ethertype = ethertype
 
@@ -3008,7 +3000,7 @@ class OFPActionExperimenter(OFPAction):
     experimenter     Experimenter ID
     ================ ======================================================
     """
-    def __init__(self, experimenter):
+    def __init__(self, experimenter, type_=None, len_=None):
         super(OFPActionExperimenter, self).__init__()
         self.experimenter = experimenter
 
@@ -3024,7 +3016,7 @@ class OFPActionExperimenter(OFPAction):
 
 
 class OFPBucket(StringifyMixin):
-    def __init__(self, weight, watch_port, watch_group, actions):
+    def __init__(self, weight, watch_port, watch_group, actions, len_=None):
         super(OFPBucket, self).__init__()
         self.weight = weight
         self.watch_port = watch_port
@@ -3036,11 +3028,11 @@ class OFPBucket(StringifyMixin):
         (len_, weight, watch_port, watch_group) = struct.unpack_from(
             ofproto_v1_3.OFP_BUCKET_PACK_STR, buf, offset)
         msg = cls(weight, watch_port, watch_group, [])
-        msg._len = len_
+        msg.len = len_
 
         length = ofproto_v1_3.OFP_BUCKET_SIZE
         offset += ofproto_v1_3.OFP_BUCKET_SIZE
-        while length < msg._len:
+        while length < msg.len:
             action = OFPAction.parser(buf, offset)
             msg.actions.append(action)
             offset += action.len
@@ -3056,10 +3048,9 @@ class OFPBucket(StringifyMixin):
             action_offset += a.len
             action_len += a.len
 
-        self._len = utils.round_up(ofproto_v1_3.OFP_BUCKET_SIZE + action_len,
-                                   8)
+        self.len = utils.round_up(ofproto_v1_3.OFP_BUCKET_SIZE + action_len, 8)
         msg_pack_into(ofproto_v1_3.OFP_BUCKET_PACK_STR, buf, offset,
-                      self._len, self.weight, self.watch_port,
+                      self.len, self.weight, self.watch_port,
                       self.watch_group)
 
 
@@ -3122,7 +3113,7 @@ class OFPGroupMod(MsgBase):
         offset = ofproto_v1_3.OFP_GROUP_MOD_SIZE
         for b in self.buckets:
             b.serialize(self.buf, offset)
-            offset += b._len
+            offset += b.len
 
 
 @_set_msg_type(ofproto_v1_3.OFPT_PORT_MOD)
@@ -4056,8 +4047,8 @@ class OFPGroupDescStats(StringifyMixin):
             bucket = OFPBucket.parser(buf, offset)
             stats.buckets.append(bucket)
 
-            offset += bucket._len
-            length += bucket._len
+            offset += bucket.len
+            length += bucket.len
 
         return stats
 
@@ -4781,11 +4772,11 @@ class OFPQueueGetConfigRequest(MsgBase):
 class OFPQueuePropHeader(StringifyMixin):
     def __init__(self, property_, len_):
         self._property = property_
-        self._len = len_
+        self.len = len_
 
     def serialize(self, buf, offset):
         msg_pack_into(ofproto_v1_3.OFP_QUEUE_PROP_HEADER_PACK_STR,
-                      buf, offset, self._property, self._len)
+                      buf, offset, self._property, self.len)
 
 
 class OFPQueueProp(OFPQueuePropHeader):
@@ -4819,7 +4810,7 @@ class OFPQueueProp(OFPQueuePropHeader):
     ofproto_v1_3.OFPQT_MIN_RATE,
     ofproto_v1_3.OFP_QUEUE_PROP_MIN_RATE_SIZE)
 class OFPQueuePropMinRate(OFPQueueProp):
-    def __init__(self, rate):
+    def __init__(self, rate, len_=None):
         super(OFPQueuePropMinRate, self).__init__()
         self.rate = rate
 
@@ -4834,7 +4825,7 @@ class OFPQueuePropMinRate(OFPQueueProp):
     ofproto_v1_3.OFPQT_MAX_RATE,
     ofproto_v1_3.OFP_QUEUE_PROP_MAX_RATE_SIZE)
 class OFPQueuePropMaxRate(OFPQueueProp):
-    def __init__(self, rate):
+    def __init__(self, rate, len_=None):
         super(OFPQueuePropMaxRate, self).__init__()
         self.rate = rate
 
@@ -4849,10 +4840,11 @@ class OFPQueuePropMaxRate(OFPQueueProp):
 
 
 class OFPPacketQueue(StringifyMixin):
-    def __init__(self, queue_id, port, properties):
+    def __init__(self, queue_id, port, properties, len_=None):
         super(OFPPacketQueue, self).__init__()
         self.queue_id = queue_id
         self.port = port
+        self.len = len_
         self.properties = properties
 
     @classmethod
@@ -4865,10 +4857,10 @@ class OFPPacketQueue(StringifyMixin):
         while length < len_:
             queue_prop = OFPQueueProp.parser(buf, offset)
             properties.append(queue_prop)
-            offset += queue_prop._len
-            length += queue_prop._len
+            offset += queue_prop.len
+            length += queue_prop.len
         o = cls(queue_id, port, properties)
-        o._len = len_
+        o.len = len_
         return o
 
 
@@ -4916,7 +4908,7 @@ class OFPQueueGetConfigReply(MsgBase):
         while offset < msg_len:
             queue = OFPPacketQueue.parser(msg.buf, offset)
             msg.queues.append(queue)
-            offset += queue._len
+            offset += queue.len
 
         return msg
 
-- 
1.8.3.1


------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to