Gson newGson = gson.newBuilder() .registerTypeAdapterFactory(bsonAdapterFactory) .create();
private GsonBuilder initBuilder(Map<Class, List<Class<?>>> concreteSubTypes, GlobalEnvironment environment) { GsonBuilder gsonBuilder = (prototype != null ? prototype.newBuilder() : new GsonBuilder()) .serializeNulls() .setFieldNamingStrategy(fieldNamingStrategy != null ? fieldNamingStrategy : new GsonFieldNamingStrategy(environment.messageBundle)) .registerTypeAdapterFactory(new GsonJava8TypeAdapterFactory()); return configurers.stream().reduce(gsonBuilder, (builder, config) -> config.configure(new ConfigurerParams(builder, concreteSubTypes, this.typeInfoGenerator, environment)), (b1, b2) -> b2); }
Gson newGson = gson.newBuilder() .registerTypeAdapterFactory(bsonAdapterFactory) .create();