summaryrefslogtreecommitdiffstats
path: root/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java
diff options
context:
space:
mode:
Diffstat (limited to 'ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java')
-rw-r--r--ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java1388
1 files changed, 694 insertions, 694 deletions
diff --git a/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java b/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java
index 9423017c3..7093cd514 100644
--- a/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java
+++ b/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportController.java
@@ -75,704 +75,704 @@ import au.com.bytecode.opencsv.CSVReader;
@Controller
public class DictionaryImportController {
- private static final Logger LOGGER = FlexLogger.getLogger(DictionaryImportController.class);
-
- private static CommonClassDao commonClassDao;
- private static final String DESCRIPTION= "description";
- private static final String ERROR= "Error";
- private static final String DEPENDENCY= "dependency";
-
- @Autowired
- public DictionaryImportController(CommonClassDao commonClassDao){
- setCommonClassDao(commonClassDao);
- }
-
- public static void setCommonClassDao(CommonClassDao commonClassDao) {
- DictionaryImportController.commonClassDao = commonClassDao;
- }
-
- public DictionaryImportController(){
- super();
- }
+ private static final Logger LOGGER = FlexLogger.getLogger(DictionaryImportController.class);
- @RequestMapping(value={"/dictionary/import_dictionary"}, method={RequestMethod.POST})
- public void importDictionaryData(HttpServletRequest request, HttpServletResponse response) throws IOException{
- ObjectMapper mapper = new ObjectMapper();
- mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
- String userId = request.getParameter("userId");
- String dictionaryName = request.getParameter("dictionaryName");
-
- if(dictionaryName == null || dictionaryName.isEmpty()){
- LOGGER.error("dictionaryName is null/empty");
- response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
- response.getWriter().write(ERROR);
- return;
- }
-
- // fix Fortify Path Manipulation issue
- if(!isValidDictionaryName(dictionaryName)){
- LOGGER.error("dictionaryName is invalid");
- response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
- response.getWriter().write(ERROR);
- return;
- }
- File file = new File(dictionaryName);
- try(OutputStream outputStream = new FileOutputStream(file); FileReader fileReader = new FileReader(file.toString())){
- IOUtils.copy(request.getInputStream(), outputStream);
- CSVReader csvReader = new CSVReader(fileReader);
- List<String[]> dictSheet = csvReader.readAll();
- if(dictionaryName.startsWith("Attribute")){
- for(int i = 1; i< dictSheet.size(); i++){
- Attribute attribute = new Attribute("");
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("xacml_id".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute ID".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setXacmlId(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("priority".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setPriority(rows[j]);
- }
- if("datatype".equalsIgnoreCase(dictSheet.get(0)[j]) || "Data Type".equalsIgnoreCase(dictSheet.get(0)[j])){
- Datatype dataType = new Datatype();
- if("string".equalsIgnoreCase(rows[j])){
- dataType.setId(26);
- }else if("integer".equalsIgnoreCase(rows[j])){
- dataType.setId(12);
- }else if("double".equalsIgnoreCase(rows[j])){
- dataType.setId(25);
- }else if("boolean".equalsIgnoreCase(rows[j])){
- dataType.setId(18);
- }else if("user".equalsIgnoreCase(rows[j])){
- dataType.setId(29);
- }
- attribute.setDatatypeBean(dataType);
- Category category = new Category();
- category.setId(5);
- attribute.setCategoryBean(category);
- }
- if("attribute_value".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute Value".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setAttributeValue(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ActionPolicyDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- ActionPolicyDict attribute = new ActionPolicyDict();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("attribute_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setAttributeName(rows[j]);
- }
- if("body".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setBody(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("headers".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setHeader(rows[j]);
- }
- if("method".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setMethod(rows[j]);
- }
- if("type".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setType(rows[j]);
- }
- if("url".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setUrl(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("OnapName")){
- for(int i = 1; i< dictSheet.size(); i++){
- OnapName attribute = new OnapName();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("onap_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Onap Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setOnapName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
+ private static CommonClassDao commonClassDao;
+ private static final String DESCRIPTION= "description";
+ private static final String ERROR= "Error";
+ private static final String DEPENDENCY= "dependency";
- if(dictionaryName.startsWith("MSPolicyDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- MicroServiceModels attribute = new MicroServiceModels();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("modelName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Micro Service Model".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setModelName(rows[j]);
- }
- if("version".equalsIgnoreCase(dictSheet.get(0)[j]) || "Model Version".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVersion(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDependency(rows[j]);
- }
- if("attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setAttributes(rows[j]);
- }
- if("enumValues".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setEnumValues(rows[j]);
- }
- if("Ref Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setRef_attributes(rows[j]);
- }
- if("Sub Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSub_attributes(rows[j]);
- }
- if("annotations".equalsIgnoreCase(dictSheet.get(0)[j])) {
- attribute.setAnnotation(rows[j]);
- }
- }
+ @Autowired
+ public DictionaryImportController(CommonClassDao commonClassDao){
+ setCommonClassDao(commonClassDao);
+ }
- commonClassDao.save(attribute);
- }
- }
+ public static void setCommonClassDao(CommonClassDao commonClassDao) {
+ DictionaryImportController.commonClassDao = commonClassDao;
+ }
- if(dictionaryName.startsWith("OptimizationPolicyDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- MicroServiceModels attribute = new MicroServiceModels();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("modelName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Optimization Service Model".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setModelName(rows[j]);
- }
- if("version".equalsIgnoreCase(dictSheet.get(0)[j]) || "Model Version".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVersion(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDependency(rows[j]);
- }
- if("attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setAttributes(rows[j]);
- }
- if("enumValues".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setEnumValues(rows[j]);
- }
- if("Ref Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setRef_attributes(rows[j]);
- }
- if("Sub Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSub_attributes(rows[j]);
- }
- if("annotations".equalsIgnoreCase(dictSheet.get(0)[j])) {
- attribute.setAnnotation(rows[j]);
- }
- }
+ public DictionaryImportController(){
+ super();
+ }
- commonClassDao.save(attribute);
- }
- }
+ @RequestMapping(value={"/dictionary/import_dictionary"}, method={RequestMethod.POST})
+ public void importDictionaryData(HttpServletRequest request, HttpServletResponse response) throws IOException{
+ ObjectMapper mapper = new ObjectMapper();
+ mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
+ String userId = request.getParameter("userId");
+ String dictionaryName = request.getParameter("dictionaryName");
- if(dictionaryName.startsWith("VNFType")){
- for(int i = 1; i< dictSheet.size(); i++){
- VNFType attribute = new VNFType();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("vnf_type".equalsIgnoreCase(dictSheet.get(0)[j]) || "VNF Type".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVnftype(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("VSCLAction")){
- for(int i = 1; i< dictSheet.size(); i++){
- VSCLAction attribute = new VSCLAction();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("vscl_action".equalsIgnoreCase(dictSheet.get(0)[j]) || "VSCL Action".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVsclaction(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ClosedLoopService")){
- for(int i = 1; i< dictSheet.size(); i++){
- ClosedLoopD2Services attribute = new ClosedLoopD2Services();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("serviceName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ClosedLoopSite")){
- for(int i = 1; i< dictSheet.size(); i++){
- ClosedLoopSite attribute = new ClosedLoopSite();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("siteName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Site Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSiteName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("PEPOptions")){
- for(int i = 1; i< dictSheet.size(); i++){
- PEPOptions attribute = new PEPOptions();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("PEP_NAME".equalsIgnoreCase(dictSheet.get(0)[j]) || "PEP Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setPepName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("Actions".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setActions(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("VarbindDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- VarbindDictionary attribute = new VarbindDictionary();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("varbind_Name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVarbindName(rows[j]);
- }
- if("varbind_Description".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind Description".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVarbindDescription(rows[j]);
- }
- if("varbind_oid".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind OID".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setVarbindOID(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("BRMSParamDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- BRMSParamTemplate attribute = new BRMSParamTemplate();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("param_template_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Rule Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setRuleName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("rule".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setRule(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("BRMSControllerDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- BRMSController attribute = new BRMSController();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("controllerName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Controller Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setControllerName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("controller".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setController(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("BRMSDependencyDictionary")){
- for(int i = 1; i< dictSheet.size(); i++){
- BRMSDependency attribute = new BRMSDependency();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("dependencyName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Dependency Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDependencyName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDependency(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("Settings")){
- for(int i = 1; i< dictSheet.size(); i++){
- DecisionSettings attribute = new DecisionSettings();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("xacml_id".equalsIgnoreCase(dictSheet.get(0)[j]) || "Settings ID".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setXacmlId(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("priority".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setPriority(rows[j]);
- }
- if("datatype".equalsIgnoreCase(dictSheet.get(0)[j]) || "Data Type".equalsIgnoreCase(dictSheet.get(0)[j])){
- Datatype dataType = new Datatype();
- if("string".equalsIgnoreCase(rows[j])){
- dataType.setId(26);
- }else if("integer".equalsIgnoreCase(rows[j])){
- dataType.setId(12);
- }else if("double".equalsIgnoreCase(rows[j])){
- dataType.setId(25);
- }else if("boolean".equalsIgnoreCase(rows[j])){
- dataType.setId(18);
- }else if("user".equalsIgnoreCase(rows[j])){
- dataType.setId(29);
- }
- attribute.setDatatypeBean(dataType);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("PrefixList")){
- for(int i = 1; i< dictSheet.size(); i++){
- PrefixList attribute = new PrefixList();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("prefixListName".equalsIgnoreCase(dictSheet.get(0)[j]) || "PrefixList Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setPrefixListName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setPrefixListValue(rows[j]);
- }
- if("prefixListValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "PrefixList Value".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("SecurityZone")){
- for(int i = 1; i< dictSheet.size(); i++){
- SecurityZone attribute = new SecurityZone();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("zoneName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setZoneName(rows[j]);
- }
- if("zoneValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Value".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setZoneValue(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("Zone")){
- for(int i = 1; i< dictSheet.size(); i++){
- Zone attribute = new Zone();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("zoneName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setZoneName(rows[j]);
- }
- if("zoneValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Value".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setZoneValue(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ServiceList")){
- for(int i = 1; i< dictSheet.size(); i++){
- ServiceList attribute = new ServiceList();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("serviceName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceName(rows[j]);
- }
- if("serviceDesc".equalsIgnoreCase(dictSheet.get(0)[j]) || DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceDescription(rows[j]);
- }
- if("serviceType".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Type".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceType(rows[j]);
- }
- if("serviceTrasProtocol".equalsIgnoreCase(dictSheet.get(0)[j]) || "Transport Protocol".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceTransProtocol(rows[j]);
- }
- if("serviceAppProtocol".equalsIgnoreCase(dictSheet.get(0)[j]) || "APP Protocol".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceAppProtocol(rows[j]);
- }
- if("servicePorts".equalsIgnoreCase(dictSheet.get(0)[j]) || "Ports".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServicePorts(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ServiceGroup")){
- for(int i = 1; i< dictSheet.size(); i++){
- GroupServiceList attribute = new GroupServiceList();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Group Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setGroupName(rows[j]);
- }
- if("serviceList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceList(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("AddressGroup")){
- for(int i = 1; i< dictSheet.size(); i++){
- AddressGroup attribute = new AddressGroup();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Group Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setGroupName(rows[j]);
- }
- if("serviceList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Prefix List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setServiceList(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ProtocolList")){
- for(int i = 1; i< dictSheet.size(); i++){
- ProtocolList attribute = new ProtocolList();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("protocolName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Protocol Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setProtocolName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("ActionList")){
- for(int i = 1; i< dictSheet.size(); i++){
- ActionList attribute = new ActionList();
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("actionName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Action Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setActionName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("TermList")){
- for(int i = 1; i< dictSheet.size(); i++){
- TermList attribute = new TermList();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("termName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Term-Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setTermName(rows[j]);
- }
- if("Term-Description".equalsIgnoreCase(dictSheet.get(0)[j]) || "termDescription".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("fromZone".equalsIgnoreCase(dictSheet.get(0)[j]) || "From Zone".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setFromZones(rows[j]);
- }
- if("toZone".equalsIgnoreCase(dictSheet.get(0)[j]) || "To Zone".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setToZones(rows[j]);
- }
- if("srcIPList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Source-IP-List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSrcIPList(rows[j]);
- }
- if("destIPList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Destination-IP-List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDestIPList(rows[j]);
- }
- if("srcPortList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Source-Port-List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSrcPortList(rows[j]);
- }
- if("destPortList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Destination-Port-List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDestPortList(rows[j]);
- }
- if("action".equalsIgnoreCase(dictSheet.get(0)[j]) || "Action List".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setAction(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- if(dictionaryName.startsWith("SearchCriteria")){
- for(int i = 1; i< dictSheet.size(); i++){
- DescriptiveScope attribute = new DescriptiveScope();
- UserInfo userinfo = new UserInfo();
- userinfo.setUserLoginId(userId);
- attribute.setUserCreatedBy(userinfo);
- attribute.setUserModifiedBy(userinfo);
- String[] rows = dictSheet.get(i);
- for (int j=0 ; j<rows.length; j++ ){
- if("descriptiveScopeName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Descriptive Scope Name".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setScopeName(rows[j]);
- }
- if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setDescription(rows[j]);
- }
- if("search".equalsIgnoreCase(dictSheet.get(0)[j]) || "Search Criteria".equalsIgnoreCase(dictSheet.get(0)[j])){
- attribute.setSearch(rows[j]);
- }
- }
- commonClassDao.save(attribute);
- }
- }
- csvReader.close();
- response.setStatus(HttpServletResponse.SC_OK);
- response.getWriter().write("Success");
- }catch(Exception e){
- LOGGER.error("Exception Occured while importing dictionary"+e);
- response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
- response.getWriter().write(ERROR);
- }finally{
- if(file != null && file.exists()){
- boolean deleted = file.delete();
- LOGGER.error("Imported File has been deleted: "+deleted);
- }
- }
- }
-
- public boolean isValidDictionaryName(String dictionaryName){
-
- String nameCheck = dictionaryName.replace(".csv", "");
- try{
- DictionaryNames mode = DictionaryNames.valueOf(nameCheck);
- switch (mode){
- case Attribute:
- case ActionPolicyDictionary:
- case OnapName:
- case MSPolicyDictionary:
- case OptimizationPolicyDictionary:
- case VNFType:
- case VSCLAction:
- case ClosedLoopService:
- case ClosedLoopSite:
- case PEPOptions:
- case VarbindDictionary:
- case BRMSParamDictionary:
- case BRMSControllerDictionary:
- case BRMSDependencyDictionary:
- case Settings:
- case PrefixList:
- case SecurityZone:
- case Zone:
- case ServiceList:
- case ServiceGroup:
- case AddressGroup:
- case ProtocolList:
- case ActionList:
- case TermList:
- case SearchCriteria:
- return true;
- default:
- return false;
- }
- }catch(Exception e){
- LOGGER.error("Dictionary not exits: " +dictionaryName +e);
- return false;
- }
- }
+ if(dictionaryName == null || dictionaryName.isEmpty()){
+ LOGGER.error("dictionaryName is null/empty");
+ response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
+ response.getWriter().write(ERROR);
+ return;
+ }
+
+ // fix Fortify Path Manipulation issue
+ if(!isValidDictionaryName(dictionaryName)){
+ LOGGER.error("dictionaryName is invalid");
+ response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
+ response.getWriter().write(ERROR);
+ return;
+ }
+ File file = new File(dictionaryName);
+ try(OutputStream outputStream = new FileOutputStream(file); FileReader fileReader = new FileReader(file.toString())){
+ IOUtils.copy(request.getInputStream(), outputStream);
+ CSVReader csvReader = new CSVReader(fileReader);
+ List<String[]> dictSheet = csvReader.readAll();
+ if(dictionaryName.startsWith("Attribute")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ Attribute attribute = new Attribute("");
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("xacml_id".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute ID".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setXacmlId(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("priority".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setPriority(rows[j]);
+ }
+ if("datatype".equalsIgnoreCase(dictSheet.get(0)[j]) || "Data Type".equalsIgnoreCase(dictSheet.get(0)[j])){
+ Datatype dataType = new Datatype();
+ if("string".equalsIgnoreCase(rows[j])){
+ dataType.setId(26);
+ }else if("integer".equalsIgnoreCase(rows[j])){
+ dataType.setId(12);
+ }else if("double".equalsIgnoreCase(rows[j])){
+ dataType.setId(25);
+ }else if("boolean".equalsIgnoreCase(rows[j])){
+ dataType.setId(18);
+ }else if("user".equalsIgnoreCase(rows[j])){
+ dataType.setId(29);
+ }
+ attribute.setDatatypeBean(dataType);
+ Category category = new Category();
+ category.setId(5);
+ attribute.setCategoryBean(category);
+ }
+ if("attribute_value".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute Value".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setAttributeValue(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ActionPolicyDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ActionPolicyDict attribute = new ActionPolicyDict();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("attribute_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Attribute Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setAttributeName(rows[j]);
+ }
+ if("body".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setBody(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("headers".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setHeader(rows[j]);
+ }
+ if("method".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setMethod(rows[j]);
+ }
+ if("type".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setType(rows[j]);
+ }
+ if("url".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setUrl(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("OnapName")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ OnapName attribute = new OnapName();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("onap_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Onap Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setOnapName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+
+ if(dictionaryName.startsWith("MSPolicyDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ MicroServiceModels attribute = new MicroServiceModels();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("modelName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Micro Service Model".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setModelName(rows[j]);
+ }
+ if("version".equalsIgnoreCase(dictSheet.get(0)[j]) || "Model Version".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVersion(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDependency(rows[j]);
+ }
+ if("attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setAttributes(rows[j]);
+ }
+ if("enumValues".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setEnumValues(rows[j]);
+ }
+ if("Ref Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setRef_attributes(rows[j]);
+ }
+ if("Sub Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSub_attributes(rows[j]);
+ }
+ if("annotations".equalsIgnoreCase(dictSheet.get(0)[j])) {
+ attribute.setAnnotation(rows[j]);
+ }
+ }
+
+ commonClassDao.save(attribute);
+ }
+ }
+
+ if(dictionaryName.startsWith("OptimizationPolicyDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ MicroServiceModels attribute = new MicroServiceModels();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("modelName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Optimization Service Model".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setModelName(rows[j]);
+ }
+ if("version".equalsIgnoreCase(dictSheet.get(0)[j]) || "Model Version".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVersion(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDependency(rows[j]);
+ }
+ if("attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setAttributes(rows[j]);
+ }
+ if("enumValues".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setEnumValues(rows[j]);
+ }
+ if("Ref Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setRef_attributes(rows[j]);
+ }
+ if("Sub Attributes".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSub_attributes(rows[j]);
+ }
+ if("annotations".equalsIgnoreCase(dictSheet.get(0)[j])) {
+ attribute.setAnnotation(rows[j]);
+ }
+ }
+
+ commonClassDao.save(attribute);
+ }
+ }
+
+ if(dictionaryName.startsWith("VNFType")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ VNFType attribute = new VNFType();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("vnf_type".equalsIgnoreCase(dictSheet.get(0)[j]) || "VNF Type".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVnftype(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("VSCLAction")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ VSCLAction attribute = new VSCLAction();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("vscl_action".equalsIgnoreCase(dictSheet.get(0)[j]) || "VSCL Action".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVsclaction(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ClosedLoopService")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ClosedLoopD2Services attribute = new ClosedLoopD2Services();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("serviceName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ClosedLoopSite")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ClosedLoopSite attribute = new ClosedLoopSite();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("siteName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Site Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSiteName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("PEPOptions")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ PEPOptions attribute = new PEPOptions();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("PEP_NAME".equalsIgnoreCase(dictSheet.get(0)[j]) || "PEP Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setPepName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("Actions".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setActions(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("VarbindDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ VarbindDictionary attribute = new VarbindDictionary();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("varbind_Name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVarbindName(rows[j]);
+ }
+ if("varbind_Description".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind Description".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVarbindDescription(rows[j]);
+ }
+ if("varbind_oid".equalsIgnoreCase(dictSheet.get(0)[j]) || "Varbind OID".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setVarbindOID(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("BRMSParamDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ BRMSParamTemplate attribute = new BRMSParamTemplate();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("param_template_name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Rule Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setRuleName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("rule".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setRule(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("BRMSControllerDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ BRMSController attribute = new BRMSController();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("controllerName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Controller Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setControllerName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("controller".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setController(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("BRMSDependencyDictionary")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ BRMSDependency attribute = new BRMSDependency();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("dependencyName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Dependency Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDependencyName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if(DEPENDENCY.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDependency(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("Settings")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ DecisionSettings attribute = new DecisionSettings();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("xacml_id".equalsIgnoreCase(dictSheet.get(0)[j]) || "Settings ID".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setXacmlId(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("priority".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setPriority(rows[j]);
+ }
+ if("datatype".equalsIgnoreCase(dictSheet.get(0)[j]) || "Data Type".equalsIgnoreCase(dictSheet.get(0)[j])){
+ Datatype dataType = new Datatype();
+ if("string".equalsIgnoreCase(rows[j])){
+ dataType.setId(26);
+ }else if("integer".equalsIgnoreCase(rows[j])){
+ dataType.setId(12);
+ }else if("double".equalsIgnoreCase(rows[j])){
+ dataType.setId(25);
+ }else if("boolean".equalsIgnoreCase(rows[j])){
+ dataType.setId(18);
+ }else if("user".equalsIgnoreCase(rows[j])){
+ dataType.setId(29);
+ }
+ attribute.setDatatypeBean(dataType);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("PrefixList")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ PrefixList attribute = new PrefixList();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("prefixListName".equalsIgnoreCase(dictSheet.get(0)[j]) || "PrefixList Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setPrefixListName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setPrefixListValue(rows[j]);
+ }
+ if("prefixListValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "PrefixList Value".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("SecurityZone")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ SecurityZone attribute = new SecurityZone();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("zoneName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setZoneName(rows[j]);
+ }
+ if("zoneValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Value".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setZoneValue(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("Zone")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ Zone attribute = new Zone();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("zoneName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setZoneName(rows[j]);
+ }
+ if("zoneValue".equalsIgnoreCase(dictSheet.get(0)[j]) || "Zone Value".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setZoneValue(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ServiceList")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ServiceList attribute = new ServiceList();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("serviceName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceName(rows[j]);
+ }
+ if("serviceDesc".equalsIgnoreCase(dictSheet.get(0)[j]) || DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceDescription(rows[j]);
+ }
+ if("serviceType".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service Type".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceType(rows[j]);
+ }
+ if("serviceTrasProtocol".equalsIgnoreCase(dictSheet.get(0)[j]) || "Transport Protocol".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceTransProtocol(rows[j]);
+ }
+ if("serviceAppProtocol".equalsIgnoreCase(dictSheet.get(0)[j]) || "APP Protocol".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceAppProtocol(rows[j]);
+ }
+ if("servicePorts".equalsIgnoreCase(dictSheet.get(0)[j]) || "Ports".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServicePorts(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ServiceGroup")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ GroupServiceList attribute = new GroupServiceList();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Group Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setGroupName(rows[j]);
+ }
+ if("serviceList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Service List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceList(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("AddressGroup")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ AddressGroup attribute = new AddressGroup();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("name".equalsIgnoreCase(dictSheet.get(0)[j]) || "Group Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setGroupName(rows[j]);
+ }
+ if("serviceList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Prefix List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setServiceList(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ProtocolList")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ProtocolList attribute = new ProtocolList();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("protocolName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Protocol Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setProtocolName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("ActionList")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ ActionList attribute = new ActionList();
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("actionName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Action Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setActionName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("TermList")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ TermList attribute = new TermList();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("termName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Term-Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setTermName(rows[j]);
+ }
+ if("Term-Description".equalsIgnoreCase(dictSheet.get(0)[j]) || "termDescription".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("fromZone".equalsIgnoreCase(dictSheet.get(0)[j]) || "From Zone".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setFromZones(rows[j]);
+ }
+ if("toZone".equalsIgnoreCase(dictSheet.get(0)[j]) || "To Zone".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setToZones(rows[j]);
+ }
+ if("srcIPList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Source-IP-List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSrcIPList(rows[j]);
+ }
+ if("destIPList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Destination-IP-List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDestIPList(rows[j]);
+ }
+ if("srcPortList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Source-Port-List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSrcPortList(rows[j]);
+ }
+ if("destPortList".equalsIgnoreCase(dictSheet.get(0)[j]) || "Destination-Port-List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDestPortList(rows[j]);
+ }
+ if("action".equalsIgnoreCase(dictSheet.get(0)[j]) || "Action List".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setAction(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ if(dictionaryName.startsWith("SearchCriteria")){
+ for(int i = 1; i< dictSheet.size(); i++){
+ DescriptiveScope attribute = new DescriptiveScope();
+ UserInfo userinfo = new UserInfo();
+ userinfo.setUserLoginId(userId);
+ attribute.setUserCreatedBy(userinfo);
+ attribute.setUserModifiedBy(userinfo);
+ String[] rows = dictSheet.get(i);
+ for (int j=0 ; j<rows.length; j++ ){
+ if("descriptiveScopeName".equalsIgnoreCase(dictSheet.get(0)[j]) || "Descriptive Scope Name".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setScopeName(rows[j]);
+ }
+ if(DESCRIPTION.equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setDescription(rows[j]);
+ }
+ if("search".equalsIgnoreCase(dictSheet.get(0)[j]) || "Search Criteria".equalsIgnoreCase(dictSheet.get(0)[j])){
+ attribute.setSearch(rows[j]);
+ }
+ }
+ commonClassDao.save(attribute);
+ }
+ }
+ csvReader.close();
+ response.setStatus(HttpServletResponse.SC_OK);
+ response.getWriter().write("Success");
+ }catch(Exception e){
+ LOGGER.error("Exception Occured while importing dictionary"+e);
+ response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+ response.getWriter().write(ERROR);
+ }finally{
+ if(file != null && file.exists()){
+ boolean deleted = file.delete();
+ LOGGER.error("Imported File has been deleted: "+deleted);
+ }
+ }
+ }
+
+ public boolean isValidDictionaryName(String dictionaryName){
+
+ String nameCheck = dictionaryName.replace(".csv", "");
+ try{
+ DictionaryNames mode = DictionaryNames.valueOf(nameCheck);
+ switch (mode){
+ case Attribute:
+ case ActionPolicyDictionary:
+ case OnapName:
+ case MSPolicyDictionary:
+ case OptimizationPolicyDictionary:
+ case VNFType:
+ case VSCLAction:
+ case ClosedLoopService:
+ case ClosedLoopSite:
+ case PEPOptions:
+ case VarbindDictionary:
+ case BRMSParamDictionary:
+ case BRMSControllerDictionary:
+ case BRMSDependencyDictionary:
+ case Settings:
+ case PrefixList:
+ case SecurityZone:
+ case Zone:
+ case ServiceList:
+ case ServiceGroup:
+ case AddressGroup:
+ case ProtocolList:
+ case ActionList:
+ case TermList:
+ case SearchCriteria:
+ return true;
+ default:
+ return false;
+ }
+ }catch(Exception e){
+ LOGGER.error("Dictionary not exits: " +dictionaryName +e);
+ return false;
+ }
+ }
} \ No newline at end of file