import org.onap.usecaseui.intentanalysis.bean.models.Intent;
+import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean;
import org.onap.usecaseui.intentanalysis.intentBaseService.IntentHandleService;
import org.onap.usecaseui.intentanalysis.intentBaseService.intentModule.ActuationModule;
import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction;
import org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService.IntentProcessService;
+import org.onap.usecaseui.intentanalysis.service.IntentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
@Service
public class CLLBusinessActuationModule implements ActuationModule {
@Autowired
IntentProcessService processService;
@Autowired
IntentHandleService intentHandleService;
+ @Autowired
+ IntentService intentService;
@Override
public void sendToIntentHandler(IntentManagementFunction IntentHandler) {
-
}
@Override
}
@Override
- public void saveIntentToDb() {
+ public void saveIntentToDb(List<Map<IntentGoalBean,IntentManagementFunction>> intentMapList) {
+ List<IntentGoalBean> subIntentGoalLit = new ArrayList<>();
+ for (Map<IntentGoalBean,IntentManagementFunction> map:intentMapList) {
+ subIntentGoalLit.addAll(map.keySet());
+ }
+ List<Intent> subIntentList = subIntentGoalLit.stream().map(IntentGoalBean::getIntent)
+ .collect(Collectors.toList());
+ for (Intent subIntent:subIntentList) {
+ intentService.createIntent(subIntent);
+ }
}
}
*/
package org.onap.usecaseui.intentanalysis.intentBaseService.intentModule;
+import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean;
import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction;
+import java.util.List;
+import java.util.Map;
+
public interface ActuationModule {
//actuationModel & knownledgeModel interact
void sendToIntentHandler(IntentManagementFunction IntentHandler);
void sendToNonIntentHandler();//直接操作
void interactWithIntentHandle();
//Save intent information to the intent instance database
- void saveIntentToDb();
+ void saveIntentToDb(List<Map<IntentGoalBean,IntentManagementFunction>> intentMapList);
}
package org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService;
+import org.onap.usecaseui.intentanalysis.bean.models.Intent;
+import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean;
import org.onap.usecaseui.intentanalysis.intentBaseService.IntentManagementFunction;
import org.onap.usecaseui.intentanalysis.intentBaseService.intentModule.ActuationModule;
import org.onap.usecaseui.intentanalysis.intentBaseService.intentModule.DecisionModule;
import org.springframework.stereotype.Service;
+import java.util.List;
+import java.util.Map;
+
@Service
public class IntentDefinitionService {
}
}
- public void definitionPorcess() {
+ public void definitionPorcess(List<Map<IntentGoalBean,IntentManagementFunction>> intentMapList) {
DecisionModule intentDecisionModule = intentOwner.getDecisionModule();
ActuationModule intentActuationModule = intentOwner.getActuationModule();
intentDecisionModule.intentDefinition();
- intentActuationModule.saveIntentToDb();
+ intentActuationModule.saveIntentToDb(intentMapList);//id type
}
}
public void operationProcess() {
DecisionModule intentDecisionModule = intentOwner.getDecisionModule();
- ActuationModule intentActuationModule = intentOwner.getActuationModule();
+ ActuationModule intentActuationModule = intentHandler.getActuationModule();
- intentDecisionModule.interactWithTemplateDb();
+ //intentDecisionModule.interactWithTemplateDb();
intentActuationModule.interactWithIntentHandle();
intentActuationModule.sendToIntentHandler(intentHandler);
for (Map<IntentGoalBean,IntentManagementFunction> map : intentListMap) {
- //definition process
+ //definition process save subintent
intentDefinitionService.setIntentRole(intentOwner,intentHandler);
- intentDefinitionService.definitionPorcess();
+ intentDefinitionService.definitionPorcess(intentListMap);
//distribution process
intentDistributionService.setIntentRole(intentOwner,intentHandler);