Advertisement
Guest User

Untitled

a guest
Nov 8th, 2014
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.01 KB | None | 0 0
  1. import urllib, json, networkx  as nx
  2. class topology_parser:
  3.    
  4.    
  5.     def __init__(self,url):
  6.         self.topology = nx.MultiGraph()
  7.         self.url=url
  8.         self.nx_olsr(self.url,self.topology)
  9.        
  10.        
  11.     def update(self):
  12.         self.nx_olsr(self.url,self.topology)
  13.        
  14.  
  15.     def nx_olsr(self,url,topol):
  16.         response =urllib.urlopen(url)
  17.         json_data = json.loads(response.read())
  18.         for elem in json_data["topology"]:
  19.             topol.add_edge(elem["lastHopIP"], elem["destinationIP"], weight=elem["tcEdgeCost"])
  20.        
  21.     def make_diff(self, old_graph):
  22.         to_remove = nx.difference(old_graph, self.topology)
  23.         to_add = nx.difference(self.topology, old_graph)
  24.         return [to_remove, to_add]
  25.        
  26. def main():
  27.     firenze="http://10.150.9.1:9090/"
  28.     tp=topology_parser(firenze);
  29.    
  30.     #cycle every n seconds
  31.     tp.update();
  32.     diff= tp.make_diff(old_graph)
  33.      
  34.        
  35.    
  36.        
  37. if __name__ == "__main__":
  38.     main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement