@@ -108,9 +108,9 @@ class BaseTransformer(javaobj.transformers.ObjectTransformer):
108108 classes it can handle
109109 """
110110
111- def __init__ (self , handled_classes = {} ):
111+ def __init__ (self , handled_classes = None ):
112112 self .instance = None
113- self .HANDLED_CLASSES = handled_classes
113+ self .handled_classes = handled_classes or {}
114114
115115 def create_instance (self , classdesc ):
116116 """
@@ -119,8 +119,8 @@ def create_instance(self, classdesc):
119119 :param classdesc: The description of a Java class
120120 :return: The Python form of the object, or the original JavaObject
121121 """
122- if classdesc .name in self .HANDLED_CLASSES :
123- self .instance = self .HANDLED_CLASSES [classdesc .name ]()
122+ if classdesc .name in self .handled_classes :
123+ self .instance = self .handled_classes [classdesc .name ]()
124124 return self .instance
125125
126126 return None
@@ -148,21 +148,22 @@ def __init__(self):
148148 ]
149149
150150 def load_custom_writeObject (self , parser , reader , name ):
151- if name == self .name :
152- fields = []
153- values = []
154- for index , value in enumerate (self .field_types ):
155- values .append (parser ._read_field_value (value ))
156- fields .append (javaobj .beans .JavaField (value , self .field_names [index ]))
157-
158- class_desc = javaobj .beans .JavaClassDesc (
159- javaobj .beans .ClassDescType .NORMALCLASS )
160- class_desc .name = self .name
161- class_desc .desc_flags = javaobj .beans .ClassDataType .EXTERNAL_CONTENTS
162- class_desc .fields = fields
163- class_desc .field_data = values
164- return class_desc
165- return None
151+ if name != self .name :
152+ return None
153+
154+ fields = []
155+ values = []
156+ for f_name , f_type in zip (self .field_names , self .field_types ):
157+ values .append (parser ._read_field_value (f_type ))
158+ fields .append (javaobj .beans .JavaField (f_type , f_name ))
159+
160+ class_desc = javaobj .beans .JavaClassDesc (
161+ javaobj .beans .ClassDescType .NORMALCLASS )
162+ class_desc .name = self .name
163+ class_desc .desc_flags = javaobj .beans .ClassDataType .EXTERNAL_CONTENTS
164+ class_desc .fields = fields
165+ class_desc .field_data = values
166+ return class_desc
166167
167168# ------------------------------------------------------------------------------
168169
0 commit comments