remove redundant map lookup
This commit is contained in:
parent
8d8160d341
commit
9df9fba621
1 changed files with 6 additions and 5 deletions
|
|
@ -58,20 +58,21 @@ class SynthSerializerFactory {
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
<T> JSONSerializer<T> createSerializer(Class<T> beanjavaClass) {
|
<T> JSONSerializer<T> createSerializer(Class<T> beanjavaClass) {
|
||||||
if (serializers.containsKey(beanjavaClass)) {
|
JSONSerializer<T> serializer = (JSONSerializer<T>) serializers.get(beanjavaClass);
|
||||||
return (JSONSerializer<T>) serializers.get(beanjavaClass);
|
if (serializer != null) {
|
||||||
|
return serializer;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
CtClass beanClass = pool.get(beanjavaClass.getName());
|
return tryCreateSerializer(beanjavaClass);
|
||||||
return tryCreateSerializer(beanjavaClass, beanClass);
|
|
||||||
} catch (NotFoundException | CannotCompileException | InstantiationException | IllegalAccessException |
|
} catch (NotFoundException | CannotCompileException | InstantiationException | IllegalAccessException |
|
||||||
InvocationTargetException | NoSuchMethodException e) {
|
InvocationTargetException | NoSuchMethodException e) {
|
||||||
throw new SerializerCreationException(e);
|
throw new SerializerCreationException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private <T> JSONSerializer<T> tryCreateSerializer(Class<?> javaClass, CtClass beanClass) throws NotFoundException, CannotCompileException, InstantiationException,
|
private <T> JSONSerializer<T> tryCreateSerializer(Class<?> javaClass) throws NotFoundException, CannotCompileException, InstantiationException,
|
||||||
IllegalAccessException, InvocationTargetException, NoSuchMethodException {
|
IllegalAccessException, InvocationTargetException, NoSuchMethodException {
|
||||||
|
CtClass beanClass = pool.get(javaClass.getName());
|
||||||
CtClass serializerClass = pool.makeClass(createSerializerName(beanClass), serializerBase);
|
CtClass serializerClass = pool.makeClass(createSerializerName(beanClass), serializerBase);
|
||||||
|
|
||||||
addToJsonStringMethod(beanClass, serializerClass);
|
addToJsonStringMethod(beanClass, serializerClass);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue