This repository has been archived on 2021-09-20. You can view files and clone it, but cannot push or open issues or pull requests.
geoportal-common/src/main/java/org/gcube/application/geoportal/common/model/profile/Serialization.java

27 lines
824 B
Java

package org.gcube.application.geoportal.common.model.profile;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import javax.json.JsonArray;
import javax.json.JsonObject;
import org.gcube.application.geoportal.common.faults.JsonParseException;
import org.gcube.application.geoportal.common.model.BasicJSONObject;
public class Serialization {
public static <T extends BasicJSONObject> ArrayList<T> asArray(JsonArray array,Class<T> clazz) throws JsonParseException{
try {
ArrayList<T> toReturn=new ArrayList<T>();
if(array!=null)
for(int i=0;i<array.size();i++)
toReturn.add(clazz.getConstructor(JsonObject.class).newInstance(array.getJsonObject(i)));
return toReturn;
}catch(Exception e) {
throw new JsonParseException("Unable to create list of "+clazz,e);
}
}
}