// Path: src/main/java/com/github/quartzweb/service/QuartzWebService.java
// public class QuartzWebService {
// 
//     private final static QuartzWebService instance = new QuartzWebService();
// 
//     public static QuartzWebService getInstance() {
//         return instance;
//     }
// 
//     /**
//      * 业务策略工厂
//      */
//     private ServiceStrategyFactory serviceStrategyFactory = new DefaultServiceStrategyFactory();
// 
// 
//     /**
//      * {@inheritDoc}
//      */
//     public String service(String path, HttpServletRequest request, HttpServletResponse response) {
// 
//         try {
// 
//             LOG.debug("request:" + LOG.buildLogMessage(request));
//             ServiceStrategy serviceStrategy = serviceStrategyFactory.createStrategy(path);
//             ServiceStrategyParameter parameter = serviceStrategy.newServiceStrategyParameterInstance();
//             parameter.translate(request);
//             ServiceStrategyURL serviceStrategyURL = new DefaultServiceStrategyURL(path);
//             QuartzWebServiceContext context = new QuartzWebServiceContext(serviceStrategy);
//             String json = context.service(serviceStrategyURL, parameter).json();
//             LOG.debug("json result:" + json.toLowerCase());
//             return json;
//         } catch (Exception e) {
//             //e.printStackTrace();
//             LOG.debug("service error:", e);
//             return JSONResult.build(JSONResult.RESULT_CODE_ERROR, e.getMessage()).json();
//         }
// 
//     }
// 
// 
//     /**
//      * 获取 业务策略工厂
//      * @return serviceStrategyFactory 业务策略工厂
//      */
//     public ServiceStrategyFactory getServiceStrategyFactory() {
//         return this.serviceStrategyFactory;
//     }
// 
//     /**
//      * 设置 业务策略工厂
//      * @param serviceStrategyFactory 业务策略工厂
//      */
//     public void setServiceStrategyFactory(ServiceStrategyFactory serviceStrategyFactory) {
//         this.serviceStrategyFactory = serviceStrategyFactory;
//     }
// }
// 
// Path: src/main/java/com/github/quartzweb/utils/StringUtils.java
// public class StringUtils {
// 
//     /**
//      * 判断两个字符串是否相等
//      * @param a 字符
//      * @param b 字符
//      * @return true相等,false不相等
//      */
//     public static boolean equals(String a, String b) {
//         if (a == null) {
//             return b == null;
//         }
//         return a.equals(b);
//     }
// 
//     /**
//      * 忽略大小写判断两个字符串是否相等
//      * @param a 字符
//      * @param b 字符
//      * @return true相等,false不相等
//      */
//     public static boolean equalsIgnoreCase(String a, String b) {
//         if (a == null) {
//             return b == null;
//         }
//         return a.equalsIgnoreCase(b);
//     }
// 
//     /**
//      * 判断字符串是否为空（NULL或空串""）
//      * @param value 字符串
//      * @return true为空，false不为空
//      */
//     public static boolean isEmpty(CharSequence value) {
//         if (value == null || value.length() == 0) {
//             return true;
//         }
//         return false;
//     }
// 
//     /**
//      * 是否为整数
//      * @param str
//      * @return
//      */
//     public static boolean isInteger(String str) {
//         Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
//         return pattern.matcher(str).matches();
//     }
// 
//     /**
//      * 判断是否为大于某个数字的整数
//      * @param str
//      * @param integer
//      * @return
//      */
//     public static boolean isIntegerGTNumber(String str,Integer integer) {
//         // 是整数
//         if (isInteger(str)) {
//             int source = Integer.parseInt(str);
//             return source > integer;
//         } else {
//             return false;
//         }
//     }
// }


import com.github.quartzweb.service.QuartzWebService;
import com.github.quartzweb.utils.StringUtils;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Licensed under the Apache License, Version 2.0 (the "License");
 */
package com.github.quartzweb.http;



/**
 * 负责处理业务servlet
 * @author quxiucheng [quxiuchengdev@gmail.com]
 */
public class QuartzWebServlet extends SecurityServlet {

