Skip to content

Commit 2126bca

Browse files
committed
change timeStamp type from int to string in wx credential
1 parent cf3b253 commit 2126bca

2 files changed

Lines changed: 12 additions & 1 deletion

File tree

src/main/java/com/pingplusplus/model/Charge.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public class Charge extends APIResource implements MetadataStore<Charge> {
4646
setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).
4747
setLongSerializationPolicy(LongSerializationPolicy.STRING).
4848
registerTypeAdapter(Double.class, new JsonSerializer<Double>() {
49-
// @Override
49+
@Override
5050
public JsonElement serialize(Double src, Type typeOfSrc, JsonSerializationContext context) {
5151
if (src == src.longValue())
5252
return new JsonPrimitive(src.longValue());
@@ -202,6 +202,7 @@ public void setApp(Object app) {
202202

203203
public String getCredential() {
204204
Map<String, Object> credParams = new HashMap<String, Object>();
205+
credParams.put("object", "credential");
205206
credParams.put(channel, credential.get(channel));
206207
return PRETTY_PRINT_GSON.toJson(credParams);
207208
}

src/main/java/com/pingplusplus/model/ChargeDeserializer.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.pingplusplus.model;
22

33
import com.google.gson.*;
4+
import com.google.gson.reflect.TypeToken;
45

56
import java.lang.reflect.Type;
7+
import java.util.Map;
68

79
/**
810
* Created by afon on 14/11/25.
@@ -23,6 +25,14 @@ public Charge deserialize(JsonElement jsonElement, Type type, JsonDeserializatio
2325
App app = gson.fromJson(appElement, App.class);
2426
charge.setApp(app);
2527
}
28+
String creStr = charge.getCredential();
29+
Type hashMapType = new TypeToken<Map<String, Object>>(){}.getType();
30+
Map<String, Object> creMap = gson.fromJson(creStr, hashMapType);
31+
if (creMap.containsKey("wx")) {
32+
Map<String, Object> wx = (Map<String, Object>) creMap.get("wx");
33+
wx.put("timeStamp", String.valueOf(((Double)(wx.get("timeStamp"))).longValue()));
34+
charge.setCredential(creMap);
35+
}
2636
return charge;
2737
}
2838
}

0 commit comments

Comments
 (0)