blob: 590a873d62704740aad251912f617d3f6f389440 [file] [log] [blame]
Zachary Turner9befc012015-11-24 21:35:50 +00001#!/usr/bin/env python
2
3"""
4Shared functionality used by `client` and `server` when dealing with
Zachary Turner24a95f82015-11-30 22:31:13 +00005remote transmission
Zachary Turner9befc012015-11-24 21:35:50 +00006"""
7
8# Future imports
9from __future__ import absolute_import
10from __future__ import print_function
11
12# Python modules
13import json
14import logging
15import os
16import socket
17import struct
18import sys
19
20# LLDB modules
21import use_lldb_suite
22
Zachary Turner24a95f82015-11-30 22:31:13 +000023def generate_config(languages):
24 config = {"languages": languages}
Zachary Turner9befc012015-11-24 21:35:50 +000025 return json.dumps(config)
26
Zachary Turner24a95f82015-11-30 22:31:13 +000027def parse_config(json_reader):
28 json_data = json_reader.read()
29 options_dict = json.loads(json_data)
30 return options_dict
Zachary Turner6f12d332015-11-30 22:31:24 +000031
32def serialize_response_status(status):
33 status = {"retcode": status[0], "output": status[1]}
34 return json.dumps(status)
35
36def deserialize_response_status(json_reader):
37 json_data = json_reader.read()
38 response_dict = json.loads(json_data)
39 return (response_dict["retcode"], response_dict["output"])