##// END OF EJS Templates
don't rely on hasattr in utils.dir2...
don't rely on hasattr in utils.dir2 Some remote object libraries (e.g. Pyro) will lie to hasattr, not raising AttributeError until the attr is actually requested. This prevents these AttributeErrors from crashing IPython. closes gh-543 Signed-off-by: MinRK <benjaminrk@gmail.com>

File last commit:

r2814:6e6dcc90
r4113:b9b8f448
Show More
payload.py
41 lines | 1.2 KiB | text/x-python | PythonLexer
Brian Granger
Adding payload module.
r2807 # -*- coding: utf-8 -*-
"""Payload system for IPython.
Authors:
* Fernando Perez
* Brian Granger
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2008-2010 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from IPython.config.configurable import Configurable
Brian Granger
Fixing imports and syntax errors.
r2812 from IPython.utils.traitlets import List
Brian Granger
Adding payload module.
r2807
#-----------------------------------------------------------------------------
# Main payload class
#-----------------------------------------------------------------------------
class PayloadManager(Configurable):
Brian Granger
Fixing imports and syntax errors.
r2812 _payload = List([])
Brian Granger
Adding payload module.
r2807
Brian Granger
Fixing imports and syntax errors.
r2812 def write_payload(self, data):
if not isinstance(data, dict):
raise TypeError('Each payload write must be a dict, got: %r' % data)
Brian Granger
First working draft of new payload system.
r2814 self._payload.append(data)
Brian Granger
Adding payload module.
r2807
def read_payload(self):
return self._payload
Brian Granger
First working draft of new payload system.
r2814
def clear_payload(self):
self._payload = []