Java 类com.google.gson.JsonSerializer 实例源码
项目:mapbox-events-android
文件:TelemetryClient.java
private GsonBuilder configureGsonBuilder() {
GsonBuilder gsonBuilder = new GsonBuilder();
JsonSerializer<NavigationArriveEvent> arriveSerializer = new ArriveEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationArriveEvent.class, arriveSerializer);
JsonSerializer<NavigationDepartEvent> departSerializer = new DepartEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationDepartEvent.class, departSerializer);
JsonSerializer<NavigationCancelEvent> cancelSerializer = new CancelEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationCancelEvent.class, cancelSerializer);
JsonSerializer<NavigationFeedbackEvent> feedbackSerializer = new FeedbackEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationFeedbackEvent.class, feedbackSerializer);
JsonSerializer<NavigationRerouteEvent> rerouteSerializer = new RerouteEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationRerouteEvent.class, rerouteSerializer);
JsonSerializer<NavigationFasterRouteEvent> fasterRouteSerializer = new FasterRouteEventSerializer();
gsonBuilder.registerTypeAdapter(NavigationFasterRouteEvent.class, fasterRouteSerializer);
return gsonBuilder;
}
项目:unitimes
文件:EventsExportEventsToJSON.java
@Override
protected void print(ExportHelper helper, EventLookupRpcRequest request, List<EventInterface> events, int eventCookieFlags, EventMeetingSortBy sort, boolean asc) throws IOException {
helper.setup("application/json", reference(), false);
Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
@Override
public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) {
return new JsonPrimitive(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(src));
}
})
.setFieldNamingStrategy(new FieldNamingStrategy() {
Pattern iPattern = Pattern.compile("i([A-Z])(.*)");
@Override
public String translateName(Field f) {
Matcher matcher = iPattern.matcher(f.getName());
if (matcher.matches())
return matcher.group(1).toLowerCase() + matcher.group(2);
else
return f.getName();
}
})
.setPrettyPrinting().create();
helper.getWriter().write(gson.toJson(events));
}
项目:spring-data-hana
文件:HanaDBTemplate.java
public HanaDBTemplate() {
GsonBuilder builder = new GsonBuilder();
builder.registerTypeAdapter(Point.class, (JsonSerializer<Point>) (Point src, Type type, JsonSerializationContext context) -> {
JsonObject obj = new JsonObject();
// serialize it all to strings for reasons..
obj.addProperty("ZEITREIHE", src.getTimeseries());
obj.addProperty("TIME", String.valueOf(src.getTimestamp()));
obj.addProperty("VALUE", src.getValue().toString());
return obj;
});
gson = builder.create();
OkHttpClient.Builder okHBuilder = new OkHttpClient.Builder();
okHBuilder.readTimeout(30, TimeUnit.SECONDS);
okHBuilder.writeTimeout(30, TimeUnit.SECONDS);
okHttpClient = okHBuilder.build();
}
项目:atlantis
文件:JsonSerializers.java
/**
* Returns a new JSON serializer, specialized for {@link SettingsManager}
* objects.
*
* @return The serializer to serialize {@code SettingsManager} objects with.
*/
static JsonSerializer<SettingsManager> newSettingsSerializer() {
return (settingsManager, typeOfObject, context) -> {
if (settingsManager == null)
return null;
Map<String, String> settings = settingsManager.getAllAsMap();
if (isEmpty(settings))
return null;
JsonObject jsonObject = new JsonObject();
for (Map.Entry<String, String> entry : settings.entrySet())
jsonObject.addProperty(entry.getKey(), entry.getValue());
return jsonObject;
};
}
项目:atlantis
文件:JsonSerializers.java
/**
* Returns a new JSON serializer, specialized for {@link Configuration}
* objects.
*
* @return The serializer to serialize {@code Configuration} objects with.
*/
static JsonSerializer<Configuration> newConfigurationSerializer() {
return (configuration, typeOfObject, context) -> {
if (configuration == null)
return null;
JsonObject jsonObject = new JsonObject();
HeaderManager defaultResponseHeaderManager = configuration.defaultResponseHeaderManager();
if (defaultResponseHeaderManager.keyCount() > 0)
jsonObject.add("defaultResponseHeaders", context.serialize(defaultResponseHeaderManager));
SettingsManager settingsManager = configuration.settingsManager();
if (settingsManager.entryCount() > 0)
jsonObject.add("settings", context.serialize(settingsManager));
List<MockRequest> requests = configuration.requests();
if (requests.size() > 0)
jsonObject.add("requests", context.serialize(requests));
return jsonObject;
};
}
项目:atlantis
文件:JsonSerializers.java
/**
* Returns a new JSON serializer, specialized for {@link MockRequest}
* objects.
*
* @return The serializer to serialize {@code MockRequest} objects with.
*/
static JsonSerializer<MockRequest> newRequestSerializer() {
return (request, typeOfObject, context) -> {
if (request == null)
return null;
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("url", request.url());
jsonObject.addProperty("method", request.method());
HeaderManager headerManager = request.headerManager();
if (headerManager.keyCount() > 0)
jsonObject.add("headers", context.serialize(headerManager));
SettingsManager settingsManager = request.settingsManager();
if (settingsManager.entryCount() > 0)
jsonObject.add("settings", context.serialize(settingsManager));
List<MockResponse> responses = request.responses();
if (notEmpty(responses))
jsonObject.add("responses", context.serialize(responses));
return jsonObject;
};
}
项目:atlantis
文件:JsonSerializers.java
/**
* Returns a new JSON serializer, specialized for {@link MockResponse}
* objects.
*
* @return The serializer to serialize {@code MockResponse} objects with.
*/
static JsonSerializer<MockResponse> newResponseSerializer() {
return (response, typeOfObject, context) -> {
if (response == null)
return null;
JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("code", response.code());
jsonObject.addProperty("phrase", response.phrase());
String source = response.source();
if (notEmpty(source))
jsonObject.addProperty("source", source);
HeaderManager headerManager = response.headerManager();
if (headerManager.keyCount() > 0)
jsonObject.add("headers", context.serialize(headerManager));
SettingsManager settingsManager = response.settingsManager();
if (settingsManager.entryCount() > 0)
jsonObject.add("settings", context.serialize(settingsManager));
return jsonObject;
};
}
项目:urmusic-desktop
文件:GSONJSONEngine.java
public GSONJSONEngine() {
this.serializer = new JsonSerializer<JSONSerializable>() {
public JsonElement serialize(JSONSerializable src, Type typeOfSrc, JsonSerializationContext context) {
Object o = src.toJSON(GSONJSONEngine.this);
if(o instanceof GSONJSONObject) return context.serialize(((GSONJSONObject) o).gsonObj);
else if(o instanceof GSONJSONArray) return context.serialize(((GSONJSONArray) o).gsonArr);
return context.serialize(o);
}
};
GsonBuilder builder = new GsonBuilder();
builder.registerTypeHierarchyAdapter(JSONSerializable.class, this.serializer);
if(Urmusic.DEBUG) builder.setPrettyPrinting();
this.gson = builder.create();
}
项目:azure-mobile-apps-android-client
文件:SerializationTests.java
public void testCustomSerializationWithoutUsingMobileServiceTable() {
ComplexPersonTestObject person = new ComplexPersonTestObject("John", "Doe", new Address("1345 Washington St", 1313, "US"));
gsonBuilder.registerTypeAdapter(Address.class, new JsonSerializer<Address>() {
@Override
public JsonElement serialize(Address arg0, Type arg1, JsonSerializationContext arg2) {
JsonObject json = new JsonObject();
json.addProperty("zipcode", arg0.getZipCode());
json.addProperty("country", arg0.getCountry());
json.addProperty("streetaddress", arg0.getStreetAddress());
return json;
}
});
String serializedObject = gsonBuilder.create().toJson(person);
// Asserts
assertEquals(
"{\"address\":{\"zipcode\":1313,\"country\":\"US\",\"streetaddress\":\"1345 Washington St\"},\"firstName\":\"John\",\"id\":0,\"lastName\":\"Doe\"}",
serializedObject);
}
项目:unitime
文件:EventsExportEventsToJSON.java
@Override
protected void print(ExportHelper helper, EventLookupRpcRequest request, List<EventInterface> events, int eventCookieFlags, EventMeetingSortBy sort, boolean asc) throws IOException {
helper.setup("application/json", reference(), false);
Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
@Override
public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) {
return new JsonPrimitive(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'").format(src));
}
})
.setFieldNamingStrategy(new FieldNamingStrategy() {
Pattern iPattern = Pattern.compile("i([A-Z])(.*)");
@Override
public String translateName(Field f) {
Matcher matcher = iPattern.matcher(f.getName());
if (matcher.matches())
return matcher.group(1).toLowerCase() + matcher.group(2);
else
return f.getName();
}
})
.setPrettyPrinting().create();
helper.getWriter().write(gson.toJson(events));
}
项目:WuxiGsm
文件:JSonUtil.java
public static <T> T jsonToObject(String jsonString, Class<T> classOfT) {
// Gson gson = new Gson();
Gson gson = new GsonBuilder()
.registerTypeHierarchyAdapter(Date.class,
new JsonSerializer<Date>() {
@Override
public JsonElement serialize(Date src,
Type typeOfSrc,
JsonSerializationContext context) {
SimpleDateFormat format = new SimpleDateFormat(
dateformat);
return new JsonPrimitive(format.format(src));
}
}).setDateFormat(dateformat).create();
Object object = gson.fromJson(jsonString, (Type) classOfT);
return Primitives.wrap(classOfT).cast(object);
}
项目:sosiefier
文件:JsonAdapterAnnotationOnClassesTest.java
/**
* The serializer overrides field adapter, but for deserializer the fieldAdapter is used.
*/
@Test(timeout = 1000)
public void testRegisteredSerializerOverridesJsonAdapter_add1167() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testRegisteredSerializerOverridesJsonAdapter_add1167");
JsonSerializer<A> serializer = new JsonSerializer<A>() {
public JsonElement serialize(A src, Type typeOfSrc, JsonSerializationContext context) {
return new JsonPrimitive("registeredSerializer");
}
};
Gson gson = new GsonBuilder().registerTypeAdapter(A.class, serializer).create();
String json = gson.toJson(new A("abcd"));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1677,json);
A target = gson.fromJson("abcd", A.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1678,target.value);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:JsonAdapterAnnotationOnClassesTest.java
/**
* The serializer overrides field adapter, but for deserializer the fieldAdapter is used.
*/
@Test(timeout = 1000)
public void testRegisteredSerializerOverridesJsonAdapter_remove984() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testRegisteredSerializerOverridesJsonAdapter_remove984");
JsonSerializer<A> serializer = new JsonSerializer<A>() {
public JsonElement serialize(A src, Type typeOfSrc, JsonSerializationContext context) {
return new JsonPrimitive("registeredSerializer");
}
};
Gson gson = new GsonBuilder().registerTypeAdapter(A.class, serializer).create();
String json = gson.toJson(new A("abcd"));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1677,json);
A target = gson.fromJson("abcd", A.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1678,target.value);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomSerializers_add1030() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomSerializers_add1030");
Gson gson = builder.registerTypeAdapter(TestTypes.ClassWithCustomTypeConverter.class, new JsonSerializer<com.google.gson.common.TestTypes.ClassWithCustomTypeConverter>() {
public JsonElement serialize(TestTypes.ClassWithCustomTypeConverter src, Type typeOfSrc, JsonSerializationContext context) {
JsonObject json = new JsonObject();
json.addProperty("bag", 5);
json.addProperty("bag", 5);
json.addProperty("value", 25);
return json;
}
}).create();
TestTypes.ClassWithCustomTypeConverter target = new TestTypes.ClassWithCustomTypeConverter();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1145,gson,1144,gson.toJson(target));
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomSerializers_add1031() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomSerializers_add1031");
Gson gson = builder.registerTypeAdapter(TestTypes.ClassWithCustomTypeConverter.class, new JsonSerializer<com.google.gson.common.TestTypes.ClassWithCustomTypeConverter>() {
public JsonElement serialize(TestTypes.ClassWithCustomTypeConverter src, Type typeOfSrc, JsonSerializationContext context) {
JsonObject json = new JsonObject();
json.addProperty("bag", 5);
json.addProperty("value", 25);
json.addProperty("value", 25);
return json;
}
}).create();
TestTypes.ClassWithCustomTypeConverter target = new TestTypes.ClassWithCustomTypeConverter();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1145,gson,1144,gson.toJson(target));
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomByteArraySerializer_add1022() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_add1022");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomByteArraySerializer_add1023() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_add1023");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ -1 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1058() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1058");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 0 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1059() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1059");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 3 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1060() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1060");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 2 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1061() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1061");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 5 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1062() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1062");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 6 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1063() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1063");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 5 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1064() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1064");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 8 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1065() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1065");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 7 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
public void testCustomByteArraySerializer_literalMutation1066() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_literalMutation1066");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 10 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomByteArraySerializer_remove848() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_remove848");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
sb.append(b);
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:sosiefier
文件:CustomTypeAdaptersTest.java
@Test(timeout = 1000)
public void testCustomByteArraySerializer_remove849() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testCustomByteArraySerializer_remove849");
Gson gson = new GsonBuilder().registerTypeAdapter(byte[].class, new JsonSerializer<byte[]>() {
public JsonElement serialize(byte[] src, Type typeOfSrc, JsonSerializationContext context) {
java.lang.StringBuilder sb = new java.lang.StringBuilder(src.length);
for (byte b : src) {
}
return new JsonPrimitive(sb.toString());
}
}).create();
byte[] data = new byte[]{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
String json = gson.toJson(data);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1127,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
项目:thermospy
文件:LogSession.java
public static JSONObject toJson(LogSession logSession) throws JSONException
{
// Creates the json object which will manage the information received
GsonBuilder builder = new GsonBuilder();
// Register an adapter to manage the date types as long values
builder.registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
@Override
public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) {
return context.serialize(src.getTime());
}
});
Gson gson = builder.create();
try {
return new JSONObject(gson.toJson(logSession, LogSession.class));
} catch (JSONException | JsonIOException e) {
throw new JSONException(e.getMessage());
}
}
项目:workflowTools
文件:WorkflowConfigMapper.java
private void serializeConfigurableProperties(JsonObject configJsonObject, Object configInstance, JsonSerializationContext jsonSerializationContext) {
List<Field> configurableFields = Arrays.stream(configInstance.getClass().getFields())
.filter(field -> field.getAnnotation(ConfigurableProperty.class) != null).collect(Collectors.toList());
configurableFields.forEach(field -> {
String fieldName = determineNameToUseForField(field);
Object fieldValue = ReflectionUtils.getValue(field, configInstance);
if (fieldValue != null) {
JsonElement fieldJsonObject;
if (field.getAnnotation(JsonAdapter.class) != null) {
try {
JsonSerializer customSerializer = (JsonSerializer) field.getAnnotation(JsonAdapter.class).value().newInstance();
fieldJsonObject = customSerializer.serialize(fieldValue, field.getType(), jsonSerializationContext);
} catch (InstantiationException | IllegalAccessException e) {
throw new RuntimeReflectiveOperationException(e);
}
} else {
fieldJsonObject = jsonSerializationContext.serialize(fieldValue);
}
configJsonObject.add(fieldName, fieldJsonObject);
}
});
}
项目:chess-tournament
文件:Match.java
@Override
public JsonElement serialize(Match src, Type typeOfSrc, JsonSerializationContext context) {
JsonSerializer<Player> playerSerializer = new Player.PlayerSerializer();
JsonObject root = new JsonObject();
root.addProperty("id", src.id);
if (src.black != null) {
root.add("white", playerSerializer.serialize(src.white, Player.class, context));
}
if (src.black != null) {
root.add("black", playerSerializer.serialize(src.black, Player.class, context));
}
if (src.result != null) {
root.addProperty("result", src.result.name());
}
root.addProperty("displayResult", src.displayResult);
return root;
}
项目:doubanbook4android
文件:JsonUtil.java
/**
* 将对象转换成json格式(并自定义日期格式)
*
* @param ts
* @return
*/
public static String objectToJsonDateSerializer(Object ts,
final String dateformat) {
String jsonStr = null;
gson = new GsonBuilder()
.registerTypeHierarchyAdapter(Date.class,
new JsonSerializer<Date>() {
public JsonElement serialize(Date src,
Type typeOfSrc,
JsonSerializationContext context) {
SimpleDateFormat format = new SimpleDateFormat(
dateformat);
return new JsonPrimitive(format.format(src));
}
}).setDateFormat(dateformat).create();
if (gson != null) {
jsonStr = gson.toJson(ts);
}
return jsonStr;
}
项目:atlas-deer
文件:ScheduleDebugController.java
public ScheduleDebugController(
ChannelResolver channelResolver,
EquivalentScheduleStore equivalentScheduleStore,
ScheduleStore scheduleStore) {
this.channelResolver = channelResolver;
this.equivalentScheduleStore = equivalentScheduleStore;
this.scheduleStore = scheduleStore;
this.gson = new GsonBuilder()
.registerTypeAdapter(
DateTime.class,
(JsonSerializer<DateTime>) (src, typeOfSrc, context) ->
new JsonPrimitive(src.toString())
)
.registerTypeAdapter(
Interval.class,
(JsonSerializer<Interval>) (src, typeOfSrc, context) ->
new JsonPrimitive(src.toString())
)
.create();
}
项目:MyDMAM
文件:GsonKit.java
private <T> De_Serializator(Type type, JsonSerializer<T> typeAdapter) {
Loggers.getGsonLoggersForSpecificClass(type).debug("Declare serializer " + type.getTypeName());
this.type = type;
if (Loggers.getGsonLoggersForSpecificClass(type).isTraceEnabled()) {
this.typeAdapter = new JsonSerializer<T>() {
public JsonElement serialize(T src, Type typeOfSrc, JsonSerializationContext context) {
JsonElement result = typeAdapter.serialize(src, typeOfSrc, context);
Loggers.getGsonLoggersForSpecificClass(type).trace("Serialize to " + result.toString());
return result;
}
};
} else {
this.typeAdapter = typeAdapter;
}
}
项目:vraptor4
文件:GsonDeserializerTest.java
@Test
public void shouldBeAbleToDeserializeADogWithDeserializerAdapter() throws Exception {
List<JsonDeserializer<?>> deserializers = new ArrayList<>();
List<JsonSerializer<?>> serializers = new ArrayList<>();
deserializers.add(new DogDeserializer());
builder = new GsonBuilderWrapper(new MockInstanceImpl<>(serializers), new MockInstanceImpl<>(deserializers),
new Serializee(new DefaultReflectionProvider()), new DefaultReflectionProvider());
deserializer = new GsonDeserialization(builder, provider, request, container, deserializeeInstance);
InputStream stream = asStream("{'dog':{'name':'Renan Reis','age':'0'}}");
Object[] deserialized = deserializer.deserialize(stream, dogParameter);
assertThat(deserialized.length, is(1));
assertThat(deserialized[0], is(instanceOf(Dog.class)));
Dog dog = (Dog) deserialized[0];
assertThat(dog.name, is("Renan"));
assertThat(dog.age, is(25));
}
项目:vraptor4
文件:GsonJSONSerializationTest.java
@Before
public void setup() throws Exception {
TimeZone.setDefault(TimeZone.getTimeZone("GMT-0300"));
stream = new ByteArrayOutputStream();
response = mock(HttpServletResponse.class);
when(response.getWriter()).thenReturn(new AlwaysFlushWriter(stream));
extractor = new DefaultTypeNameExtractor();
environment = mock(Environment.class);
List<JsonSerializer<?>> jsonSerializers = new ArrayList<>();
List<JsonDeserializer<?>> jsonDeserializers = new ArrayList<>();
jsonSerializers.add(new CalendarGsonConverter());
jsonSerializers.add(new DateGsonConverter());
jsonSerializers.add(new CollectionSerializer());
jsonSerializers.add(new EnumSerializer());
builder = new GsonBuilderWrapper(new MockInstanceImpl<>(jsonSerializers), new MockInstanceImpl<>(jsonDeserializers),
new Serializee(new DefaultReflectionProvider()), new DefaultReflectionProvider());
serialization = new GsonJSONSerialization(response, extractor, builder, environment, new DefaultReflectionProvider());
}
项目:jSpace
文件:jSonUtils.java
public <T> void register( String uri , Class<T> clazz , JsonSerializer<T> serializer , JsonDeserializer<T> deserializer ) {
this.dicionary.register(uri, clazz);
if (serializer != null) {
builder.registerTypeAdapter(clazz, serializer);
}
if (deserializer != null) {
builder.registerTypeAdapter(clazz, deserializer);
}
}
项目:apkfile
文件:Main.java
public static void main(String[] args) throws IOException, ParseException {
configureLog();
if (args.length != 1) {
System.out.println("Usage: main <apk path>");
System.exit(-1);
}
String apkPath = args[0];
GsonBuilder gsonBuilder = new GsonBuilder();
JsonSerializer<TObjectIntMap> serializer = (src, typeOfSrc, context) -> {
JsonObject jsonMerchant = new JsonObject();
for (Object key : src.keys()) {
int value = src.get(key);
jsonMerchant.addProperty(key.toString(), value);
}
return jsonMerchant;
};
gsonBuilder.registerTypeAdapter(TObjectIntMap.class, serializer);
Gson gson = gsonBuilder
.disableHtmlEscaping()
.serializeSpecialFloatingPointValues()
.setExclusionStrategies(new JarFileExclusionStrategy())
.setPrettyPrinting()
.create();
Writer writer = new OutputStreamWriter(System.out);
ApkFile apkFile = new ApkFile(apkPath, true, true, true, true, false);
gson.toJson(apkFile, writer);
writer.close();
apkFile.close();
}
项目:gdl2
文件:FhirDstu3ResourceCreator.java
@Override
public Object create(String modelId, Map<String, Object> valueMap) throws ClassNotFoundException {
Gson gson = new GsonBuilder().
registerTypeAdapter(Double.class, (JsonSerializer<Double>) (src, typeOfSrc, context) -> {
if (src == src.longValue())
return new JsonPrimitive(src.longValue());
return new JsonPrimitive(src);
}).create();
String json = gson.toJson(valueMap);
Class modelClass = Class.forName(modelId);
IParser fhirContextParser = FhirContext.forDstu3().newJsonParser();
return fhirContextParser.parseResource(modelClass, json);
}