Skip to content

Commit a6bdc6c

Browse files
Optimize The AppConn2LinkisRefExecutionRestfulApi, maybe some AppConn has no AppInstance.
1 parent f4840f5 commit a6bdc6c

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

dss-framework/dss-appconn-framework/src/main/java/com/webank/wedatasphere/dss/framework/appconn/restful/AppConn2LinkisRefExecutionRestfulApi.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import com.webank.wedatasphere.dss.standard.app.development.utils.DevelopmentOperationUtils;
1313
import com.webank.wedatasphere.dss.standard.app.sso.Workspace;
1414
import com.webank.wedatasphere.dss.standard.common.desc.AppInstance;
15+
import com.webank.wedatasphere.dss.standard.common.desc.AppInstanceImpl;
1516
import org.apache.linkis.server.Message;
1617
import org.apache.linkis.server.security.SecurityFilter;
1718
import org.slf4j.Logger;
@@ -33,7 +34,9 @@ public class AppConn2LinkisRefExecutionRestfulApi {
3334

3435
private static final Logger LOGGER = LoggerFactory.getLogger(AppConn2LinkisRefExecutionRestfulApi.class);
3536

37+
private AppInstance emptyAppInstance = new AppInstanceImpl();
3638

39+
// 仅仅用于表示依赖,希望AppConnManagerRestfulApi先完成所有AppConn的加载之后,本Restful再对外提供服务。
3740
@Autowired
3841
private AppConnManagerRestfulApi appConnManagerRestfulApi;
3942

@@ -49,8 +52,10 @@ public Message execute(HttpServletRequest request, @RequestBody Map<String, Obje
4952
OnlyDevelopmentAppConn appConn = (OnlyDevelopmentAppConn) AppConnManager.getAppConnManager().getAppConn(appConnName);
5053
AppInstance appInstance;
5154
List<DSSLabel> labels = Arrays.asList(new EnvDSSLabel(labelStr));
52-
if(appConn.getAppDesc().getAppInstances().size() == 1) {
53-
appInstance = appConn.getAppDesc().getAppInstances().get(0);
55+
// 原则上,AppConn2Linkis类型的AppConn,要么一个AppInstance都没有,要么就需按照AppConn的规范去录入AppInstance.
56+
if(appConn.getAppDesc().getAppInstances().isEmpty()) {
57+
LOGGER.info("AppConn {} has no appInstance, use empty appInstance to get operation.", appConnName);
58+
appInstance = emptyAppInstance;
5459
} else {
5560
appInstance = appConn.getAppDesc().getAppInstancesByLabels(labels).get(0);
5661
}
@@ -61,6 +66,7 @@ public Message execute(HttpServletRequest request, @RequestBody Map<String, Obje
6166
developmentRequestRef.setWorkspace(workspace).setUserName(userName).setDSSLabels(labels);
6267
return ((AppConn2LinkisRefExecutionOperation) developmentOperation).execute((RefJobContentRequestRef) developmentRequestRef);
6368
}, null, "fetch linkis jobContent from appConn " + appConnName + " failed.");
69+
LOGGER.info("user {} transform jobContent from AppConn {} with responseRef {}.", userName, appConnName, DSSCommonUtils.COMMON_GSON.toJson(responseRef));
6470
return Message.ok().data("executionCode", responseRef.getCode()).data("params", responseRef.getParams())
6571
.data("engineType", responseRef.getEngineType()).data("runType", responseRef.getRunType());
6672
}

0 commit comments

Comments
 (0)