the variable '_class_prefixes' of stringify.StringifyMixin is used to help the
method 'from_jsondict()' to create the class instance.
'_class_prefixes' requires a list of the class names.
some classes have another list of the class names already.
this patch adds a method which makes '_class_prefixes' by using the existing
list.
before applying this patch:
(e.g. ryu.lib.packet.ipv6)
# append the name to another list
@ipv6.register_header_type(inet.IPPROTO_HOPOPTS)
class hop_opts(opt_header):
...
@ipv6.register_header_type(inet.IPPROTO_DSTOPTS)
class dst_opts(opt_header):
....
# append the name again
ipv6._class_prefixes = ['hop_opts', 'dst_opts', ...]
after applying this patch:
(e.g. ryu.lib.packet.ipv6)
# append the name to another list
@ipv6.register_header_type(inet.IPPROTO_HOPOPTS)
class hop_opts(opt_header):
...
@ipv6.register_header_type(inet.IPPROTO_DSTOPTS)
class dst_opts(opt_header):
....
# create the new list from another list
ipv6.set_classes(ipv6._IPV6_EXT_HEADER_TYPE)
Signed-off-by: Yuichi Ito <[email protected]>
---
ryu/lib/stringify.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/ryu/lib/stringify.py b/ryu/lib/stringify.py
index 4d56a95..ad771db 100644
--- a/ryu/lib/stringify.py
+++ b/ryu/lib/stringify.py
@@ -298,6 +298,11 @@ class StringifyMixin(object):
print "KWARG", kwargs
raise
+ @classmethod
+ def set_classes(cls, registered_dict):
+ cls._class_prefixes.extend([v.__name__ for v in
+ registered_dict.values()])
+
def obj_python_attrs(msg_):
"""iterate object attributes for stringify purposes
--
1.7.10.4
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how application performance
affects their revenue. With AppDynamics, you get 100% visibility into your
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel