From b927ae5d361359a887a334b47a7cd040cd1a1a6a Mon Sep 17 00:00:00 2001 From: YAMAMOTO Takashi Date: Thu, 28 Nov 2013 10:51:59 +0900 Subject: of13 OFPExperimenterStatsRequest: api tweak change the api to be consist with other OFPxxxStatsRequest classes. Signed-off-by: YAMAMOTO Takashi Signed-off-by: FUJITA Tomonori --- ryu/ofproto/ofproto_v1_3_parser.py | 22 ++++++++++++++-------- .../of13/4-61-ofp_experimenter_request.packet.json | 10 +++------- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/ryu/ofproto/ofproto_v1_3_parser.py b/ryu/ofproto/ofproto_v1_3_parser.py index df5d4609..71498728 100644 --- a/ryu/ofproto/ofproto_v1_3_parser.py +++ b/ryu/ofproto/ofproto_v1_3_parser.py @@ -5194,13 +5194,11 @@ class OFPPortDescStatsReply(OFPMultipartReply): super(OFPPortDescStatsReply, self).__init__(datapath, **kwargs) -# XXX should this allow different interpretations for request and reply? class OFPExperimenterMultipart(ofproto_parser.namedtuple( 'OFPExperimenterMultipart', ('experimenter', 'exp_type', 'data'))): """ - The body of OFPExperimenterStatsRequest/OFPExperimenterStatsReply - multipart messages. + The body of OFPExperimenterStatsReply multipart messages. ================ ====================================================== Attribute Description @@ -5241,16 +5239,24 @@ class OFPExperimenterStatsRequest(OFPMultipartRequest): Attribute Description ================ ====================================================== flags Zero or ``OFPMPF_REQ_MORE`` - body An ``OFPExperimenterMultipart`` instance + experimenter Experimenter ID + exp_type Experimenter defined + data Experimenter defined additional data ================ ====================================================== """ - def __init__(self, datapath, flags, body, type_=None): + def __init__(self, datapath, flags, + experimenter, exp_type, data, + type_=None): super(OFPExperimenterStatsRequest, self).__init__(datapath, flags) - self.body = body + self.experimenter = experimenter + self.exp_type = exp_type + self.data = data def _serialize_stats_body(self): - bin_body = self.body.serialize() - self.buf += bin_body + body = OFPExperimenterMultipart(experimenter=self.experimenter, + exp_type=self.exp_type, + data=self.data) + self.buf += body.serialize() @OFPMultipartReply.register_stats_type(body_single_struct=True) diff --git a/ryu/tests/unit/ofproto/json/of13/4-61-ofp_experimenter_request.packet.json b/ryu/tests/unit/ofproto/json/of13/4-61-ofp_experimenter_request.packet.json index cb8cccb5..93af3039 100644 --- a/ryu/tests/unit/ofproto/json/of13/4-61-ofp_experimenter_request.packet.json +++ b/ryu/tests/unit/ofproto/json/of13/4-61-ofp_experimenter_request.packet.json @@ -1,12 +1,8 @@ { "OFPExperimenterStatsRequest": { - "body": { - "OFPExperimenterMultipart": { - "data": "aG9nZWhvZ2U=", - "exp_type": 3405678728, - "experimenter": 3735928495 - } - }, + "data": "aG9nZWhvZ2U=", + "exp_type": 3405678728, + "experimenter": 3735928495, "flags": 0, "type": 65535 } -- cgit v1.2.3