AbstractJsonCommandExecutor.java
package cn.bluejoe.elfinder.controller.executor;
import java.io.PrintWriter;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONObject;
import cn.bluejoe.elfinder.service.FsService;
import sk.iway.iwcm.system.stripes.MultipartWrapper;
public abstract class AbstractJsonCommandExecutor extends AbstractCommandExecutor
{
@Override
final public void execute(FsService fsService, HttpServletRequest request, HttpServletResponse response,
ServletContext servletContext) throws Exception
{
JSONObject json = new JSONObject();
try
{
execute(fsService, request, servletContext, json);
//response.setContentType("application/json; charset=UTF-8");
response.setContentType("text/html; charset=UTF-8");
//WebJET: pridaj reload stromu
if (sk.iway.iwcm.RequestBean.getAttribute("forceReloadTree")!=null) {
json.put("forceReloadTree", true);
//aby stihli dobehnut procesy
MultipartWrapper.slowdownUpload();
}
PrintWriter writer = response.getWriter();
json.write(writer);
writer.flush();
writer.close();
}
catch (Exception e)
{
sk.iway.iwcm.Logger.error(e);
json.put("error", e.getMessage());
}
}
protected abstract void execute(FsService fsService, HttpServletRequest request, ServletContext servletContext,
JSONObject json) throws Exception;
}