comparison wsgraph/web.py @ 17:1053290ba067

finish up this throwaway thing
author Jeff Hammel <jhammel@mozilla.com>
date Mon, 10 Dec 2012 17:36:31 -0800
parents 569a5d93b8e3
children b710a2374c8d
comparison
equal deleted inserted replaced
16:569a5d93b8e3 17:1053290ba067
22 return json.dumps(graph.node(node), sort_keys=self.sort_keys) 22 return json.dumps(graph.node(node), sort_keys=self.sort_keys)
23 23
24 def node(self, node, graph, request): 24 def node(self, node, graph, request):
25 return Response(body=self.format(graph.node(node))) 25 return Response(body=self.format(graph.node(node)))
26 26
27 def JSONFormatter(node, graph, request): 27 def edge(self, node1, node2, graph, request):
28 return json.dumps(graph.node(node), sort_keys=True) 28 return Response(body=self.format(graph.edge(node)))
29 def JSONGraphFormatter(graph, request):
30 return json.dumps({'nodes': graph.nodes(),
31 'edges': graph.edges()},
32 sort_keys=True)
33 29
34 class Dispatcher(object): 30 class Dispatcher(object):
35 31
36 def __init__(self, graph, 32 def __init__(self, graph,
37 graph_formatters=None, 33 graph_formatters=None,
110 segments = self.path_segments(request.path_info) 106 segments = self.path_segments(request.path_info)
111 rank = len(segments) 107 rank = len(segments)
112 if rank not in (0,1,2): 108 if rank not in (0,1,2):
113 return exc.HTTPNotFound() 109 return exc.HTTPNotFound()
114 110
115 111 # is resource in the graph?
116 # is resource in the graph? [TODO]
117 if (rank == EDGE) or (rank == NODE): 112 if (rank == EDGE) or (rank == NODE):
118 if tuple(segments) not in self.graph: 113 if tuple(segments) not in self.graph:
119 return exc.HTTPNotFound() 114 return exc.HTTPNotFound()
120 115
121 # formatter 116 # formatter