@@ -26,32 +26,49 @@ def log_error(message, ident=0):
2626
2727__version__ = "$Revision: 20 $"
2828
29- def load (file_object ):
29+
30+ def load (file_object , * args ):
3031 """
3132 Deserializes Java primitive data and objects serialized by ObjectOutputStream
3233 from a file-like object.
3334 """
3435 marshaller = JavaObjectUnmarshaller (file_object )
36+ for t in args :
37+ marshaller .add_transformer (t )
3538 marshaller .add_transformer (DefaultObjectTransformer ())
3639 return marshaller .readObject ()
3740
41+ def load_all (file_object ):
42+ marshaller = JavaObjectUnmarshaller (file_object )
43+ marshaller .add_transformer (DefaultObjectTransformer ())
44+
45+ res = []
46+ while marshaller .data_left :
47+ res .append (marshaller .readObject ())
48+ return res
49+
50+
3851
39- def loads (string ):
52+ def loads (string , * args ):
4053 """
4154 Deserializes Java objects and primitive data serialized by ObjectOutputStream
4255 from a string.
4356 """
4457 f = StringIO .StringIO (string )
4558 marshaller = JavaObjectUnmarshaller (f )
59+ for t in args :
60+ marshaller .add_transformer (t )
4661 marshaller .add_transformer (DefaultObjectTransformer ())
4762 return marshaller .readObject ()
4863
4964
50- def dumps (object ):
65+ def dumps (object , * args ):
5166 """
5267 Serializes Java primitive data and objects unmarshaled by load(s) before into string.
5368 """
5469 marshaller = JavaObjectMarshaller ()
70+ for t in args :
71+ marshaller .add_transformer (t )
5572 return marshaller .dump (object )
5673
5774
0 commit comments