mirror of
https://gitee.com/durcframework/SOP.git
synced 2025-08-11 21:57:56 +08:00
可追加返回结果
This commit is contained in:
@@ -12,6 +12,7 @@ import com.gitee.sop.gatewaycommon.manager.RouteConfigManager;
|
|||||||
import com.gitee.sop.gatewaycommon.param.ParamBuilder;
|
import com.gitee.sop.gatewaycommon.param.ParamBuilder;
|
||||||
import com.gitee.sop.gatewaycommon.result.DataNameBuilder;
|
import com.gitee.sop.gatewaycommon.result.DataNameBuilder;
|
||||||
import com.gitee.sop.gatewaycommon.result.DefaultDataNameBuilder;
|
import com.gitee.sop.gatewaycommon.result.DefaultDataNameBuilder;
|
||||||
|
import com.gitee.sop.gatewaycommon.result.ResultAppender;
|
||||||
import com.gitee.sop.gatewaycommon.result.ResultExecutor;
|
import com.gitee.sop.gatewaycommon.result.ResultExecutor;
|
||||||
import com.gitee.sop.gatewaycommon.secret.CacheIsvManager;
|
import com.gitee.sop.gatewaycommon.secret.CacheIsvManager;
|
||||||
import com.gitee.sop.gatewaycommon.secret.IsvManager;
|
import com.gitee.sop.gatewaycommon.secret.IsvManager;
|
||||||
@@ -115,6 +116,11 @@ public class ApiConfig {
|
|||||||
*/
|
*/
|
||||||
private DataNameBuilder dataNameBuilder = new DefaultDataNameBuilder();
|
private DataNameBuilder dataNameBuilder = new DefaultDataNameBuilder();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 追加结果
|
||||||
|
*/
|
||||||
|
private ResultAppender resultAppender;
|
||||||
|
|
||||||
// -------- fields ---------
|
// -------- fields ---------
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -132,12 +132,17 @@ public abstract class BaseExecutorAdapter<T, R> implements ResultExecutor<T, R>
|
|||||||
sign = String.valueOf(clientSign);
|
sign = String.valueOf(clientSign);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ApiConfig apiConfig = ApiConfig.getInstance();
|
||||||
// 点换成下划线
|
// 点换成下划线
|
||||||
DataNameBuilder dataNameBuilder = ApiConfig.getInstance().getDataNameBuilder();
|
DataNameBuilder dataNameBuilder = apiConfig.getDataNameBuilder();
|
||||||
String method = dataNameBuilder.build(name);
|
String method = dataNameBuilder.build(name);
|
||||||
ret.put(method, jsonObjectService);
|
ret.put(method, jsonObjectService);
|
||||||
|
// 先隐藏返回签名字段
|
||||||
ret.put(ParamNames.SIGN_NAME, sign);
|
ret.put(ParamNames.SIGN_NAME, sign);
|
||||||
|
ResultAppender resultAppender = apiConfig.getResultAppender();
|
||||||
|
if (resultAppender != null) {
|
||||||
|
resultAppender.append(ret, params);
|
||||||
|
}
|
||||||
return ret.toJSONString();
|
return ret.toJSONString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -0,0 +1,18 @@
|
|||||||
|
package com.gitee.sop.gatewaycommon.result;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 对结果进行追加
|
||||||
|
* @author tanghc
|
||||||
|
*/
|
||||||
|
public interface ResultAppender {
|
||||||
|
/**
|
||||||
|
* 追加最终结果
|
||||||
|
* @param result 最终结果
|
||||||
|
* @param params 请求参数
|
||||||
|
*/
|
||||||
|
void append(JSONObject result, Map<String, ?> params);
|
||||||
|
}
|
Reference in New Issue
Block a user