[SEBA-412] Automated reformat of Python code
Passes of modernize, autopep8, black, then check with flake8
flake8 + manual fixes:
lib/xos-config
lib/xos-kafka
lib/xos-util
xos/coreapi
xos/api
xos/xos_client
Change-Id: Ib23cf84cb13beb3c6381fa0d79594dc9131dc815
diff --git a/lib/xos-genx/xosgenx/xos2jinja.py b/lib/xos-genx/xosgenx/xos2jinja.py
index aca2468..471be93 100644
--- a/lib/xos-genx/xosgenx/xos2jinja.py
+++ b/lib/xos-genx/xosgenx/xos2jinja.py
@@ -1,4 +1,3 @@
-
# Copyright 2017-present Open Networking Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -14,6 +13,7 @@
# limitations under the License.
+from __future__ import print_function
import plyxproto.model as m
from plyxproto.helpers import Visitor
import argparse
@@ -25,15 +25,20 @@
import copy
import pdb
+
class MissingPolicyException(Exception):
pass
+
def find_missing_policy_calls(name, policies, policy):
if isinstance(policy, dict):
(k, lst), = policy.items()
- if k=='policy':
+ if k == "policy":
policy_name = lst[0]
- if policy_name not in policies: raise MissingPolicyException("Policy %s invoked missing policy %s"%(name, policy_name))
+ if policy_name not in policies:
+ raise MissingPolicyException(
+ "Policy %s invoked missing policy %s" % (name, policy_name)
+ )
else:
for p in lst:
find_missing_policy_calls(name, policies, p)
@@ -41,26 +46,27 @@
for p in lst:
find_missing_policy_calls(name, policies, p)
+
def dotname_to_fqn(dotname):
b_names = [part.pval for part in dotname]
- package = '.'.join(b_names[:-1])
+ package = ".".join(b_names[:-1])
name = b_names[-1]
if package:
- fqn = package + '.' + name
+ fqn = package + "." + name
else:
fqn = name
- return {'name': name, 'fqn': fqn, 'package': package}
+ return {"name": name, "fqn": fqn, "package": package}
def dotname_to_name(dotname):
b_names = [part.pval for part in dotname]
- return '.'.join(b_names)
+ return ".".join(b_names)
def count_messages(body):
count = 0
for e in body:
- if (type(e) == m.MessageDefinition):
+ if isinstance(e, m.MessageDefinition):
count += 1
return count
@@ -68,7 +74,7 @@
def count_fields(body):
count = 0
for e in body:
- if (type(e) in [m.LinkDefinition, m.FieldDefinition, m.LinkSpec]):
+ if type(e) in [m.LinkDefinition, m.FieldDefinition, m.LinkSpec]:
count += 1
return count
@@ -90,8 +96,9 @@
self.append(x)
-''' XOS2Jinja overrides the underlying visitor pattern to transform the tree
- in addition to traversing it '''
+""" XOS2Jinja overrides the underlying visitor pattern to transform the tree
+ in addition to traversing it """
+
class XOS2Jinja(Visitor):
def __init__(self, args):
@@ -114,7 +121,7 @@
def visit_PolicyDefinition(self, obj):
if self.package:
- pname = '.'.join([self.package, obj.name.value.pval])
+ pname = ".".join([self.package, obj.name.value.pval])
else:
pname = obj.name.value.pval
@@ -126,17 +133,17 @@
def visit_PackageStatement(self, obj):
dotlist = obj.name.value
dotlist2 = [f.pval for f in dotlist]
- dotstr = '.'.join(dotlist2)
+ dotstr = ".".join(dotlist2)
self.package = dotstr
return True
def visit_ImportStatement(self, obj):
- '''Ignore'''
+ """Ignore"""
return True
def visit_OptionStatement(self, obj):
- if not hasattr(obj, 'mark_for_deletion'):
- if (self.current_message_name):
+ if not hasattr(obj, "mark_for_deletion"):
+ if self.current_message_name:
self.message_options[obj.name.value.pval] = obj.value.value.pval
else:
self.options[obj.name.value.pval] = obj.value.value.pval
@@ -159,7 +166,7 @@
except AttributeError:
name = obj.name.value
- if type(obj.value) == list:
+ if isinstance(obj.value, list):
value = dotname_to_name(obj.value)
else:
value = name_to_value(obj)
@@ -168,52 +175,52 @@
return True
def visit_FieldType(self, obj):
- '''Field type, if type is name, then it may need refactoring consistent with refactoring rules according to the table'''
+ """Field type, if type is name, then it may need refactoring consistent with refactoring rules according to the table"""
return True
def visit_LinkDefinition(self, obj):
s = {}
try:
- s['link_type'] = obj.link_type.pval
+ s["link_type"] = obj.link_type.pval
except AttributeError:
- s['link_type'] = obj.link_type
+ s["link_type"] = obj.link_type
- s['src_port'] = obj.src_port.value.pval
- s['name'] = obj.src_port.value.pval
+ s["src_port"] = obj.src_port.value.pval
+ s["name"] = obj.src_port.value.pval
try:
- s['policy'] = obj.policy.pval
+ s["policy"] = obj.policy.pval
except AttributeError:
- s['policy'] = None
+ s["policy"] = None
try:
- s['dst_port'] = obj.dst_port.value.pval
+ s["dst_port"] = obj.dst_port.value.pval
except AttributeError:
- s['dst_port'] = obj.dst_port
+ s["dst_port"] = obj.dst_port
- if type(obj.through) == list:
- s['through'] = dotname_to_fqn(obj.through)
+ if isinstance(obj.through, list):
+ s["through"] = dotname_to_fqn(obj.through)
else:
try:
- s['through'] = obj.through.pval
+ s["through"] = obj.through.pval
except AttributeError:
- s['through'] = obj.through
+ s["through"] = obj.through
- if type(obj.name) == list:
- s['peer'] = dotname_to_fqn(obj.name)
+ if isinstance(obj.name, list):
+ s["peer"] = dotname_to_fqn(obj.name)
else:
try:
- s['peer'] = obj.name.pval
+ s["peer"] = obj.name.pval
except AttributeError:
- s['peer'] = obj.name
+ s["peer"] = obj.name
try:
- s['reverse_id'] = obj.reverse_id.pval
+ s["reverse_id"] = obj.reverse_id.pval
except AttributeError:
- s['reverse_id'] = obj.reverse_id
+ s["reverse_id"] = obj.reverse_id
- s['_type'] = 'link'
- s['options'] = {'modifier': 'optional'}
+ s["_type"] = "link"
+ s["options"] = {"modifier": "optional"}
self.stack.push(s)
return True
@@ -226,21 +233,21 @@
s = {}
if isinstance(obj.ftype, m.Name):
- s['type'] = obj.ftype.value
+ s["type"] = obj.ftype.value
else:
- s['type'] = obj.ftype.name.pval
+ s["type"] = obj.ftype.name.pval
- s['name'] = obj.name.value.pval
+ s["name"] = obj.name.value.pval
try:
- s['policy'] = obj.policy.pval
+ s["policy"] = obj.policy.pval
except AttributeError:
- s['policy'] = None
+ s["policy"] = None
- s['modifier'] = obj.field_modifier.pval
- s['id'] = obj.fieldId.pval
+ s["modifier"] = obj.field_modifier.pval
+ s["id"] = obj.fieldId.pval
- opts = {'modifier': s['modifier']}
+ opts = {"modifier": s["modifier"]}
n = self.count_stack.pop()
for i in range(0, n):
k, v = self.stack.pop()
@@ -253,28 +260,28 @@
opts[k] = v
- s['options'] = opts
+ s["options"] = opts
try:
- last_link = self.stack[-1]['_type']
- if (last_link == 'link'):
- s['link'] = True
- except:
+ last_link = self.stack[-1]["_type"]
+ if last_link == "link":
+ s["link"] = True
+ except BaseException:
pass
- s['_type'] = 'field'
+ s["_type"] = "field"
self.stack.push(s)
return True
def visit_EnumFieldDefinition(self, obj):
if self.verbose > 4:
- print "\tEnumField: name=%s, %s" % (obj.name, obj)
+ print("\tEnumField: name=%s, %s" % (obj.name, obj))
return True
def visit_EnumDefinition(self, obj):
- '''New enum definition, refactor name'''
+ """New enum definition, refactor name"""
if self.verbose > 3:
- print "Enum, [%s] body=%s\n\n" % (obj.name, obj.body)
+ print("Enum, [%s] body=%s\n\n" % (obj.name, obj.body))
return True
@@ -297,28 +304,39 @@
last_field = {}
for i in range(0, stack_num):
f = self.stack.pop()
- if (f['_type'] == 'link'):
- f['options'] = {i: d[i] for d in [f['options'], last_field['options']] for i in d}
- assert (last_field == fields[0])
- fields[0].setdefault('options', {})['link_type'] = f['link_type']
+ if f["_type"] == "link":
+ f["options"] = {
+ i: d[i] for d in [f["options"], last_field["options"]] for i in d
+ }
+ assert last_field == fields[0]
+ fields[0].setdefault("options", {})["link_type"] = f["link_type"]
links.insert(0, f)
else:
fields.insert(0, f)
last_field = f
if self.package:
- model_name = '.'.join([self.package, obj.name.value.pval])
+ model_name = ".".join([self.package, obj.name.value.pval])
else:
model_name = obj.name.value.pval
- model_def = {'name':obj.name.value.pval,'fields':fields,'links':links, 'bases':obj.bases, 'options':self.message_options, 'package':self.package, 'fqn': model_name, 'rlinks': []}
+ model_def = {
+ "name": obj.name.value.pval,
+ "fields": fields,
+ "links": links,
+ "bases": obj.bases,
+ "options": self.message_options,
+ "package": self.package,
+ "fqn": model_name,
+ "rlinks": [],
+ }
try:
- model_def['policy'] = obj.policy.pval
+ model_def["policy"] = obj.policy.pval
except AttributeError:
- model_def['policy'] = None
+ model_def["policy"] = None
self.stack.push(model_def)
-
+
self.models[model_name] = model_def
# Set message options
@@ -382,40 +400,53 @@
rev_links = {}
link_opposite = {
- 'manytomany': 'manytomany',
- 'manytoone': 'onetomany',
- 'onetoone': 'onetoone',
- 'onetomany': 'manytoone'
+ "manytomany": "manytomany",
+ "manytoone": "onetomany",
+ "onetoone": "onetoone",
+ "onetomany": "manytoone",
}
for m in messages:
- for l in m['links']:
+ for l in m["links"]:
rlink = copy.deepcopy(l)
- rlink['_type'] = 'rlink' # An implicit link, not declared in the model
- rlink['src_port'] = l['dst_port']
- rlink['dst_port'] = l['src_port']
- rlink['peer'] = {'name': m['name'], 'package': m['package'], 'fqn': m['fqn']}
- rlink['link_type'] = link_opposite[l['link_type']]
- rlink["reverse_id"] = l['reverse_id']
+ rlink["_type"] = "rlink" # An implicit link, not declared in the model
+ rlink["src_port"] = l["dst_port"]
+ rlink["dst_port"] = l["src_port"]
+ rlink["peer"] = {
+ "name": m["name"],
+ "package": m["package"],
+ "fqn": m["fqn"],
+ }
+ rlink["link_type"] = link_opposite[l["link_type"]]
+ rlink["reverse_id"] = l["reverse_id"]
- if (not l['reverse_id']) and (self.args.verbosity >= 1):
- print >> sys.stderr, "WARNING: Field %s in model %s has no reverse_id" % (l["src_port"], m["name"])
+ if (not l["reverse_id"]) and (self.args.verbosity >= 1):
+ print(
+ "WARNING: Field %s in model %s has no reverse_id"
+ % (l["src_port"], m["name"]),
+ file=sys.stderr,
+ )
- if l["reverse_id"] and ((int(l["reverse_id"]) < 1000) or (int(l["reverse_id"]) >= 1900)):
- raise Exception("reverse id for field %s in model %s should be between 1000 and 1899" % (l["src_port"], m["name"]))
+ if l["reverse_id"] and (
+ (int(l["reverse_id"]) < 1000) or (int(l["reverse_id"]) >= 1900)
+ ):
+ raise Exception(
+ "reverse id for field %s in model %s should be between 1000 and 1899"
+ % (l["src_port"], m["name"])
+ )
try:
try:
- rev_links[l['peer']['fqn']].append(rlink)
+ rev_links[l["peer"]["fqn"]].append(rlink)
except TypeError:
pass
except KeyError:
- rev_links[l['peer']['fqn']] = [rlink]
+ rev_links[l["peer"]["fqn"]] = [rlink]
for m in messages:
try:
- m['rlinks'] = rev_links[m['name']]
- message_dict[m['name']]['rlinks'] = m['rlinks']
+ m["rlinks"] = rev_links[m["name"]]
+ message_dict[m["name"]]["rlinks"] = m["rlinks"]
except KeyError:
pass