@SuppressWarnings({"unchecked", "rawtypes"}) public Converter<?> create(Type type, Genson genson) { Converter<?> converter; Serializer<?> serializer = provide(Serializer.class, type, serializersMap, genson); Deserializer<?> deserializer = provide(Deserializer.class, type, deserializersMap, genson); if (serializer instanceof Converter && deserializer instanceof Converter) { converter = (Converter<?>) deserializer; } else { converter = new DelegatedConverter(serializer, deserializer); } return converter; }
@SuppressWarnings({"unchecked", "rawtypes"}) public Converter<?> create(Type type, Genson genson) { Converter<?> converter; Serializer<?> serializer = provide(Serializer.class, type, serializersMap, genson); Deserializer<?> deserializer = provide(Deserializer.class, type, deserializersMap, genson); if (serializer instanceof Converter && deserializer instanceof Converter) { converter = (Converter<?>) deserializer; } else { converter = new DelegatedConverter(serializer, deserializer); } return converter; }