aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/flow.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2011-01-27 10:52:42 +1300
committerAldo Cortesi <aldo@nullcube.com>2011-01-27 10:52:42 +1300
commit077272ec9703ff1b3f20f69c971adf63a6dd05c1 (patch)
treec45e28fc09abaecd8f968f73f94ac73f8deec99d /libmproxy/flow.py
parent460107589c2ef425ef124c74908be1fa86ebab9d (diff)
downloadmitmproxy-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.py12
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):