Improve serialization interfaces
[lgpl/argeo-commons.git] / server / runtime / org.argeo.server.core / src / main / java / org / argeo / server / DeserializingEditor.java
index 4c8dc6d8d9e29e697359b92f31a4f6ade7f0ecf5..80b3e408d0b401090fa791f59e993ba1fc263492 100644 (file)
@@ -6,18 +6,20 @@ import java.io.StringReader;
 import org.apache.commons.io.IOUtils;
 
 public class DeserializingEditor extends PropertyEditorSupport {
-       private ServerDeserializer deserializer;
+       private final Deserializer deserializer;
+       private final Class<?> targetClass;
 
-       public DeserializingEditor(ServerDeserializer deserializer) {
+       public DeserializingEditor(Deserializer deserializer, Class<?> targetClass) {
                super();
                this.deserializer = deserializer;
+               this.targetClass = targetClass;
        }
 
        @Override
        public void setAsText(String text) throws IllegalArgumentException {
                StringReader reader = new StringReader(text);
                try {
-                       setValue(deserializer.deserialize(reader));
+                       setValue(deserializer.deserialize(reader, targetClass));
                } finally {
                        IOUtils.closeQuietly(reader);
                }