d2c984da50a3b4d8c871a60e4e00f8b5b9e13cd2
[usecase-ui/intent-analysis.git] /
1 /*
2  * Copyright (C) 2022 CMCC, Inc. and others. All rights reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.usecaseui.intentanalysis.cllBusinessIntentMgt.cllBusinessModule;
17
18 import org.onap.usecaseui.intentanalysis.bean.enums.IntentGoalType;
19 import org.onap.usecaseui.intentanalysis.bean.models.Intent;
20 import org.onap.usecaseui.intentanalysis.bean.models.IntentGoalBean;
21 import org.onap.usecaseui.intentanalysis.intentBaseService.intentModule.KnowledgeModule;
22 import org.onap.usecaseui.intentanalysis.intentBaseService.intentProcessService.IntentDetectionService;
23 import org.onap.usecaseui.intentanalysis.service.IntentService;
24 import org.slf4j.Logger;
25 import org.slf4j.LoggerFactory;
26 import org.springframework.beans.factory.annotation.Autowired;
27 import org.springframework.stereotype.Component;
28
29 import java.util.List;
30
31 @Component
32 public class CLLBusinessKnowledgeModule extends KnowledgeModule {
33     private static Logger LOGGER = LoggerFactory.getLogger(CLLBusinessKnowledgeModule.class);
34
35     @Autowired
36     IntentService intentService;
37     @Autowired
38     IntentDetectionService intentDetectionService;
39
40     @Override
41     public IntentGoalBean intentCognition(Intent intent) {
42         List<String> intendIdList = intentResolution(intent);
43         getSystemStatus();
44         return determineDetectionGoal(intent, intendIdList);
45     }
46
47     @Override
48     public boolean recieveCreateIntent() {
49         return false;
50     }
51
52     @Override
53     public boolean recieveUpdateIntent() {
54         return false;
55     }
56
57     @Override
58     public boolean recieveDeleteIntent() {
59         return false;
60     }
61
62     void intentReportResolution() {
63     }
64
65     /**
66      * query the implementation of intent requirements in the system
67      */
68     void getSystemStatus() {
69     }
70
71
72     void interactWithIntentOwner() {
73     }
74
75     /**
76      * Determine add, delete, modify according to theobject,target and context of the expectation
77      */
78     public IntentGoalBean determineDetectionGoal(Intent intent, List<String> intentIdList) {
79         int size = intentIdList.size();
80         if (size == 0) {
81             return new IntentGoalBean(intent, IntentGoalType.CREATE);
82         } else {
83             return new IntentGoalBean(intent, IntentGoalType.UPDATE);
84         }
85     }
86
87 }