package com.sap.hana.cloud.samples.benefits.api.util; import java.util.Date; import com.google.gson.Gson; import com.google.gson.GsonBuilder; public final class GsonFactory { private static final GsonFactory INSTANCE = new GsonFactory(); public static GsonFactory getInstance() { return INSTANCE; } private GsonFactory() { } public Gson createDefaultGson() { return createaDefaultJsonBuilder().create(); } public Gson createAnnotatedGson() { GsonBuilder gb = createaDefaultJsonBuilder(); return gb.excludeFieldsWithoutExposeAnnotation().create(); } private GsonBuilder createaDefaultJsonBuilder() { GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.registerTypeAdapter(Date.class, new DateTimeAdapter()); gsonBuilder.setPrettyPrinting(); return gsonBuilder; } }