Example usage for com.google.gson GsonBuilder registerTypeAdapterFactory

List of usage examples for com.google.gson GsonBuilder registerTypeAdapterFactory

Introduction

In this page you can find the example usage for com.google.gson GsonBuilder registerTypeAdapterFactory.

Prototype

public GsonBuilder registerTypeAdapterFactory(TypeAdapterFactory factory) 

Source Link

Document

Register a factory for type adapters.

Usage

From source file:com.auction.request.handler.RequestHandler.java

@ClientRequest(action = ACTION.FETCH_MESSAGE_INFO)
public ClientResponse getMessageInfo(ISession session, IPacket packet) {
    Gson gson1 = new Gson();
    Message message = gson1.fromJson(packet.getPacketBody(), Message.class);
    MessageManager messageManager = new MessageManager();

    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY);
    Gson gson = gsonBuilder.create();/* w  w  w . ja v a2 s. c  om*/
    String messageInfoString = gson.toJson(messageManager.getMessageInfo(message.getId()));
    Message response = gson.fromJson(messageInfoString, Message.class);

    if (response != null) {
        response.setSuccess(true);
    } else {
        response = new Message();
        response.setSuccess(false);
    }
    return response;
}

From source file:com.auction.request.handler.RequestHandler.java

@ClientRequest(action = ACTION.FETCH_STAT_LIST)
public ClientResponse getStatList(ISession session, IPacket packet) {
    Gson gson1 = new Gson();
    StatParams statParams = gson1.fromJson(packet.getPacketBody(), StatParams.class);
    ProductLibrary productLibrary = new ProductLibrary();
    List<Stat> statList = productLibrary.getStatList(statParams.getStartDate(), statParams.getEndDate(),
            statParams.getProductId());//from  w  ww .j  a v  a  2  s  .  c  o  m

    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY);
    Gson gson = gsonBuilder.create();
    String statListString = gson.toJson(statList);
    StatList response = gson.fromJson("{\"stats\":" + statListString + "}", StatList.class);
    response.setSuccess(true);
    return response;
}

From source file:com.cleanappsample.di.RootModule.java

License:Apache License

@Provides
Gson provideGson() {/* ww  w . j a  v a2s. c  om*/
    GsonBuilder builder = new GsonBuilder();
    builder.registerTypeAdapterFactory(new AutoValueAdapterFactory());
    builder.serializeNulls();
    return builder.create();
}

From source file:com.daxstudio.sa.base.model.provider.ProviderModule.java

License:Open Source License

@Singleton
@Provides/* w  w  w  . ja  v  a 2s .c o  m*/
Gson provideGson(final GsonConfig config) {
    final GsonBuilder builder = new GsonBuilder();
    if (config.autoGsonTypeAdapterFactory() != null) {
        builder.registerTypeAdapterFactory(config.autoGsonTypeAdapterFactory());
    }
    return builder
            .registerTypeAdapter(ZonedDateTime.class,
                    new ZonedDateTimeJsonConverter(config.dateTimeFormatter()))
            .setDateFormat(config.dateFormatString()).setPrettyPrinting().create();
}

From source file:com.ecwid.mailchimp.internal.gson.MailChimpGsonFactory.java

License:Apache License

/**
 * Creates a new {@link Gson} object.//  w  w  w  .ja  va2 s  .c o  m
 */
public static Gson createGson() {
    GsonBuilder builder = new GsonBuilder();
    builder.setExclusionStrategies(exclusionStrategy);
    builder.registerTypeAdapter(Date.class, new DateTypeAdapter());
    builder.registerTypeAdapterFactory(MailChimpObjectTypeAdapter.FACTORY);
    return builder.create();
}

From source file:com.example.repository_pattern_demo.di.HttpModule.java

License:Apache License

@Provides
@Singleton/*  w w  w . jav  a 2  s  .  c om*/
Gson providesGson() {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapterFactory(TypeAdapterFactoryImpl.create());
    gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES);
    return gsonBuilder.create();
}

From source file:com.flipkart.batching.gson.GsonSerializationStrategy.java

License:Open Source License

