From eb4fe7d81eee44758913482ea574cb7b5a621a62 Mon Sep 17 00:00:00 2001 From: Pete Shadbolt Date: Tue, 17 May 2016 14:34:24 +0100 Subject: [PATCH] Move some files, comment visiblegraphstate --- {server => abp}/server.py | 6 +----- abp/visiblegraphstate.py | 14 +++++++++----- {server => client}/anders_briegel.js | 0 {server => client}/api.js | 0 {server => client}/curve.js | 0 {server => client}/graph.js | 0 {server => client}/index.html | 0 {server => client}/interaction.js | 0 {server => client}/libs.js | 0 {server => client}/main.css | 0 {server => client}/main.js | 0 {server => client}/materials.js | 0 {server => client}/poll.js | 0 {server => client}/tables.js | 0 {server => client}/three.js | 0 15 files changed, 10 insertions(+), 10 deletions(-) rename {server => abp}/server.py (89%) rename {server => client}/anders_briegel.js (100%) rename {server => client}/api.js (100%) rename {server => client}/curve.js (100%) rename {server => client}/graph.js (100%) rename {server => client}/index.html (100%) rename {server => client}/interaction.js (100%) rename {server => client}/libs.js (100%) rename {server => client}/main.css (100%) rename {server => client}/main.js (100%) rename {server => client}/materials.js (100%) rename {server => client}/poll.js (100%) rename {server => client}/tables.js (100%) rename {server => client}/three.js (100%) diff --git a/server/server.py b/abp/server.py similarity index 89% rename from server/server.py rename to abp/server.py index 38577c3..6d61098 100644 --- a/server/server.py +++ b/abp/server.py @@ -4,10 +4,6 @@ import abp import json clients = [] -state = abp.VisibleGraphState() - -def compute_diff(decoded_message): - def new_message(client, server, message): decoded_message = json.loads(message) @@ -29,7 +25,7 @@ def client_left(client, server): clients.remove(client) if __name__ == '__main__': - server = WebsocketServer(5001) + server = WebsocketServer(5000) server.set_fn_new_client(new_client) server.set_fn_message_received(new_message) server.set_fn_client_left(client_left) diff --git a/abp/visiblegraphstate.py b/abp/visiblegraphstate.py index a19fd9e..2d73d68 100644 --- a/abp/visiblegraphstate.py +++ b/abp/visiblegraphstate.py @@ -9,25 +9,29 @@ from websocket import create_connection from graphstate import GraphState import json + class VisibleGraphState(GraphState): + """ Overloads the graph state with methods for sending to the browser over a websocket """ + def __init__(self, *args, **kwargs): + """ Constructor """ GraphState.__init__(self, *args, **kwargs) - self.ws = create_connection("ws://localhost:5001") + self.ws = create_connection("ws://localhost:5000") atexit.register(self.shutdown) - #self.ws.send(json.dumps({"method":"clear"})) def shutdown(self): + """ The client should shut down automatically on close """ self.update() self.ws.close() def to_json(self): - ngbh = {a: {b : True for b in self.ngbh[a]} + """ We override to_json() so that we send the whole `ngbh` structure in JS-friendly form """ + ngbh = {a: {b: True for b in self.ngbh[a]} for a in self.ngbh} return {"vops": self.vops, "ngbh": ngbh, "meta": self.meta} def update(self): + """ Call this function when you are ready to send data to the browser """ data = json.dumps(self.to_json()) self.ws.send(data) - - diff --git a/server/anders_briegel.js b/client/anders_briegel.js similarity index 100% rename from server/anders_briegel.js rename to client/anders_briegel.js diff --git a/server/api.js b/client/api.js similarity index 100% rename from server/api.js rename to client/api.js diff --git a/server/curve.js b/client/curve.js similarity index 100% rename from server/curve.js rename to client/curve.js diff --git a/server/graph.js b/client/graph.js similarity index 100% rename from server/graph.js rename to client/graph.js diff --git a/server/index.html b/client/index.html similarity index 100% rename from server/index.html rename to client/index.html diff --git a/server/interaction.js b/client/interaction.js similarity index 100% rename from server/interaction.js rename to client/interaction.js diff --git a/server/libs.js b/client/libs.js similarity index 100% rename from server/libs.js rename to client/libs.js diff --git a/server/main.css b/client/main.css similarity index 100% rename from server/main.css rename to client/main.css diff --git a/server/main.js b/client/main.js similarity index 100% rename from server/main.js rename to client/main.js diff --git a/server/materials.js b/client/materials.js similarity index 100% rename from server/materials.js rename to client/materials.js diff --git a/server/poll.js b/client/poll.js similarity index 100% rename from server/poll.js rename to client/poll.js diff --git a/server/tables.js b/client/tables.js similarity index 100% rename from server/tables.js rename to client/tables.js diff --git a/server/three.js b/client/three.js similarity index 100% rename from server/three.js rename to client/three.js