summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Merickel <michael@merickel.org>2012-04-16 22:56:35 -0500
committerMichael Merickel <michael@merickel.org>2012-04-16 22:56:35 -0500
commit8c44765063c5e969e8afb049fe31c4014500d339 (patch)
treee8c5a670edb69e1ebbd03ddc8b80ff526dec2c13
parent85d6f81c6b517e6f973fcaba8bcb7df503a16c50 (diff)
downloadpyramid-8c44765063c5e969e8afb049fe31c4014500d339.tar.gz
pyramid-8c44765063c5e969e8afb049fe31c4014500d339.tar.bz2
pyramid-8c44765063c5e969e8afb049fe31c4014500d339.zip
removed the component registry from json renderer
-rw-r--r--pyramid/renderers.py31
1 files changed, 0 insertions, 31 deletions
diff --git a/pyramid/renderers.py b/pyramid/renderers.py
index 54ba5cf6b..3b1e0f44f 100644
--- a/pyramid/renderers.py
+++ b/pyramid/renderers.py
@@ -4,7 +4,6 @@ import pkg_resources
import threading
from zope.interface import implementer
-from zope.interface.registry import Components
from pyramid.interfaces import (
IChameleonLookup,
@@ -228,13 +227,6 @@ class JSON(object):
self._default = kw.pop('default', None)
self.kw = kw
- self.encoders = Components()
-
- self._register_default_encoders()
-
- def _register_default_encoders(self):
- import datetime
- self.add_encoder(lambda o: o.isoformat(), datetime.datetime)
def __call__(self, info):
""" Returns a plain JSON-encoded string with content-type
@@ -250,25 +242,6 @@ class JSON(object):
return self.dumps(value)
return _render
- def add_encoder(self, encoder, type_or_iface):
- """ When an object of type (or interface) ``type_or_iface``
- fails to automatically encode using the default encoder, the
- renderer will use the encoder ``encoder`` to convert it into a
- string.
-
- .. code-block:: python
-
- class Foo(object):
- x = 5
-
- def foo_encoder(obj):
- return str(obj.x)
-
- renderer = JSON(indent=4)
- renderer.add_encoder(foo_encoder, foo)
- """
- self.encoders.registerUtility(encoder, type_or_iface)
-
def default_encode(self, obj):
""" Encode a custom Python object to a JSON string.
@@ -279,10 +252,6 @@ class JSON(object):
if hasattr(obj, '__json__'):
return obj.__json__()
- encoder = self.encoders.queryUtility(obj)
- if encoder is not None:
- return encoder(obj)
-
if self._default is not None:
return self._default(obj)
raise TypeError(repr(obj) + ' is not JSON serializable')