com.khs.sherpa.util.JsonUtil Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of khs-sherpa Show documentation
Show all versions of khs-sherpa Show documentation
JSON remote data end point service via HTTP
package com.khs.sherpa.util;
/*
* Copyright 2012 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.io.IOException;
import java.io.OutputStream;
import com.khs.sherpa.exception.SherpaRuntimeException;
import com.khs.sherpa.json.service.JsonProvider;
public class JsonUtil {
public static void mapJsonp(Object object, JsonProvider provider, OutputStream out, String jsonpCallback) {
try {
out.write( (jsonpCallback+"(").getBytes());
JsonUtil.map(object, provider, out);
out.write(");".getBytes());
} catch (IOException e) {
e.printStackTrace();
}
}
public static void map(Object object, JsonProvider provider, OutputStream out, String callback) {
if (callback != null) {
JsonUtil.mapJsonp(object, provider, out, callback);
} else {
JsonUtil.map(object, provider, out);
}
}
public static void map(Object object, JsonProvider provider, OutputStream out) {
try {
if(object != null) {
out.write(provider.toJson(object).getBytes());
}
} catch (IOException e) {
e.printStackTrace();
}
}
public static void error(String msg, JsonProvider provider, OutputStream out, String callback) {
if (callback != null) {
JsonUtil.mapJsonp(new Result("ERROR", msg), provider, out, callback);
} else {
JsonUtil.map(new Result("ERROR", msg), provider, out);
}
}
public static void error(String msg, JsonProvider provider, OutputStream out) {
map(new Result("ERROR", msg), provider, out);
}
public static void info(String msg, JsonProvider provider, OutputStream out) {
map(new Result("INFO", msg), provider, out);
}
public static void error(SherpaRuntimeException ex, JsonProvider provider, OutputStream out) {
String error = ex.getMessage();
StackTraceElement[] stack = ex.getStackTrace();
for (StackTraceElement ste : stack) {
error += "\n" + ste.toString();
}
if (ex.getCause() != null) {
error += "\n *** Exception Cause ***";
stack = ex.getCause().getStackTrace();
for (StackTraceElement ste : stack) {
error += "\n" + ste.toString();
}
}
map(new Result("ERROR", error), provider, out);
}
public static void message(String message, JsonProvider provider, OutputStream out) {
map(new Result("SUCCESS", message), provider, out);
}
public static void validation(String message, JsonProvider provider, OutputStream out) {
map(new Result("VALIDATION", message), provider, out);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy