Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitbffcbb9

Browse files
committed
[1.2.1-SNAPSHOT]
BasicProvider Gson registration for LocalDate and LocalDateTime types added
1 parent22c9679 commitbffcbb9

File tree

4 files changed

+25
-8
lines changed

4 files changed

+25
-8
lines changed

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Library supports all available EtherScan *API* calls for all available *Ethereum
1515
**Gradle**
1616
```groovy
1717
dependencies {
18-
compile "com.github.goodforgod:java-etherscan-api:1.2.0"
18+
compile "com.github.goodforgod:java-etherscan-api:1.2.1"
1919
}
2020
```
2121

@@ -24,7 +24,7 @@ dependencies {
2424
<dependency>
2525
<groupId>com.github.goodforgod</groupId>
2626
<artifactId>java-etherscan-api</artifactId>
27-
<version>1.2.0</version>
27+
<version>1.2.1</version>
2828
</dependency>
2929
```
3030

‎build.gradle‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ dependencies {
3838
implementation"org.jetbrains:annotations:22.0.0"
3939
implementation"com.google.code.gson:gson:2.8.9"
4040

41-
testImplementation"junit:junit:4.13.1"
41+
testImplementation"junit:junit:4.13.2"
4242
}
4343

4444
test {

‎gradle.properties‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
groupId=com.github.goodforgod
22
artifactId=java-etherscan-api
3-
artifactVersion=1.2.0
4-
buildNumber=1
3+
artifactVersion=1.2.1-SNAPSHOT
54

65

76
##### GRADLE #####
87
org.gradle.daemon=true
98
org.gradle.parallel=true
109
org.gradle.configureondemand=true
1110
org.gradle.caching=true
12-
org.gradle.jvmargs=-Dfile.encoding=UTF-8
11+
org.gradle.jvmargs=-Dfile.encoding=UTF-8

‎src/main/java/io/api/etherscan/core/impl/BasicProvider.java‎

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
packageio.api.etherscan.core.impl;
22

3-
importcom.google.gson.Gson;
3+
importcom.google.gson.*;
44
importio.api.etherscan.error.ApiException;
55
importio.api.etherscan.error.EtherScanException;
66
importio.api.etherscan.error.ParseException;
@@ -10,6 +10,9 @@
1010
importio.api.etherscan.model.utility.StringResponseTO;
1111
importio.api.etherscan.util.BasicUtils;
1212

13+
importjava.time.LocalDate;
14+
importjava.time.LocalDateTime;
15+
importjava.time.format.DateTimeFormatter;
1316
importjava.util.Map;
1417

1518
/**
@@ -40,7 +43,22 @@ abstract class BasicProvider {
4043
this.module ="&module=" +module;
4144
this.baseUrl =baseUrl;
4245
this.executor =executor;
43-
this.gson =newGson();
46+
this.gson =newGsonBuilder()
47+
.registerTypeAdapter(LocalDateTime.class,
48+
(JsonSerializer<LocalDateTime>) (src,typeOfSrc,context) ->newJsonPrimitive(
49+
src.format(DateTimeFormatter.ISO_DATE_TIME)))
50+
.registerTypeAdapter(LocalDate.class,
51+
(JsonSerializer<LocalDate>) (src,typeOfSrc,
52+
context) ->newJsonPrimitive(src.format(DateTimeFormatter.ISO_DATE)))
53+
.registerTypeAdapter(LocalDateTime.class, (JsonDeserializer<LocalDateTime>) (json,type,context) -> {
54+
Stringdatetime =json.getAsJsonPrimitive().getAsString();
55+
returnLocalDateTime.parse(datetime,DateTimeFormatter.ISO_DATE_TIME);
56+
})
57+
.registerTypeAdapter(LocalDate.class, (JsonDeserializer<LocalDate>) (json,type,context) -> {
58+
Stringdatetime =json.getAsJsonPrimitive().getAsString();
59+
returnLocalDate.parse(datetime,DateTimeFormatter.ISO_DATE);
60+
}).create();
61+
4462
}
4563

4664
<T>Tconvert(finalStringjson,finalClass<T>tClass) {

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp