![JAR search and dependency download from the Maven repository](/logo.png)
io.split.api.client.utils.EncodingUtil Maven / Gradle / Ivy
package io.split.api.client.utils;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.split.api.client.exceptions.SplitJsonException;
import io.split.api.dtos.result.ResultDTO;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class EncodingUtil {
private static final ObjectMapper _mapper = new ObjectMapper();
public static String encode(Object object) throws SplitJsonException {
try {
return _mapper.writeValueAsString(object);
} catch (JsonProcessingException e) {
throw new SplitJsonException(e);
}
}
public static T parse(String json, Class objectType) throws SplitJsonException {
try {
return _mapper.readValue(json, objectType);
} catch (IOException e) {
throw new SplitJsonException(e);
}
}
public static List parseList(String jsonString, Class clazz) throws SplitJsonException {
try {
Iterator nodes = _mapper.readValue(jsonString, JsonNode.class).elements();
List list = new ArrayList<>();
while (nodes.hasNext()) {
JsonNode ni = nodes.next();
if (ni.size() > 0) {
list.add(_mapper.readValue(ni.toString(), clazz));
}
}
return list;
} catch (IOException e) {
throw new SplitJsonException(e);
}
}
public static ResultDTO parseResult(String jsonString, Class clazz) throws SplitJsonException {
TypeReference resultType = new TypeReference>() {
};
try {
return _mapper.readValue(jsonString, resultType);
} catch (IOException e) {
throw new SplitJsonException(e);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy