001
014
015 package com.liferay.portal.json;
016
017 import com.liferay.portal.kernel.json.JSONDeserializer;
018
019 import java.io.Reader;
020
021
024 public class JSONDeserializerImpl<T> implements JSONDeserializer<T> {
025
026 public JSONDeserializerImpl() {
027 _jsonDeserializer = new flexjson.JSONDeserializer<T>();
028
029 _portalBeanObjectFactory = new PortalBeanObjectFactory();
030
031 _jsonDeserializer.use(Object.class, _portalBeanObjectFactory);
032 }
033
034 @Override
035 public T deserialize(Reader input) {
036 return _jsonDeserializer.deserialize(input);
037 }
038
039 @Override
040 public T deserialize(String input) {
041 return _jsonDeserializer.deserialize(input);
042 }
043
044 @Override
045 public JSONDeserializer<T> safeMode(boolean safeMode) {
046 _portalBeanObjectFactory.setSafeMode(safeMode);
047
048 return this;
049 }
050
051 @Override
052 public JSONDeserializer<T> use(String path, Class<?> clazz) {
053 _jsonDeserializer.use(path, clazz);
054
055 return this;
056 }
057
058 private flexjson.JSONDeserializer<T> _jsonDeserializer;
059 private PortalBeanObjectFactory _portalBeanObjectFactory;
060
061 }