![JAR search and dependency download from the Maven repository](/logo.png)
org.kawanfw.sql.json.no_obfuscation.ResultSetMetaDataHolderTransport Maven / Gradle / Ivy
/*
* This file is part of AceQL.
* AceQL: Remote JDBC access over HTTP.
* Copyright (C) 2015, KawanSoft SAS
* (http://www.kawansoft.com). All rights reserved.
*
* AceQL is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* AceQL is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA
*
* Any modifications to this file must keep this entire header
* intact.
*/
package org.kawanfw.sql.json.no_obfuscation;
import java.lang.reflect.Type;
import org.kawanfw.commons.util.FrameworkDebug;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
/**
* Utility class to transport a ResultSetMetaDataHolder Client <==> Server
*
* @author Nicolas de Pomereu
*
*/
public class ResultSetMetaDataHolderTransport {
/** Debug flag */
private static boolean DEBUG = FrameworkDebug
.isSet(ResultSetMetaDataHolderTransport.class);
/**
* Convert to Json a ResultSetMetaDataHolder and then format if to HTML
*
* @return the instance converted to Json
*/
public static String toJson(ResultSetMetaDataHolder resultSetMetaDataHolder) {
// See http://sites.google.com/site/gson/gson-user-guide
Gson gson = new Gson();
Type theType = new TypeToken() {
}.getType();
String jsonString = gson.toJson(resultSetMetaDataHolder, theType);
// free resultSetMetaDataHolder
resultSetMetaDataHolder = null;
// debug("PC parameterTypesAndValues jsonString: " + jsonString);
//jsonString = HtmlConverter.toHtml(jsonString);
return jsonString;
}
/**
* Format from HTML & JSON string the ResultSetMetaDataHolder
*
* @param jsonString
* formated JSON string containing the ResultSetMetaDataHolder
* @return the ResultSetMetaDataHolder
*/
public static ResultSetMetaDataHolder fromJson(String jsonString) {
if (jsonString == null) {
throw new IllegalArgumentException("jsonString is null!");
}
//jsonString = HtmlConverter.fromHtml(jsonString);
debug("jsonString: " + jsonString);
// See http://sites.google.com/site/gson/gson-user-guide
Gson gson = new Gson();
Type theType = new TypeToken() {
}.getType();
ResultSetMetaDataHolder resultSetMetaDataHolder = gson.fromJson(
jsonString, theType);
return resultSetMetaDataHolder;
}
/**
* Debug
*
* @param s
*/
public static void debug(String s) {
if (DEBUG) {
System.out.println(s);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy