use of com.dtstack.taier.develop.vo.datasource.DsDetailVO in project Taier by DTStack.
the class DsInfoService method dsInfoDetail.
/**
* 根据数据源Id获取数据源详情
*
* @param dataInfoId
* @return
*/
public DsDetailVO dsInfoDetail(Long dataInfoId) {
DsInfo dsInfo = lambdaQuery().eq(DsInfo::getId, dataInfoId).one();
DsDetailVO dsDetailVO = DsDetailTransfer.INSTANCE.toInfoVO(dsInfo);
String dataJson = dsInfo.getDataJson();
JSONObject dataSourceJson = DataSourceUtils.getDataSourceJson(dataJson);
if (DataSourceUtils.judgeOpenKerberos(dataJson) && null == dataSourceJson.getString(FormNames.PRINCIPAL)) {
JSONObject kerberosConfig = dataSourceJson.getJSONObject(FormNames.KERBEROS_CONFIG);
dataSourceJson.put(FormNames.PRINCIPAL, kerberosConfig.getString(FormNames.PRINCIPAL));
}
if (DataSourceUtils.judgeOpenKerberos(dsInfo.getDataJson()) && dsInfo.getDataType().equals(DataSourceTypeEnum.KAFKA.getDataType())) {
// kafka开启了kerberos认证
dataSourceJson.put(FormNames.AUTHENTICATION, FormNames.KERBROS);
}
return dsDetailVO;
}
Aggregations