app Http、app DNS、app ssl增加导入功能

This commit is contained in:
leijun
2018-12-30 16:40:19 +08:00
parent aa7e1dcef9
commit 15b1926e17
4 changed files with 111 additions and 13 deletions

View File

@@ -46,7 +46,9 @@ import com.nis.domain.callback.InlineIp;
import com.nis.domain.callback.NtcDnsResStrategy;
import com.nis.domain.callback.ProxyObjKeyring;
import com.nis.domain.callback.ProxyObjTrustedCa;
import com.nis.domain.configuration.AppComplexFeatureCfg;
import com.nis.domain.configuration.AppDomainCfg;
import com.nis.domain.configuration.AppFeatureIndex;
import com.nis.domain.configuration.AppHttpCfg;
import com.nis.domain.configuration.AppIpCfg;
import com.nis.domain.configuration.AppPolicyCfg;
@@ -87,6 +89,7 @@ import com.nis.util.StringUtil;
import com.nis.util.StringUtils;
import com.nis.web.dao.basics.AsnIpCfgDao;
import com.nis.web.dao.configuration.AppCfgDao;
import com.nis.web.dao.configuration.AppMultiFeatureCfgDao;
import com.nis.web.dao.configuration.DdosCfgDao;
import com.nis.web.dao.configuration.DnsIpCfgDao;
import com.nis.web.dao.configuration.DnsResStrategyDao;
@@ -1595,7 +1598,9 @@ public abstract class BaseService {
public void saveAndSend(FunctionRegionDict regionDict,FunctionServiceDict serviceDict,
SpecificServiceCfg specificServiceCfg,
List<? extends BaseCfg> list,List<CfgIndexInfo> cfgIndexInfos,
List<AppPolicyCfg> appPolicyCfgs,boolean send){
List<AppPolicyCfg> appPolicyCfgs,
List<AppFeatureIndex> appFeatureCfgs,
boolean send){
if(list!=null&&list.size()>0) {
String type=null;
if (list.get(0) instanceof BaseIpCfg) {
@@ -1615,6 +1620,10 @@ public abstract class BaseService {
if (appPolicyCfgs != null && appPolicyCfgs.size() > 0) {
this.savePolicyList(appPolicyCfgs);
}
if (appFeatureCfgs != null && appFeatureCfgs.size() > 0) {
this.saveAppFeatureList(appFeatureCfgs);
}
if("BaseIpCfg".equals(type)) {
List<BaseIpCfg> listPage = (List<BaseIpCfg>) list;
if (specificServiceCfg!=null&&regionDict.getFunctionId().equals(405)) {
@@ -1729,7 +1738,11 @@ public abstract class BaseService {
if(regionDict.getDictId().intValue()==63) {
// appCfgService.saveAppHttpCfg(listPage);
this.saveComplexkeywordCfgBatch(regionDict,serviceDict,listPage, AppHttpCfg.getTablename(),send);
}else
}else
//app Http特征
if(regionDict.getDictId().intValue()==220 || regionDict.getDictId().intValue()==216 || regionDict.getDictId().intValue()==224){
this.saveComplexkeywordCfgBatch(regionDict,serviceDict,listPage,"app_complex_feature_cfg",send);
}
// HTTP(s)请求头域
if(regionDict.getDictId().intValue()==98 || regionDict.getDictId().intValue()==80 ||
regionDict.getDictId().intValue()==86 || regionDict.getDictId().intValue()==92 ||
@@ -2058,6 +2071,31 @@ public abstract class BaseService {
}
}
}
/**
* 导入配置保存App特征
* @param appPolicyCfgs
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAppFeatureList(List<AppFeatureIndex> appFeatures){
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
try{
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
for(int index = 0; index < appFeatures.size();index++){
AppFeatureIndex _cfg = appFeatures.get(index);
((AppMultiFeatureCfgDao) batchSqlSession.getMapper(AppMultiFeatureCfgDao.class)).insertAppFeatureIndex(_cfg);
}
batchSqlSession.commit();
}finally {
if(batchSqlSession != null){
batchSqlSession.close();
}
}
}
/**
* 导入配置时数据批量入库IP配置
*
@@ -2087,7 +2125,12 @@ public abstract class BaseService {
BeanUtils.copyProperties(_cfg, dnsIpCfg);
//如果insert加入了select last_insert_id会拖慢6~7倍以上的效率
((DnsIpCfgDao) batchSqlSession.getMapper(DnsIpCfgDao.class)).insert(dnsIpCfg);
}else {
} else if(regionDict.getFunctionId().equals(565) || regionDict.getFunctionId().equals(566) || regionDict.getFunctionId().equals(563)){
AppIpCfg app =new AppIpCfg();
BeanUtils.copyProperties(_cfg, app);
((AppMultiFeatureCfgDao) batchSqlSession.getMapper(AppMultiFeatureCfgDao.class)).insertAppIpRangeCfg(app);
}
else {
batchSqlSession.getMapper(IpCfgDao.class).insertForBatch(_cfg);
}
@@ -2307,7 +2350,12 @@ public abstract class BaseService {
AppHttpCfg _cfg=new AppHttpCfg();
BeanUtils.copyProperties(cfg, _cfg);
((AppCfgDao) batchSqlSession.getMapper(AppCfgDao.class)).insertAppHttpCfgBatch(_cfg);
}else {
}else if(regionDict.getDictId().intValue()==220 || regionDict.getDictId().intValue()==216 || regionDict.getDictId().intValue()==224){
AppComplexFeatureCfg appCfg=new AppComplexFeatureCfg();
BeanUtils.copyProperties(cfg, appCfg);
((AppMultiFeatureCfgDao) batchSqlSession.getMapper(AppMultiFeatureCfgDao.class)).insertAppComplexFeatureCfg(appCfg);
}
else {
((StringCfgDao) batchSqlSession.getMapper(StringCfgDao.class)).saveComplexkeywordCfgBatch(cfg);
}
if (send) {