aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/console/__init__.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2012-04-02 09:30:38 +1200
committerAldo Cortesi <aldo@nullcube.com>2012-04-02 09:30:38 +1200
commit7fef0ecdf5618d06e78ee8f833525d7784234df8 (patch)
treef112717d6f42194e5af26b645c8fe7007d5e3a0a /libmproxy/console/__init__.py
parent35f4a1c424907d296a2ee0e852107542fcf8ac0d (diff)
downloadmitmproxy-7fef0ecdf5618d06e78ee8f833525d7784234df8.tar.gz
mitmproxy-7fef0ecdf5618d06e78ee8f833525d7784234df8.tar.bz2
mitmproxy-7fef0ecdf5618d06e78ee8f833525d7784234df8.zip
Make "T" pretty view over-ride persistent when switching between flows.
We do this by adding a flow settings mechanism to ConsoleState. This is pretty rough at the moment and should become more sophisticated as needed.
Diffstat (limited to 'libmproxy/console/__init__.py')
-rw-r--r--libmproxy/console/__init__.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/libmproxy/console/__init__.py b/libmproxy/console/__init__.py
index fe81dc26..ee295755 100644
--- a/libmproxy/console/__init__.py
+++ b/libmproxy/console/__init__.py
@@ -14,7 +14,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import mailcap, mimetypes, tempfile, os, subprocess, glob, time, shlex
-import os.path, sys
+import os.path, sys, weakref
import urwid
from .. import controller, utils, flow
import flowlist, flowview, help, common, grideditor, palettes, contentview
@@ -235,6 +235,15 @@ class ConsoleState(flow.State):
self.view_flow_mode = common.VIEW_FLOW_REQUEST
self.last_script = ""
self.last_saveload = ""
+ self.flowsettings = weakref.WeakKeyDictionary()
+
+ def add_flow_setting(self, flow, key, value):
+ d = self.flowsettings.setdefault(flow, {})
+ d[key] = value
+
+ def get_flow_setting(self, flow, key, default=None):
+ d = self.flowsettings.get(flow, {})
+ return d.get(key, default)
def add_request(self, req):
f = flow.State.add_request(self, req)