22 return json.dumps(self, default=
lambda o: o.__dict__, sort_keys=
False, indent=4)
26 return json.dumps(self, default=
lambda o: o.__dict__, sort_keys=
False, indent=4)
30 return json.dumps(self, default=
lambda o: o.__dict__, sort_keys=
False, indent=4)
35 data = {
'query' :
'MATCH (n) return n'}
36 auth = (
'neo4j',
'temppass')
37 result_switches = requests.post(
'http://localhost:7474/db/data/cypher', data=data, auth=auth)
40 j_switches = json.loads(result_switches.text)
44 for n
in j_switches[
'data']:
46 result_relationships = requests.get(str(r[
'outgoing_relationships']), auth=auth)
47 j_paths = json.loads(result_relationships.text)
48 outgoing_relationships = []
49 for j_path
in j_paths:
51 if j_path[
'type'] ==
u'isl':
54 source.label = r[
'data'][
'name']
55 source.id = r[
'metadata'][
'id']
57 dest_node = requests.get(str(j_path[
'end']), auth=auth)
58 j_dest_node = json.loads(dest_node.text)
60 target.label = j_path[
'data'][
'dst_switch']
61 target.id = j_dest_node[
'metadata'][
'id']
62 edge.value =
"{} to {}".
format(source.label, target.label)
65 nodes.edges.append(edge)
80 source.label = "s{}".format(str(i)) 83 target.label = "s{}".format(str(i + 1)) 85 edge.value = "link: {}".format(str(i)) 90 nodes.edges.append(edge)