Example usage for com.google.gson GsonBuilder registerTypeAdapter

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

Introduction

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

Prototype

@SuppressWarnings({ "unchecked", "rawtypes" })
public GsonBuilder registerTypeAdapter(Type type, Object typeAdapter) 

Source Link

Document

Configures Gson for custom serialization or deserialization.

Usage

From source file:com.softwaremagico.tm.json.CharacterJsonManager.java

License:Open Source License

public static CharacterPlayer fromJson(String jsonText) {
    if (jsonText != null && jsonText.length() > 0) {
        GsonBuilder gsonBuilder = new GsonBuilder();
        gsonBuilder.setPrettyPrinting();
        gsonBuilder.registerTypeAdapter(IValue.class, new InterfaceAdapter<IValue>());
        gsonBuilder.registerTypeAdapter(Faction.class, new FactionAdapter());
        gsonBuilder.registerTypeAdapter(Blessing.class, new BlessingAdapter());
        gsonBuilder.registerTypeAdapter(AvailableBenefice.class, new AvailableBeneficeAdapter());
        gsonBuilder.registerTypeAdapter(AvailableSkill.class, new AvailableSkillAdapter());
        gsonBuilder.registerTypeAdapter(CharacteristicDefinition.class, new CharacteristicDefinitionAdapter());
        gsonBuilder.registerTypeAdapter(Race.class, new RaceAdapter());
        gsonBuilder.registerTypeAdapter(Weapon.class, new WeaponAdapter());
        gsonBuilder.registerTypeAdapter(Armour.class, new ArmourAdapter());
        gsonBuilder.registerTypeAdapter(Shield.class, new ShieldAdapter());
        gsonBuilder.registerTypeAdapter(CyberneticDevice.class, new CyberneticDeviceAdapter());
        Gson gson = gsonBuilder.create();

        CharacterPlayer characterPlayer = gson.fromJson(jsonText, CharacterPlayer.class);
        return characterPlayer;
    }/*  ww w  .j a v  a 2  s .c o  m*/
    return null;
}

From source file:com.softwaremagico.tm.json.PartyJsonManager.java

License:Open Source License

public static String toJson(Party party) {
    if (party != null) {
        GsonBuilder gsonBuilder = new GsonBuilder();
        gsonBuilder.setPrettyPrinting();
        gsonBuilder.setExclusionStrategies(new AnnotationExclusionStrategy()).create();
        gsonBuilder.registerTypeAdapter(IValue.class, new IValueSerializer<IValue>());
        gsonBuilder.registerTypeAdapter(Faction.class, new FactionAdapter());
        gsonBuilder.registerTypeAdapter(Blessing.class, new BlessingAdapter());
        gsonBuilder.registerTypeAdapter(AvailableBenefice.class, new AvailableBeneficeAdapter());
        gsonBuilder.registerTypeAdapter(AvailableSkill.class, new AvailableSkillAdapter());
        gsonBuilder.registerTypeAdapter(CharacteristicDefinition.class, new CharacteristicDefinitionAdapter());
        gsonBuilder.registerTypeAdapter(Race.class, new RaceAdapter());
        gsonBuilder.registerTypeAdapter(Weapon.class, new WeaponAdapter());
        gsonBuilder.registerTypeAdapter(Armour.class, new ArmourAdapter());
        gsonBuilder.registerTypeAdapter(Shield.class, new ShieldAdapter());
        gsonBuilder.registerTypeAdapter(CyberneticDevice.class, new CyberneticDeviceAdapter());
        // final Gson gson = new
        // GsonBuilder().setPrettyPrinting().excludeFieldsWithoutExposeAnnotation().create();
        Gson gson = gsonBuilder.create();
        String jsonText = gson.toJson(party);
        return jsonText;
    }/*from w  w  w .ja  v  a  2  s.co  m*/
    return null;
}

From source file:com.softwaremagico.tm.json.PartyJsonManager.java

License:Open Source License

public static Party fromJson(String jsonText) {
    if (jsonText != null && jsonText.length() > 0) {
        GsonBuilder gsonBuilder = new GsonBuilder();
        gsonBuilder.setPrettyPrinting();
        gsonBuilder.registerTypeAdapter(IValue.class, new InterfaceAdapter<IValue>());
        gsonBuilder.registerTypeAdapter(Faction.class, new FactionAdapter());
        gsonBuilder.registerTypeAdapter(Blessing.class, new BlessingAdapter());
        gsonBuilder.registerTypeAdapter(AvailableBenefice.class, new AvailableBeneficeAdapter());
        gsonBuilder.registerTypeAdapter(AvailableSkill.class, new AvailableSkillAdapter());
        gsonBuilder.registerTypeAdapter(CharacteristicDefinition.class, new CharacteristicDefinitionAdapter());
        gsonBuilder.registerTypeAdapter(Race.class, new RaceAdapter());
        gsonBuilder.registerTypeAdapter(Weapon.class, new WeaponAdapter());
        gsonBuilder.registerTypeAdapter(Armour.class, new ArmourAdapter());
        gsonBuilder.registerTypeAdapter(Shield.class, new ShieldAdapter());
        gsonBuilder.registerTypeAdapter(CyberneticDevice.class, new CyberneticDeviceAdapter());
        Gson gson = gsonBuilder.create();

        Party party = gson.fromJson(jsonText, Party.class);
        return party;
    }/*  w w w .j  ava  2 s  . c o  m*/
    return null;
}

From source file:com.softwarementors.extjs.djn.gson.DefaultGsonBuilderConfigurator.java

