1 package org
.argeo
.server
;
3 import java
.beans
.PropertyEditorSupport
;
4 import java
.io
.StringReader
;
6 import org
.apache
.commons
.io
.IOUtils
;
8 public class DeserializingEditor
extends PropertyEditorSupport
{
9 private final Deserializer deserializer
;
10 private final Class
<?
> targetClass
;
12 public DeserializingEditor(Deserializer deserializer
, Class
<?
> targetClass
) {
14 this.deserializer
= deserializer
;
15 this.targetClass
= targetClass
;
19 public void setAsText(String text
) throws IllegalArgumentException
{
20 StringReader reader
= new StringReader(text
);
22 setValue(deserializer
.deserialize(reader
, targetClass
));
24 IOUtils
.closeQuietly(reader
);