Source code for openalea.core.service.serialization
from openalea.core.plugin import iter_plugins
[docs]
def get_saver(name="GenericSaver"):
for saver in iter_plugins('vpltk.saver'):
if saver.default_name == name:
return saver
# if required plugin has not been found
raise TypeError('saver plugin not found: ' + str(name))
[docs]
def get_loader(name="GenericLoader"):
for loader in iter_plugins('vpltk.loader'):
if loader.default_name == name:
return loader
[docs]
def save(data, path, fmt=None, **kwds):
pass
[docs]
def load(path, fmt=None, **kwds):
pass
[docs]
def serialize(data, fmt=None, **kwds):
import pickle
txt = pickle.dumps(data)
return txt
[docs]
def deserialize(txt, fmt=None, **kwds):
import pickle
data = pickle.loads(txt)
return data
[docs]
def picklable_object(obj):
"""
Returns a picklable wrapper of obj.
This service is used to pickle objects that are not natively pickable
and that cannot be modified to be compatible with pickle.
entry_point:
openalea.pickler
"""
pass