From 6ac3c5d8ae44faeddd606f23d8b4d9aed9b34187 Mon Sep 17 00:00:00 2001 From: Sebastien Bourdeauducq Date: Sat, 25 Oct 2014 16:31:34 +0800 Subject: [PATCH] worker: use pyon --- artiq/management/worker.py | 9 +++++---- artiq/management/worker_impl.py | 7 ++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/artiq/management/worker.py b/artiq/management/worker.py index b23503e0a..7746fecd3 100644 --- a/artiq/management/worker.py +++ b/artiq/management/worker.py @@ -2,7 +2,8 @@ import sys import asyncio import subprocess import signal -import json + +from artiq.management import pyon class WorkerFailed(Exception): @@ -24,7 +25,7 @@ class Worker: @asyncio.coroutine def _send(self, obj, timeout): - line = json.dumps(obj) + line = pyon.encode(obj) self.process.stdin.write(line.encode()) self.process.stdin.write("\n".encode()) try: @@ -47,9 +48,9 @@ class Worker: raise WorkerFailed( "Worker ended unexpectedly while trying to receive data") try: - obj = json.loads(line.decode()) + obj = pyon.decode(line.decode()) except: - raise WorkerFailed("Worker sent invalid JSON data") + raise WorkerFailed("Worker sent invalid PYON data") return obj @asyncio.coroutine diff --git a/artiq/management/worker_impl.py b/artiq/management/worker_impl.py index e9a710ab4..79492512d 100644 --- a/artiq/management/worker_impl.py +++ b/artiq/management/worker_impl.py @@ -1,7 +1,8 @@ -import json import sys import importlib +from artiq.management import pyon + def import_in_folder(path, name): try: @@ -20,7 +21,7 @@ def run(path, name): def put_object(obj): - ds = json.dumps(obj) + ds = pyon.encode(obj) sys.__stdout__.write(ds) sys.__stdout__.write("\n") sys.__stdout__.flush() @@ -31,7 +32,7 @@ def main(): while True: line = sys.__stdin__.readline() - obj = json.loads(line) + obj = pyon.decode(line) put_object("ack") try: