##// END OF EJS Templates
data...
data -Corrections in Parameters class graphics -Bug fix in RTI Plot -Bug fix in Sky Map Plot -New plot added: Phase Plot -New plotting codes added for new graphics model -Bug fix in HDF5 Writing module -Added new operation and plot to calculate Channel Phase Offset in JASMET experiments scripts -New scripts for JASMET campaign

File last commit:

r568:486c66596e4c
r608:3cc55c179318
Show More
JROSerializer.py
92 lines | 2.1 KiB | text/x-python | PythonLexer
'''
Created on Jul 17, 2014
@author: roj-idl71
'''
import cPickle
import msgpack_numpy
import jsonpickle
import yaml
# import JROMsgpack
# import JROJsonpickle
class Serializer(object):
def __init__(self):
self.serializer = None
def dumps(self, obj, **kwargs):
return self.serializer.dumps(obj, **kwargs)
def loads(self, obj, **kwargs):
return self.serializer.loads(obj, **kwargs)
class cPickleSerializer(Serializer):
def __init__(self):
self.serializer = cPickle
def dumps(self, obj, **kwargs):
return self.serializer.dumps(obj, 2)
def loads(self, obj, **kwargs):
return self.serializer.loads(obj)
class msgpackSerializer(Serializer):
def __init__(self):
self.serializer = msgpack_numpy
def dumps(self, obj, **kwargs):
return self.serializer.packb(obj)
def loads(self, obj, **kwargs):
return self.serializer.unpackb(obj)
class jsonpickleSerializer(Serializer):
def __init__(self):
self.serializer = jsonpickle
def dumps(self, obj, **kwargs):
return self.serializer.encode(obj, **kwargs)
def loads(self, obj, **kwargs):
return self.serializer.decode(obj, **kwargs)
class yamlSerializer(Serializer):
def __init__(self):
self.serializer = yaml
def dumps(self, obj, **kwargs):
return self.serializer.dump(obj, **kwargs)
def loads(self, obj, **kwargs):
return self.serializer.load(obj, **kwargs)
class DynamicSerializer(Serializer):
def __init__(self, mode = 'cPickle'):
if mode == 'cPickle':
self.serializer = cPickleSerializer()
if mode == 'jsonpickle':
self.serializer = jsonpickleSerializer()
if mode == 'yaml':
self.serializer = yamlSerializer()
if mode == 'msgpack':
self.serializer = msgpackSerializer()
if __name__ == '__main__':
pass