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 public T deserialize(Reader input) {
035 return _jsonDeserializer.deserialize(input);
036 }
037
038 public T deserialize(String input) {
039 return _jsonDeserializer.deserialize(input);
040 }
041
042 public JSONDeserializer<T> safeMode(boolean safeMode) {
043 _portalBeanObjectFactory.setSafeMode(safeMode);
044
045 return this;
046 }
047
048 public JSONDeserializer<T> use(String path, Class<?> clazz) {
049 _jsonDeserializer.use(path, clazz);
050
051 return this;
052 }
053
054 private flexjson.JSONDeserializer<T> _jsonDeserializer;
055 private PortalBeanObjectFactory _portalBeanObjectFactory;
056
057 }