package net.mengkang.nettyrest; import net.mengkang.nettyrest.response.Info; import net.mengkang.nettyrest.response.Result; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * api resource base method */ public class BaseResource { protected Logger logger; protected ApiProtocol apiProtocol; public BaseResource(ApiProtocol apiProtocol) { this.logger = LoggerFactory.getLogger(this.getClass()); this.apiProtocol = apiProtocol; } public Object parameterIntCheck(ApiProtocol apiProtocol, String parameter) { if (apiProtocol.getParameters().containsKey(parameter)) { try { return Integer.parseInt(apiProtocol.getParameters().get(parameter).get(0)); } catch (NumberFormatException e) { logger.error(e.getMessage()); return error(StatusCode.PARAM_FORMAT_ERROR, parameter); } } else { return error(StatusCode.PARAM_CAN_NOT_BE_NULL, parameter); } } protected Result error(int code) { return ErrorHandler.error(code); } protected Result error(int code, String parameter) { return ErrorHandler.error(code, parameter); } protected Result success() { return new Result<>(new Info()); } protected Result success(int code) { Result result = new Result<>(new Info()); result.getInfo().setCode(code).setCodeMessage(StatusCode.codeMap.get(code)); return result; } }