diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2011-01-27 10:52:42 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2011-01-27 10:52:42 +1300 |
commit | 077272ec9703ff1b3f20f69c971adf63a6dd05c1 (patch) | |
tree | c45e28fc09abaecd8f968f73f94ac73f8deec99d /libmproxy/flow.py | |
parent | 460107589c2ef425ef124c74908be1fa86ebab9d (diff) | |
download | mitmproxy-077272ec9703ff1b3f20f69c971adf63a6dd05c1.tar.gz mitmproxy-077272ec9703ff1b3f20f69c971adf63a6dd05c1.tar.bz2 mitmproxy-077272ec9703ff1b3f20f69c971adf63a6dd05c1.zip |
Switch to BSON for data serialization.
Diffstat (limited to 'libmproxy/flow.py')
-rw-r--r-- | libmproxy/flow.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/libmproxy/flow.py b/libmproxy/flow.py index c91dc14a..8eb7342a 100644 --- a/libmproxy/flow.py +++ b/libmproxy/flow.py @@ -2,7 +2,7 @@ This module provides more sophisticated flow tracking. These match requests with their responses, and provide filtering and interception facilities. """ -import json +from contrib import bson import proxy, threading class ReplayConnection: @@ -148,12 +148,14 @@ class State: return f def dump_flows(self): - data = [i.get_state() for i in self.view] - return json.dumps(data) + data = dict( + flows =[i.get_state() for i in self.view] + ) + return bson.dumps(data) def load_flows(self, js, klass): - data = json.loads(js) - data = [klass.from_state(i) for i in data] + data = bson.loads(js) + data = [klass.from_state(i) for i in data["flows"]] self.flow_list.extend(data) def set_limit(self, limit): |