ffmap-backend/lib/validate.py
2016-10-28 22:12:24 +02:00

32 lines
720 B
Python

import json
def validate_nodeinfos(nodeinfos):
result = []
for nodeinfo in nodeinfos:
nodeinfo = remove_garbage(nodeinfo)
if validate_nodeinfo(nodeinfo):
result.append(nodeinfo)
return result
def remove_garbage(nodeinfo):
garbage_keys = []
for k, v in nodeinfo.items():
if k.startswith('function:'):
garbage_keys.append(k)
elif isinstance(v, dict):
remove_garbage(v)
for k in garbage_keys:
del nodeinfo[k]
return nodeinfo
def validate_nodeinfo(nodeinfo):
if 'location' in nodeinfo:
if 'latitude' not in nodeinfo['location'] or 'longitude' not in nodeinfo['location']:
return False
return True