List of usage examples for com.google.gson GsonBuilder registerTypeAdapterFactory
public GsonBuilder registerTypeAdapterFactory(TypeAdapterFactory factory)
From source file:cc.kave.commons.utils.json.legacy.GsonUtil.java
License:Open Source License
public static void addTypeAdapters(final GsonBuilder builder) { builder.registerTypeAdapter(CoReMethodName.class, new GsonNameSerializer()); builder.registerTypeAdapter(ICoReMethodName.class, new GsonNameSerializer()); builder.registerTypeAdapter(CoReMethodName.class, new GsonMethodNameDeserializer()); builder.registerTypeAdapter(ICoReMethodName.class, new GsonMethodNameDeserializer()); builder.registerTypeAdapter(CoReTypeName.class, new GsonNameSerializer()); builder.registerTypeAdapter(ICoReTypeName.class, new GsonNameSerializer()); builder.registerTypeAdapter(CoReTypeName.class, new GsonTypeNameDeserializer()); builder.registerTypeAdapter(ICoReTypeName.class, new GsonTypeNameDeserializer()); builder.registerTypeAdapter(CoReFieldName.class, new GsonNameSerializer()); builder.registerTypeAdapter(ICoReFieldName.class, new GsonNameSerializer()); builder.registerTypeAdapter(CoReFieldName.class, new GsonFieldNameDeserializer()); builder.registerTypeAdapter(ICoReFieldName.class, new GsonFieldNameDeserializer()); ////from w w w .j ava 2 s . c o m builder.registerTypeAdapter(File.class, new GsonFileDeserializer()); builder.registerTypeAdapter(File.class, new GsonFileSerializer()); // builder.setPrettyPrinting(); // builder.setDateFormat("dd.MM.yyyy HH:mm:ss"); builder.registerTypeAdapter(Date.class, new ISO8601DateParser()); builder.registerTypeAdapter(Multimap.class, new MultimapTypeAdapter()); // builder.registerTypeAdapter(Usage.class, new UsageTypeAdapter()); builder.registerTypeAdapter(Query.class, new UsageTypeAdapter()); builder.registerTypeAdapter(NoUsage.class, new UsageTypeAdapter()); RuntimeTypeAdapterFactory<UsageFeature> rtaf = RuntimeTypeAdapterFactory.of(UsageFeature.class, "$type") .registerSubtype(CallFeature.class).registerSubtype(ClassFeature.class) .registerSubtype(DefinitionFeature.class).registerSubtype(FirstMethodFeature.class) .registerSubtype(ParameterFeature.class).registerSubtype(SuperMethodFeature.class) .registerSubtype(TypeFeature.class); builder.registerTypeAdapterFactory(rtaf); builder.registerTypeAdapter(CallFeature.class, new ObjectUsageFeatureRedirector<CallFeature>()); builder.registerTypeAdapter(ClassFeature.class, new ObjectUsageFeatureRedirector<ClassFeature>()); builder.registerTypeAdapter(DefinitionFeature.class, new ObjectUsageFeatureRedirector<DefinitionFeature>()); builder.registerTypeAdapter(FirstMethodFeature.class, new ObjectUsageFeatureRedirector<FirstMethodFeature>()); builder.registerTypeAdapter(ParameterFeature.class, new ObjectUsageFeatureRedirector<ParameterFeature>()); builder.registerTypeAdapter(SuperMethodFeature.class, new ObjectUsageFeatureRedirector<SuperMethodFeature>()); builder.registerTypeAdapter(TypeFeature.class, new ObjectUsageFeatureRedirector<TypeFeature>()); }
From source file:cc.recommenders.utils.gson.GsonUtil.java
License:Open Source License
public static synchronized Gson getInstance() { if (gson == null) { final GsonBuilder builder = new GsonBuilder(); builder.registerTypeAdapter(VmMethodName.class, new GsonNameSerializer()); builder.registerTypeAdapter(IMethodName.class, new GsonNameSerializer()); builder.registerTypeAdapter(VmMethodName.class, new GsonMethodNameDeserializer()); builder.registerTypeAdapter(IMethodName.class, new GsonMethodNameDeserializer()); builder.registerTypeAdapter(VmTypeName.class, new GsonNameSerializer()); builder.registerTypeAdapter(ITypeName.class, new GsonNameSerializer()); builder.registerTypeAdapter(VmTypeName.class, new GsonTypeNameDeserializer()); builder.registerTypeAdapter(ITypeName.class, new GsonTypeNameDeserializer()); builder.registerTypeAdapter(VmFieldName.class, new GsonNameSerializer()); builder.registerTypeAdapter(IFieldName.class, new GsonNameSerializer()); builder.registerTypeAdapter(VmFieldName.class, new GsonFieldNameDeserializer()); builder.registerTypeAdapter(IFieldName.class, new GsonFieldNameDeserializer()); ///*from w ww . j ava 2 s .c om*/ builder.registerTypeAdapter(File.class, new GsonFileDeserializer()); builder.registerTypeAdapter(File.class, new GsonFileSerializer()); // builder.setPrettyPrinting(); // builder.setDateFormat("dd.MM.yyyy HH:mm:ss"); builder.registerTypeAdapter(Date.class, new ISO8601DateParser()); builder.registerTypeAdapter(Multimap.class, new MultimapTypeAdapter()); // builder.registerTypeAdapter(Usage.class, new UsageTypeAdapter()); builder.registerTypeAdapter(Query.class, new UsageTypeAdapter()); RuntimeTypeAdapterFactory<UsageFeature> rtaf = RuntimeTypeAdapterFactory.of(UsageFeature.class, "$type") .registerSubtype(CallFeature.class).registerSubtype(ClassFeature.class) .registerSubtype(DefinitionFeature.class).registerSubtype(FirstMethodFeature.class) .registerSubtype(ParameterFeature.class).registerSubtype(SuperMethodFeature.class) .registerSubtype(TypeFeature.class); builder.registerTypeAdapterFactory(rtaf); builder.registerTypeAdapter(CallFeature.class, new ObjectUsageFeatureRedirector<CallFeature>()); builder.registerTypeAdapter(ClassFeature.class, new ObjectUsageFeatureRedirector<ClassFeature>()); builder.registerTypeAdapter(DefinitionFeature.class, new ObjectUsageFeatureRedirector<DefinitionFeature>()); builder.registerTypeAdapter(FirstMethodFeature.class, new ObjectUsageFeatureRedirector<FirstMethodFeature>()); builder.registerTypeAdapter(ParameterFeature.class, new ObjectUsageFeatureRedirector<ParameterFeature>()); builder.registerTypeAdapter(SuperMethodFeature.class, new ObjectUsageFeatureRedirector<SuperMethodFeature>()); builder.registerTypeAdapter(TypeFeature.class, new ObjectUsageFeatureRedirector<TypeFeature>()); builder.enableComplexMapKeySerialization(); gson = builder.create(); } return gson; }
From source file:ch.vorburger.worlds.persistence.gson.GraphAdapterBuilder.java
License:Apache License
public void registerOn(GsonBuilder gsonBuilder) { Factory factory = new Factory(instanceCreators); gsonBuilder.registerTypeAdapterFactory(factory); for (Map.Entry<Type, InstanceCreator<?>> entry : instanceCreators.entrySet()) { gsonBuilder.registerTypeAdapter(entry.getKey(), factory); }//w w w . j a va 2 s.c o m }
From source file:co.cask.cdap.common.stream.StreamEventTypeAdapter.java
License:Apache License
/** * Register an instance of the {@link StreamEventTypeAdapter} to the given {@link GsonBuilder}. * @param gsonBuilder The build to register to * @return The same {@link GsonBuilder} instance in the argument *//*ww w. j a va 2s .c om*/ public static GsonBuilder register(GsonBuilder gsonBuilder) { return gsonBuilder.registerTypeAdapterFactory(new TypeAdapterFactory() { @Override @SuppressWarnings("unchecked") public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> type) { if (StreamEvent.class.isAssignableFrom(type.getRawType())) { return (TypeAdapter<T>) new StreamEventTypeAdapter(gson.getAdapter(HEADERS_TYPE)); } return null; } }); }
From source file:com.aelitis.azureus.util.JSONUtilsGSON.java
License:Open Source License
private static Gson getGson() { if (gson == null) { GsonBuilder builder = new GsonBuilder(); builder.registerTypeAdapterFactory(ObjectTypeAdapterLong.FACTORY); gson = builder.create();/* ww w .j a v a 2s . co m*/ } return gson; }
From source file:com.atlauncher.workers.InstanceInstaller.java
License:Open Source License
public InstanceInstaller(String instanceName, Pack pack, PackVersion version, boolean isReinstall, boolean isServer) { this.instanceName = instanceName; this.pack = pack; this.version = version; this.isReinstall = isReinstall; this.isServer = isServer; if (isServer) { serverLibraries = new ArrayList<File>(); }/*from w w w .j a va 2s . c o m*/ GsonBuilder builder = new GsonBuilder(); builder.registerTypeAdapterFactory(new EnumTypeAdapterFactory()); builder.registerTypeAdapter(Date.class, new DateTypeAdapter()); builder.registerTypeAdapter(File.class, new FileTypeAdapter()); builder.setPrettyPrinting(); this.gson = builder.create(); }
From source file:com.auction.request.handler.AuthHandler.java
@ClientRequest(action = ACTION.SAVE_ACCOUNT_SETTING_FA) public ClientResponse saveAccountSettingFA(ISession session, IPacket packet) throws Exception { GeneralResponse response = new GeneralResponse(); try {//from w w w.ja v a 2s . com Gson gson = new Gson(); AccountSettingFA accountSettingFA = gson.fromJson(packet.getPacketBody(), AccountSettingFA.class); FeaturedAdManager featuredAdManager = new FeaturedAdManager(); if (accountSettingFA.getId() > 0) { featuredAdManager.updateFeaturedAdAccountSetting(accountSettingFA); } else { int userId = (int) session.getUserId(); if (userId > 0) { User user = new User(); user.setId(userId); accountSettingFA.setUser(user); accountSettingFA = featuredAdManager.addFeaturedAdAccountSetting(accountSettingFA); } else { response.setSuccess(false); return response; } } GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY); gson = gsonBuilder.create(); String accountSettingFAString = gson.toJson(accountSettingFA); AccountSettingFA response1 = new Gson().fromJson(accountSettingFAString, AccountSettingFA.class); response1.setSuccess(true); return response1; //response.setSuccess(true); //return response; } catch (Exception ex) { response.setSuccess(false); return response; } }
From source file:com.auction.request.handler.AuthHandler.java
@ClientRequest(action = ACTION.ADD_MESSAGE_TEXT) public ClientResponse addMessageText(ISession session, IPacket packet) throws Exception { GeneralResponse response = new GeneralResponse(); Gson gson = new Gson(); Message message = gson.fromJson(packet.getPacketBody(), Message.class); int userId = (int) session.getUserId(); User user = new User(); if (userId > 0) { if (message.getMessageTextList() != null && !message.getMessageTextList().isEmpty()) { user.setId(userId);/*ww w .j av a 2 s. com*/ message.getMessageTextList().get(0).setUser(user); MessageManager messageManager = new MessageManager(); messageManager.addMessageText(message); GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY); gson = gsonBuilder.create(); String messageInfoString = gson.toJson(messageManager.getMessageInfo(message.getId())); Message response1 = gson.fromJson(messageInfoString, Message.class); response1.setMessage("Message Text is added successfully"); response1.setSuccess(true); return response1; } else { response.setMessage("Please add message text."); response.setSuccess(false); return response; } } else { response.setMessage("Invalid user. Please login."); response.setSuccess(false); return response; } }
From source file:com.auction.request.handler.RequestHandler.java
@ClientRequest(action = ACTION.FETCH_MEMBER_ROLES) public ClientResponse getMemberRoleList(ISession session, IPacket packet) { UserManager userManager = new UserManager(); List<Role> roles = userManager.getMemberRoles(); GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY); Gson gson = gsonBuilder.create();/*from ww w . j a v a 2 s . c o m*/ String rolesString = gson.toJson(roles); RoleList response = gson.fromJson("{\"roles\":" + rolesString + "}", RoleList.class); response.setSuccess(true); return response; }
From source file:com.auction.request.handler.RequestHandler.java
@ClientRequest(action = ACTION.FETCH_USER_LIST) public ClientResponse getUserList(ISession session, IPacket packet) { UserManager userManager = new UserManager(); List<User> users = userManager.getUsers(0, 10); GsonBuilder gsonBuilder = new GsonBuilder(); gsonBuilder.registerTypeAdapterFactory(HibernateProxyTypeAdapter.FACTORY); Gson gson = gsonBuilder.create();/* w w w.j a v a 2 s .c o m*/ String userString = gson.toJson(users); UserList response = gson.fromJson("{\"users\":" + userString + "}", UserList.class); response.setSuccess(true); return response; }