-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathConverter.java
More file actions
161 lines (128 loc) · 5.3 KB
/
Converter.java
File metadata and controls
161 lines (128 loc) · 5.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
// To use this code, add the following Maven dependency to your project:
//
// com.fasterxml.jackson.core : jackson-databind : 2.9.0
//
// Import this package:
//
// import io.quicktype.Converter;
//
// Then you can deserialize a JSON string with
//
// Track data = Converter.AlbumFromJsonString(jsonString);
// Track data = Converter.ArtistFromJsonString(jsonString);
// Track data = Converter.PlaylistFromJsonString(jsonString);
// Track data = Converter.ProfileFromJsonString(jsonString);
// Track data = Converter.TrackFromJsonString(jsonString);
package io.quicktype;
import java.util.Map;
import java.io.IOException;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.core.JsonProcessingException;
public class Converter {
// Serialize/deserialize helpers
public static Track AlbumFromJsonString(String json) throws IOException {
return getAlbumObjectReader().readValue(json);
}
public static String AlbumToJsonString(Track obj) throws JsonProcessingException {
return getAlbumObjectWriter().writeValueAsString(obj);
}
public static Track ArtistFromJsonString(String json) throws IOException {
return getArtistObjectReader().readValue(json);
}
public static String ArtistToJsonString(Track obj) throws JsonProcessingException {
return getArtistObjectWriter().writeValueAsString(obj);
}
public static Track PlaylistFromJsonString(String json) throws IOException {
return getPlaylistObjectReader().readValue(json);
}
public static String PlaylistToJsonString(Track obj) throws JsonProcessingException {
return getPlaylistObjectWriter().writeValueAsString(obj);
}
public static Track ProfileFromJsonString(String json) throws IOException {
return getProfileObjectReader().readValue(json);
}
public static String ProfileToJsonString(Track obj) throws JsonProcessingException {
return getProfileObjectWriter().writeValueAsString(obj);
}
public static Track TrackFromJsonString(String json) throws IOException {
return getTrackObjectReader().readValue(json);
}
public static String TrackToJsonString(Track obj) throws JsonProcessingException {
return getTrackObjectWriter().writeValueAsString(obj);
}
private static ObjectReader AlbumReader;
private static ObjectWriter AlbumWriter;
private static void instantiateAlbumMapper() {
ObjectMapper mapper = new ObjectMapper();
AlbumReader = mapper.reader(Track.class);
AlbumWriter = mapper.writerFor(Track.class);
}
private static ObjectReader getAlbumObjectReader() {
if (AlbumReader == null) instantiateAlbumMapper();
return AlbumReader;
}
private static ObjectWriter getAlbumObjectWriter() {
if (AlbumWriter == null) instantiateAlbumMapper();
return AlbumWriter;
}
private static ObjectReader ArtistReader;
private static ObjectWriter ArtistWriter;
private static void instantiateArtistMapper() {
ObjectMapper mapper = new ObjectMapper();
ArtistReader = mapper.reader(Track.class);
ArtistWriter = mapper.writerFor(Track.class);
}
private static ObjectReader getArtistObjectReader() {
if (ArtistReader == null) instantiateArtistMapper();
return ArtistReader;
}
private static ObjectWriter getArtistObjectWriter() {
if (ArtistWriter == null) instantiateArtistMapper();
return ArtistWriter;
}
private static ObjectReader PlaylistReader;
private static ObjectWriter PlaylistWriter;
private static void instantiatePlaylistMapper() {
ObjectMapper mapper = new ObjectMapper();
PlaylistReader = mapper.reader(Track.class);
PlaylistWriter = mapper.writerFor(Track.class);
}
private static ObjectReader getPlaylistObjectReader() {
if (PlaylistReader == null) instantiatePlaylistMapper();
return PlaylistReader;
}
private static ObjectWriter getPlaylistObjectWriter() {
if (PlaylistWriter == null) instantiatePlaylistMapper();
return PlaylistWriter;
}
private static ObjectReader ProfileReader;
private static ObjectWriter ProfileWriter;
private static void instantiateProfileMapper() {
ObjectMapper mapper = new ObjectMapper();
ProfileReader = mapper.reader(Track.class);
ProfileWriter = mapper.writerFor(Track.class);
}
private static ObjectReader getProfileObjectReader() {
if (ProfileReader == null) instantiateProfileMapper();
return ProfileReader;
}
private static ObjectWriter getProfileObjectWriter() {
if (ProfileWriter == null) instantiateProfileMapper();
return ProfileWriter;
}
private static ObjectReader TrackReader;
private static ObjectWriter TrackWriter;
private static void instantiateTrackMapper() {
ObjectMapper mapper = new ObjectMapper();
TrackReader = mapper.reader(Track.class);
TrackWriter = mapper.writerFor(Track.class);
}
private static ObjectReader getTrackObjectReader() {
if (TrackReader == null) instantiateTrackMapper();
return TrackReader;
}
private static ObjectWriter getTrackObjectWriter() {
if (TrackWriter == null) instantiateTrackMapper();
return TrackWriter;
}
}