    public static final String PARAM_RESOURCE_PATH = "resourcePath";


// Path: src/main/java/com/github/quartzweb/service/QuartzWebService.java
// public class QuartzWebService {
// 
//     private final static QuartzWebService instance = new QuartzWebService();
// 
//     public static QuartzWebService getInstance() {
//         return instance;
//     }
// 
//     /**
//      * 业务策略工厂
//      */
//     private ServiceStrategyFactory serviceStrategyFactory = new DefaultServiceStrategyFactory();
// 
// 
//     /**
//      * {@inheritDoc}
//      */
//     public String service(String path, HttpServletRequest request, HttpServletResponse response) {
// 
//         try {
// 
//             LOG.debug("request:" + LOG.buildLogMessage(request));
//             ServiceStrategy serviceStrategy = serviceStrategyFactory.createStrategy(path);
//             ServiceStrategyParameter parameter = serviceStrategy.newServiceStrategyParameterInstance();
//             parameter.translate(request);
//             ServiceStrategyURL serviceStrategyURL = new DefaultServiceStrategyURL(path);
//             QuartzWebServiceContext context = new QuartzWebServiceContext(serviceStrategy);
//             String json = context.service(serviceStrategyURL, parameter).json();
//             LOG.debug("json result:" + json.toLowerCase());
//             return json;
//         } catch (Exception e) {
//             //e.printStackTrace();
//             LOG.debug("service error:", e);
//             return JSONResult.build(JSONResult.RESULT_CODE_ERROR, e.getMessage()).json();
//         }
// 
//     }
// 
// 
//     /**
//      * 获取 业务策略工厂
//      * @return serviceStrategyFactory 业务策略工厂
//      */
//     public ServiceStrategyFactory getServiceStrategyFactory() {
//         return this.serviceStrategyFactory;
//     }
// 
//     /**
//      * 设置 业务策略工厂
//      * @param serviceStrategyFactory 业务策略工厂
//      */
//     public void setServiceStrategyFactory(ServiceStrategyFactory serviceStrategyFactory) {
//         this.serviceStrategyFactory = serviceStrategyFactory;
//     }
// }
// 
// Path: src/main/java/com/github/quartzweb/utils/StringUtils.java
// public class StringUtils {
// 
//     /**
//      * 判断两个字符串是否相等
//      * @param a 字符
//      * @param b 字符
//      * @return true相等,false不相等
//      */
//     public static boolean equals(String a, String b) {
//         if (a == null) {
//             return b == null;
//         }
//         return a.equals(b);
//     }
// 
//     /**
//      * 忽略大小写判断两个字符串是否相等
//      * @param a 字符
//      * @param b 字符
//      * @return true相等,false不相等
//      */
//     public static boolean equalsIgnoreCase(String a, String b) {
//         if (a == null) {
//             return b == null;
//         }
//         return a.equalsIgnoreCase(b);
//     }
// 
//     /**
//      * 判断字符串是否为空（NULL或空串""）
//      * @param value 字符串
//      * @return true为空，false不为空
//      */
//     public static boolean isEmpty(CharSequence value) {
//         if (value == null || value.length() == 0) {
//             return true;
//         }
//         return false;
//     }
// 
//     /**
//      * 是否为整数
//      * @param str
//      * @return
//      */
//     public static boolean isInteger(String str) {
//         Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
//         return pattern.matcher(str).matches();
//     }
// 
//     /**
//      * 判断是否为大于某个数字的整数
//      * @param str
//      * @param integer
//      * @return
//      */
//     public static boolean isIntegerGTNumber(String str,Integer integer) {
//         // 是整数
//         if (isInteger(str)) {
//             int source = Integer.parseInt(str);
//             return source > integer;
//         } else {
//             return false;
//         }
//     }
// }


// Path: src/main/java/com/github/quartzweb/http/QuartzWebServlet.java
import com.github.quartzweb.service.QuartzWebService;
import com.github.quartzweb.utils.StringUtils;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Licensed under the Apache License, Version 2.0 (the "License");
 */
package com.github.quartzweb.http;



/**
 * 负责处理业务servlet
 * @author quxiucheng [quxiuchengdev@gmail.com]
 */
public class QuartzWebServlet extends SecurityServlet {

    public static final String PARAM_RESOURCE_PATH = "resourcePath";


    private QuartzWebService quartzWebService = QuartzWebService.getInstance();