Merge branch 'master' of github.com:floodlight/loxigen into group_mod
Conflicts:
java_gen/java_model.py
loxi_front_end/frontend.py
loxi_front_end/frontend_ir.py
loxigen.py
py_gen/templates/message.py
utest/test_frontend.py
diff --git a/java_gen/java_model.py b/java_gen/java_model.py
index d124f5a..824a320 100644
--- a/java_gen/java_model.py
+++ b/java_gen/java_model.py
@@ -61,7 +61,11 @@
interface_blacklist = set( ("OFUint8", "OFUint32",))
# registry of interface properties that should not be generated
# map: $java_type -> set(java_name_property)
- read_blacklist = defaultdict(lambda: set(), OFExperimenter=set(('data','subtype')), OFActionExperimenter=set(('data',)))
+ read_blacklist = defaultdict(lambda: set(),
+ OFExperimenter=set(('data','subtype')),
+ OFActionExperimenter=set(('data',)),
+ OFExperimenterStatsRequest=set(('data','subtype')),
+ OFExperimenterStatsReply=set(('data','subtype')))
# map: $java_type -> set(java_name_property)
write_blacklist = defaultdict(lambda: set(), OFOxm=set(('typeLen',)), OFAction=set(('type',)), OFInstruction=set(('type',)), OFFlowMod=set(('command', )), OFExperimenter=set(('data','subtype')), OFActionExperimenter=set(('data',)))
# interfaces that are virtual
@@ -502,9 +506,19 @@
if re.match(r'OFStatsRequest$', self.name):
return ("", "OFMessage", "T extends OFStatsReply")
elif self.ir_class.is_subclassof('of_stats_request'):
- return ("", "OFStatsRequest<{}>".format(re.sub(r'Request$', 'Reply', self.name)), None)
+ if self.ir_class.is_subclassof('of_bsn_stats_request'):
+ return ("", "OFBsnStatsRequest", None)
+ elif self.ir_class.is_subclassof('of_experimenter_stats_request'):
+ return ("", "OFExperimenterStatsRequest", None)
+ else:
+ return ("", "OFStatsRequest<{}>".format(re.sub(r'Request$', 'Reply', self.name)), None)
elif self.ir_class.is_subclassof('of_stats_reply'):
- return ("", "OFStatsReply", None)
+ if self.ir_class.is_subclassof('of_bsn_stats_reply'):
+ return ("", "OFBsnStatsReply", None)
+ elif self.ir_class.is_subclassof('of_experimenter_stats_reply'):
+ return ("", "OFExperimenterStatsReply", None)
+ else:
+ return ("", "OFStatsReply", None)
elif self.ir_class.is_subclassof('of_error_msg'):
return ("", "OFErrorMsg", None)
elif self.ir_class.is_subclassof('of_flow_mod'):