From 7683ee060e3fed18786b1f9e77cde8d42d1413df Mon Sep 17 00:00:00 2001 From: David Wilson Date: Thu, 11 Aug 2016 03:02:23 +0100 Subject: [PATCH] Split out GetPreamble. --- econtext/master.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/econtext/master.py b/econtext/master.py index 8f97baf7..279ed2e0 100644 --- a/econtext/master.py +++ b/econtext/master.py @@ -181,6 +181,16 @@ class LocalStream(econtext.core.Stream): def __repr__(self): return '%s(%s)' % (self.__class__.__name__, self._context) + def GetPreamble(self): + source = inspect.getsource(econtext.core) + source += '\nExternalContext().main%r\n' % (( + self._context.key, + LOG.level or logging.getLogger().level or logging.INFO, + ),) + + compressed = zlib.compress(MinimizeSource(source)) + return str(len(compressed)) + '\n' + compressed + def Connect(self): LOG.debug('%r.Connect()', self) pid, sock = CreateChild(*self.GetBootCommand()) @@ -190,15 +200,7 @@ class LocalStream(econtext.core.Stream): LOG.debug('%r.Connect(): child process stdin/stdout=%r', self, self.read_side.fd) - source = inspect.getsource(econtext.core) - source += '\nExternalContext().main%r\n' % (( - self._context.key, - LOG.level or logging.getLogger().level or logging.INFO, - ),) - - compressed = zlib.compress(MinimizeSource(source)) - preamble = str(len(compressed)) + '\n' + compressed - econtext.core.write_all(self.write_side.fd, preamble) + econtext.core.write_all(self.write_side.fd, self.GetPreamble()) assert os.read(self.read_side.fd, 3) == 'OK\n'