@Override
public void build() {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapterFactory(getDataRuntimeTypeAdapter());
    gsonBuilder.registerTypeAdapterFactory(getBatchRuntimeTypeAdapter());
    gsonBuilder.registerTypeAdapterFactory(new BatchingTypeAdapterFactory());

    TagDataTypeAdapter tagDataTypeAdapter = new TagDataTypeAdapter();
    registerDataSubTypeAdapters(EventData.class, new EventDataTypeAdapter());
    registerDataSubTypeAdapters(TagData.class, tagDataTypeAdapter);
    registerBatchSubTypeAdapters(TagBatch.class, new TagBatchTypeAdapter<>(tagDataTypeAdapter));

    gson = gsonBuilder.create();/*from  w  w  w.  ja v  a  2 s  . c  om*/

    //Register Built in types
    registerBatchSubTypeAdapters(SizeBatch.class, new SizeBatchTypeAdapter<>(getDataTypeAdapter()));
    registerBatchSubTypeAdapters(BatchImpl.class, new BatchImplTypeAdapter<>(getDataTypeAdapter()));
    registerBatchSubTypeAdapters(SizeTimeBatch.class, new SizeTimeBatchTypeAdapter<>(getDataTypeAdapter()));
    registerBatchSubTypeAdapters(TimeBatch.class, new TimeBatchTypeAdapter<>(getDataTypeAdapter()));
}

From source file:com.github.kyriosdata.regras.infraestrutura.Serializador.java

License:Creative Commons License

/**
 * Cria instncia de serializar preparada
 * para realizar converses entre objetos e
 * sequncias de caracters./*from  w w  w . j a  v a2  s. c  o m*/
 *
 * <p>H dois grupos de mtodos principais nessa classe.
 * Aqueles do tipo {@link #toJson(Pontuacao)}, por exemplo,
 * cujo argumento  o objeto a ser convertido em JSON e,
 * no sentido inverso, {@link #pontuacao(String)}, que recebe
 * a sequncia JSON e produz um objeto do tipo {@link Pontuacao}.
 */
public Serializador() {
    GsonBuilder gb = new GsonBuilder();
    gb.registerTypeAdapter(Valor.class, new ValorSerializer());
    gb.registerTypeAdapter(Valor.class, new ValorDeserializer());
    gb.registerTypeAdapterFactory(new CustomRegraTypeAdapterFactory());
    gson = gb.create();

    valorType = new TypeToken<Valor>() {
    }.getType();
    pontuacaoType = new TypeToken<Pontuacao>() {
    }.getType();
    regraExpressaoType = new TypeToken<RegraExpressao>() {
    }.getType();
    regraPontosPorRelato = new TypeToken<RegraPontosPorRelato>() {
    }.getType();
    configuracaoType = new TypeToken<Configuracao>() {
    }.getType();
    relatoType = new TypeToken<Relato>() {
    }.getType();
    relatorioType = new TypeToken<Relatorio>() {
    }.getType();
}

From source file:com.google.caliper.json.GsonModule.java

License:Apache License

@Provides
Gson provideGson(Set<TypeAdapterFactory> typeAdapterFactories, ExclusionStrategy exclusionStrategy) {
    GsonBuilder gsonBuilder = new GsonBuilder().setExclusionStrategies(exclusionStrategy);
    for (TypeAdapterFactory typeAdapterFactory : typeAdapterFactories) {
        gsonBuilder.registerTypeAdapterFactory(typeAdapterFactory);
    }//w  w  w  . j a  v a 2s. com
    return gsonBuilder.create();
}

From source file:com.greensopinion.finance.services.persistence.PersistenceGsonProvider.java

License:Apache License

public Gson get() {
    GsonBuilder gsonBuilder = builder();
    gsonBuilder.registerTypeAdapter(Date.class, new DateTypeAdapter());
    gsonBuilder.registerTypeAdapterFactory(TransactionsTypeAdapter.factory(encryptorProviderService));
    gsonBuilder.registerTypeAdapterFactory(CategoriesTypeAdapter.factory(encryptorProviderService));
    return gsonBuilder.create();
}