Changeset 1113
- Timestamp:
- 06/18/08 15:59:48
- Files:
-
- geojsonlib/trunk/geojsonlib/encoding.py (modified) (2 diffs)
- geojsonlib/trunk/setup.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
geojsonlib/trunk/geojsonlib/encoding.py
r1111 r1113 1 # ============================================================================2 # GeoJSON. Copyright (C) 2007 Sean C. Gillies3 #4 # See ../LICENSE.txt5 #6 # Contact: Sean Gillies, sgillies@frii.com7 # ============================================================================8 9 import simplejson10 1 import geojsonlib 11 2 import geojsonlib.factory 12 3 from geojsonlib.mapping import Mapping, to_mapping 4 5 6 class SimpleJson(object): 7 JSONEncoder = object 8 JSONDecoder = object 9 def dump(self, *args, **kwargs): 10 raise NotImplementedError, "dump() requires simplejson" 11 def dumps(self, *args, **kwargs): 12 raise NotImplementedError, "dumps() requires simplejson" 13 def load(self, *args, **kwargs): 14 raise NotImplementedError, "load() requires simplejson" 15 def loads(self, *args, **kwargs): 16 raise NotImplementedError, "loads() requires simplejson" 17 18 try: 19 import simplejson 20 except ImportError: 21 simplejson = SimpleJson() 13 22 14 23 … … 28 37 29 38 39 default_encoder = PyGFPEncoder 40 default_decoder = simplejson.JSONDecoder 41 42 30 43 # Wrap the functions from simplejson, providing encoder, decoders, and 31 44 # object creation hooks 32 45 33 def dump(obj, fp, cls= PyGFPEncoder, **kwargs):34 return simplejson.dump(to_mapping(obj), fp, cls=cls , **kwargs)46 def dump(obj, fp, cls=None, **kwargs): 47 return simplejson.dump(to_mapping(obj), fp, cls=cls or default_encoder, **kwargs) 35 48 36 49 37 def dumps(obj, cls= PyGFPEncoder, **kwargs):38 return simplejson.dumps(to_mapping(obj), cls=cls , **kwargs)50 def dumps(obj, cls=None, **kwargs): 51 return simplejson.dumps(to_mapping(obj), cls=cls or default_encoder, **kwargs) 39 52 40 53 41 def load(fp, cls= simplejson.JSONDecoder, object_hook=None, **kwargs):42 return simplejson.load(fp, cls=cls , object_hook=object_hook, **kwargs)54 def load(fp, cls=None, object_hook=None, **kwargs): 55 return simplejson.load(fp, cls=cls or default_decoder, object_hook=object_hook, **kwargs) 43 56 44 57 45 def loads(s, cls=simplejson.JSONDecoder, object_hook=None, **kwargs): 46 return simplejson.loads(s, cls=cls, object_hook=object_hook, **kwargs) 47 58 def loads(s, cls=None, object_hook=None, **kwargs): 59 return simplejson.loads(s, cls=cls or default_decoder, object_hook=object_hook, **kwargs) geojsonlib/trunk/setup.py
r1111 r1113 1 2 1 from setuptools import setup 3 2 … … 17 16 long_description = readme_text, 18 17 packages = ["geojsonlib"], 19 install_requires = ["simplejson", "setuptools"], 18 install_requires = ["setuptools"], 19 extras_require = { 20 'dump/load': ["simplejson"] 21 }, 20 22 test_suite = "tests.test_suite", 21 23 classifiers = [ … … 29 31 ], 30 32 ) 31