License:Open Source License

public void configure(GsonBuilder builder, GlobalConfiguration configuration) {
    assert builder != null;
    assert configuration != null;

    if (configuration.getDebug()) {
        builder.setPrettyPrinting();/*from w  ww .  j  ava 2 s.  c o  m*/
    }
    builder.serializeNulls();
    builder.disableHtmlEscaping();

    builder.registerTypeAdapter(Date.class, new DateDeserializer());
    builder.registerTypeAdapter(Date.class, new DateSerializer());
}

From source file:com.softwarementors.extjs.djn.test.config.GsonBuilderConfiguratorForTesting.java

License:Open Source License

private static void addCustomSerializationSupport(GsonBuilder builder) {
    // Convert our own custom javascript "date" to a Java GregorianCalendar
    builder.registerTypeAdapter(GregorianCalendar.class, new JsonGregorianCalendarSerializer());

    // Convert a Java GregorianCalendar to our own custom javascript "date" 
    builder.registerTypeAdapter(GregorianCalendar.class, new JsonGregorianCalendarDeserializer());
}

From source file:com.solidbeans.core.util.Json.java

/**
 * Transform JSON to object using underlying implementation. Registers type adapters that handles sub types in JSON.
 *
 * @param json JSON string// w w w.  j av a  2 s  .c  o  m
 * @param classOfT Class definition of object to create
 * @param adapters Adapters to register
 * @param <T> Type of object to create
 * @return Transformed object from JSON
 */
public <T> T fromJson(String json, Class<T> classOfT, TypeAdapter<?>... adapters) {
    GsonBuilder builder = new GsonBuilder();

    if (Objects.nonNull(adapters)) {
        for (TypeAdapter<?> adapter : adapters) {
            builder.registerTypeAdapter(adapter.getClassOfTA(), adapter.getObjectOfTA());
        }
    }

    return builder.create().fromJson(json, classOfT);
}

From source file:com.sqatntu.stylechecker.configuration.JsonConfigurationLoader.java

License:Open Source License

@Override
public Configuration loadJsonConfiguration(String json) {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapter(DefaultConfiguration.class, new ConfigurationDeserializer());

    Gson gson = gsonBuilder.create();/*from w w  w .  j a  v  a2 s . co m*/
    DefaultConfiguration configuration = gson.fromJson(json, DefaultConfiguration.class);

    return configuration;
}

From source file:com.sra.biotech.submittool.cdm.builder.ExperimentBuilder.java

public Experiment buildFromJson(String json) {
    //System.out.println(" Experiment buildFromJson = " + json);

    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapter(TypeLibraryLayouts.class, new AttributeTypeLibraryLayoutsDeserializer());
    gsonBuilder.registerTypeAdapter(TypeLibrarySelections.class,
            new AttributeTypeLibrarySelectionsDeserializer());
    gsonBuilder.registerTypeAdapter(TypeLibrarySources.class, new AttributeTypeLibrarySourcesDeserializer());
    gsonBuilder.registerTypeAdapter(TypeLibraryStrategies.class,
            new AttributeTypeLibraryStrategiesDeserializer());
    gsonBuilder.registerTypeAdapter(TypeFileTypes.class, new AttributeTypeFileTypesDeserializer());

    Gson gson = gsonBuilder.create();//from ww w. j av  a  2 s  . c  o m

    Experiment instance = null;
    JsonReader reader = null;
    try {
        reader = new JsonReader(new StringReader(json));

    } catch (Exception e) {
        // TODO: handle exception
    }

    try {

        // instance = gson.fromJson(new FileReader("data/study.json"),
        // Experiment.class);

        Library library = new LibraryBuilder().buildFromJson(json);

        instance = gson.fromJson(reader, Experiment.class);
        Run run = new Run();
        //List<File> files = new FileBuilder().buildFromGson(gson);
        //List<File> files =instance.getFiles();
        DataBlock dataBlock = new DataBlockBuilder().buildFromJson(json);
        for (File file : dataBlock.getFiles()) {
            file.setType(TypeFileTypes.FASTQ);
        }
        //dataBlock.setFiles(files);
        run.getDataBlocks().add(dataBlock);
        instance.getRuns().add(run);
        instance.setLibrary(library);
        final String jsonStr = gson.toJson(instance);
        JsonParser parser = new JsonParser();
        JsonObject json2 = parser.parse(jsonStr).getAsJsonObject();

        Gson gson2 = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().setPrettyPrinting().create();
        String prettyJson = gson.toJson(json2);
        System.out.println("Deserializer " + " Experiment");
        //System.out.println(prettyJson);

    } catch (JsonSyntaxException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (JsonIOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return instance;
}

From source file:com.srotya.tau.wraith.conditions.ConditionSerializer.java

License:Apache License

public static Condition deserialize(String condition) {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapter(Condition.class, new ConditionSerializer());
    gsonBuilder.disableHtmlEscaping();//from   w  ww . j a  v  a 2  s.c o  m
    Gson gson = gsonBuilder.create();
    return gson.fromJson(condition, Condition.class);
}

From source file:com.srotya.tau.wraith.conditions.ConditionSerializer.java

License:Apache License

public static String serialize(Condition condition) {
    GsonBuilder gsonBuilder = new GsonBuilder();
    gsonBuilder.registerTypeAdapter(Condition.class, new ConditionSerializer());
    gsonBuilder.disableHtmlEscaping();/*from ww  w  . j  a  v  a2 s .c  o  m*/
    Gson gson = gsonBuilder.create();
    return gson.toJson(condition, Condition.class);
}