
prerna.util.gson.UpdateQueryStructAdapter Maven / Gradle / Ivy
The newest version!
package prerna.util.gson;
import java.io.IOException;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
import java.util.Vector;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import com.google.gson.Gson;
import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonToken;
import com.google.gson.stream.JsonWriter;
import prerna.query.querystruct.AbstractQueryStruct.QUERY_STRUCT_TYPE;
import prerna.query.querystruct.filters.GenRowFilters;
import prerna.query.querystruct.joins.IRelation;
import prerna.query.querystruct.selectors.IQuerySelector;
import prerna.query.querystruct.update.UpdateQueryStruct;
public class UpdateQueryStructAdapter extends AbstractSemossTypeAdapter {
private static final Logger logger = LogManager.getLogger(UpdateQueryStructAdapter.class);
private static final Gson GSON = GsonUtility.getDefaultGson();
@Override
public UpdateQueryStruct read(JsonReader in) throws IOException {
if (in.peek() == JsonToken.NULL) {
in.nextNull();
return null;
}
UpdateQueryStruct qs = new UpdateQueryStruct();
in.beginObject();
while(in.hasNext()) {
String name = in.nextName();
if(name.equals("qsType")) {
qs.setQsType(QUERY_STRUCT_TYPE.valueOf(in.nextString()));
} else if(name.equals("engineName")) {
qs.setEngineId(in.nextString());
} else if(name.equals("frameName")) {
qs.setFrameName(in.nextString());
} else if(name.equals("frameType")) {
qs.setFrameType(in.nextString());
} else if(name.equals("overrideImplicit")) {
qs.setOverrideImplicit(in.nextBoolean());
}
// custom to update query
else if(name.equals("updateValues")) {
TypeAdapter adapter = GSON.getAdapter(List.class);
List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy