package jef.tools;
import java.lang.reflect.Type;
import java.util.Collections;
import java.util.Set;
import jef.json.JsonTypeDeserializer;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.ParserConfig;
public class FooDeserializer extends JsonTypeDeserializer<Foo>{
@Override
public Foo processObject(ParserConfig config,JSONObject obj) {
String className=obj.getString("Date");
try {
Foo foo=(Foo)Class.forName(className).newInstance();
foo.setName(obj.getString("NAME_1"));
foo.setDesc("AAA");
return foo;
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
throw new IllegalArgumentException();
}
public Set<Type> getAutowiredFor() {
return Collections.<Type>singleton(Foo.class);
}
}