Revision 53784
Added by Sandro La Bruzzo over 5 years ago
DataciteResolver.java | ||
---|---|---|
1 | 1 |
package eu.dnetlib.dli.resolver; |
2 | 2 |
|
3 |
import java.util.Arrays; |
|
4 |
import java.util.Collections; |
|
5 |
import java.util.List; |
|
6 |
import java.util.stream.Collectors; |
|
7 |
|
|
8 | 3 |
import com.google.common.collect.Lists; |
9 |
import com.google.gson.JsonArray; |
|
10 | 4 |
import com.google.gson.JsonElement; |
11 | 5 |
import com.google.gson.JsonObject; |
12 | 6 |
import com.google.gson.JsonParser; |
13 |
import eu.dnetlib.dli.resolver.model.*; |
|
7 |
import eu.dnetlib.dli.resolver.model.CompletionStatus; |
|
8 |
import eu.dnetlib.dli.resolver.model.DLIObjectProvenance; |
|
9 |
import eu.dnetlib.dli.resolver.model.DLIResolvedObject; |
|
14 | 10 |
import eu.dnetlib.enabling.tools.DnetStreamSupport; |
15 | 11 |
import eu.dnetlib.pid.resolver.AbstractPIDResolver; |
16 | 12 |
import eu.dnetlib.pid.resolver.model.ObjectType; |
17 |
import eu.dnetlib.pid.resolver.model.SubjectType; |
|
18 | 13 |
import org.apache.commons.logging.Log; |
19 | 14 |
import org.apache.commons.logging.LogFactory; |
20 | 15 |
|
16 |
import java.util.Collections; |
|
17 |
import java.util.List; |
|
18 |
import java.util.stream.Collectors; |
|
19 |
|
|
21 | 20 |
/** |
22 | 21 |
* The Class DataciteDOIResolver. |
23 | 22 |
*/ |
... | ... | |
46 | 45 |
|
47 | 46 |
public static DLIResolvedObject parseResponse(final String response) { |
48 | 47 |
if (response == null) return null; |
49 |
JsonElement jElement = new JsonParser().parse(response); |
|
50 |
JsonObject jobject = jElement.getAsJsonObject(); |
|
48 |
final JsonElement jElement = new JsonParser().parse(response); |
|
49 |
|
|
50 |
final JsonObject jobject = jElement.getAsJsonObject(); |
|
51 | 51 |
if (jobject.has("data")) { |
52 |
|
|
53 | 52 |
DLIResolvedObject responseObj = new DLIResolvedObject(); |
54 | 53 |
final JsonObject root = jobject.getAsJsonObject("data").getAsJsonObject("attributes"); |
55 | 54 |
|
55 |
|
|
56 | 56 |
final String doi = root.get("doi").getAsString(); |
57 | 57 |
responseObj.setPid(doi); |
58 | 58 |
responseObj.setPidType("doi"); |
Also available in: Unified diff
created Datacite Offline resolver