package data.media;
import java.lang.reflect.Type;
import com.alibaba.fastjson.parser.DefaultJSONParser;
import com.alibaba.fastjson.parser.JSONScanner;
import com.alibaba.fastjson.parser.JSONToken;
import com.alibaba.fastjson.parser.deserializer.ObjectDeserializer;
public class MediaContentDeserializer implements ObjectDeserializer {
private ObjectDeserializer mediaDeserializer;
private ObjectDeserializer imageDeserializer;
private final char[] mediaPrefix = "\"media\":".toCharArray();
private final char[] imagePrefix = "\"images\":".toCharArray();
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
final JSONScanner lexer = (JSONScanner) parser.getLexer();
MediaContent object = new MediaContent();
lexer.matchField(mediaPrefix);
if (mediaDeserializer == null) {
//mediaDeserializer = parser.getMapping().getDeserializer(ObjectDeserializer.class);
}
mediaDeserializer.deserialze(parser, clazz, null);
lexer.matchField(imagePrefix);
imageDeserializer.deserialze(parser, clazz, null);
// if (lexer.token() != JSONToken.RBRACE)
// TODO Auto-generated method stub
return null;
}
public int getFastMatchToken() {
return JSONToken.LBRACE;
}
}