diff options
Diffstat (limited to 'vid-app-common/src/main')
10 files changed, 11 insertions, 277 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/controller/open/RoleGeneratorController.java b/vid-app-common/src/main/java/org/onap/vid/controller/open/RoleGeneratorController.java deleted file mode 100644 index 7b57df2c7..000000000 --- a/vid-app-common/src/main/java/org/onap/vid/controller/open/RoleGeneratorController.java +++ /dev/null @@ -1,48 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved. - * Modifications Copyright 2019 Nokia - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.vid.controller.open; - -import static org.springframework.http.HttpStatus.OK; - -import org.onap.portalsdk.core.controller.UnRestrictedBaseController; -import org.onap.vid.services.RoleGeneratorService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; - -@RestController -public class RoleGeneratorController extends UnRestrictedBaseController { - public static final String GENERATE_ROLE_SCRIPT = "generateRoleScript"; - private RoleGeneratorService roleGeneratorService; - - @Autowired - public RoleGeneratorController(RoleGeneratorService roleGeneratorService) { - this.roleGeneratorService = roleGeneratorService; - } - @RequestMapping(value = GENERATE_ROLE_SCRIPT +"/{firstRun}", method = RequestMethod.GET ) - public ResponseEntity<String> generateRoleScript (@PathVariable("firstRun") boolean firstRun) { - return ResponseEntity.status(OK).body(roleGeneratorService.generateRoleScript(firstRun)); - } -} diff --git a/vid-app-common/src/main/java/org/onap/vid/model/JobAuditStatus.java b/vid-app-common/src/main/java/org/onap/vid/model/JobAuditStatus.java index 645934530..012db5a31 100644 --- a/vid-app-common/src/main/java/org/onap/vid/model/JobAuditStatus.java +++ b/vid-app-common/src/main/java/org/onap/vid/model/JobAuditStatus.java @@ -24,6 +24,7 @@ import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; +import java.util.Locale; import java.util.TimeZone; import java.util.UUID; import javax.persistence.Column; @@ -100,7 +101,7 @@ public class JobAuditStatus extends VidBaseEntity { return null; } - DateFormat format = new SimpleDateFormat(defaultFormat); + DateFormat format = new SimpleDateFormat(defaultFormat, Locale.US); format.setTimeZone(TimeZone.getTimeZone("GMT")); Date date = null ; try { diff --git a/vid-app-common/src/main/java/org/onap/vid/services/RoleGenaratorServiceImpl.java b/vid-app-common/src/main/java/org/onap/vid/services/RoleGenaratorServiceImpl.java deleted file mode 100644 index 815c85d6f..000000000 --- a/vid-app-common/src/main/java/org/onap/vid/services/RoleGenaratorServiceImpl.java +++ /dev/null @@ -1,191 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved. - * Modifications Copyright (C) 2018 - 2019 Nokia. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.vid.services; - -import io.joshworks.restclient.http.HttpResponse; -import jline.internal.Log; -import org.onap.vid.aai.*; -import org.onap.vid.model.ModelConstants; -import org.onap.vid.model.Subscriber; -import org.onap.vid.model.SubscriberList; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.HashMap; - -@Service -public class RoleGenaratorServiceImpl implements RoleGeneratorService { - - public static final String ROLE_ID_COLUMN = "ROLE_ID"; - - @Autowired - AaiClientInterface client; - - @Autowired - AaiOverTLSClientInterface aaiOverTLSClient; - - public static final String DB_NAME = "vid_portal"; - public static final String TBL_NAME = "fn_role"; - public static final String TEMP_DELIMITER ="***"; - public static final String OLD_DELIMITER = "_"; - public static final String CrLf = ";\r\n"; - - @Override - public String generateRoleScript(Boolean firstRun) { - String query = "USE " + DB_NAME + CrLf + - "SET SQL_SAFE_UPDATES = 0;\r\n"; - try { - HttpResponse<SubscriberList> allSubscribers = aaiOverTLSClient.getAllSubscribers(); - if (firstRun) { - query += replaceRolesToTempDelimiter("subscriber",buildSubscribersValuesForMappingsTable(allSubscribers.getBody())); - } - query += addAvailableRolesCombination(firstRun, allSubscribers.getBody()); - - } - catch (Exception e) { - Log.error("There was an error in updating roles ", e); - } - return query; - } - - private String addAvailableRolesCombination(Boolean firstRun, SubscriberList subscribers) { - String query; - String availableRoles=""; - HashMap<String,String> servicesNames = new HashMap<>(); - for (Subscriber subscriber: subscribers.customer) { - AaiResponse<Services> subscriberResponse = client.getSubscriberData(subscriber.globalCustomerId, true); - for(ServiceSubscription service: subscriberResponse.getT().serviceSubscriptions.serviceSubscription) { - servicesNames.put(service.serviceType,""); - String roleName = "'" + subscriber.subscriberName + ModelConstants.ROLE_DELIMITER + service.serviceType + "'"; - availableRoles += "("+roleName+"),"; - - - } - } - availableRoles = availableRoles.substring(0,availableRoles.length()-1); - query = createTemporaryTableAvailableRoles(availableRoles); - if (firstRun){ - query += replaceRolesToTempDelimiter("service",buildServicesValuesForMappingsTable(servicesNames)); - query += replaceToNewDelimiter(); - query += deleteWrongRecords(); - - } - query += insertAvailableRolesToFnRole(); - query += dropTemporaryTable("available_roles"); - return query; - } - - private String buildSubscribersValuesForMappingsTable(SubscriberList subscribers){ - String query=""; - for (Subscriber subscriber : subscribers.customer) { - String subscriberName = subscriber.subscriberName.contains(OLD_DELIMITER) ? subscriber.subscriberName.replace(OLD_DELIMITER, TEMP_DELIMITER) : subscriber.subscriberName; - query = query + "('" + subscriber.globalCustomerId + "','" + subscriberName + "') ,"; - } - if(query.length() > 0) - query = query.substring(0, query.length()-1) + CrLf; - return query; - } - - private String buildServicesValuesForMappingsTable(HashMap<String,String> servicesNames){ - final String[] query = {""}; - servicesNames.forEach((k,v)->{ - if (k.contains(OLD_DELIMITER)) { - query[0] += "('" + k + "' ,'" + k.replace(OLD_DELIMITER, TEMP_DELIMITER) +"'),"; - } - }); - if(query[0].length() > 0) - query[0] = query[0].substring(0, query[0].length()-1) + CrLf; - return query[0]; - } - - private String replaceRolesToTempDelimiter(String entityName, String valuesForMappingsTable ) { - - AaiResponse<Services> services = client.getServices(); - String query = ""; - if (valuesForMappingsTable.length() > 0) { - query = "CREATE TEMPORARY TABLE IF NOT EXISTS " + entityName + "Mappings(mapKey VARCHAR(255),mapValue VARCHAR(255));\r\n" + - "INSERT INTO " + entityName + "Mappings VALUES "; - query += valuesForMappingsTable; - query += "UPDATE " + TBL_NAME + "\r\n" + - "INNER JOIN " + entityName + "Mappings ON role_name LIKE concat('%',mapKey, '%')\r\n" + - "SET ROLE_NAME = REPLACE(ROLE_NAME, mapKey, mapValue) ; \r\n" + - dropTemporaryTable(entityName + "Mappings"); - } - return query; - } - - private String replaceToNewDelimiter(){ - String query = "UPDATE " + TBL_NAME + "\r\n" + - "SET ROLE_NAME = REPLACE(ROLE_NAME, '" + OLD_DELIMITER + "', '" + ModelConstants.ROLE_DELIMITER + "');\r\n" ; - query += "UPDATE fn_role\r\n" + - "SET ROLE_NAME = REPLACE(ROLE_NAME, '" + TEMP_DELIMITER + "', '" + OLD_DELIMITER + "');\r\n" ; - return query; - } - - private String insertAvailableRolesToFnRole(){ - return "INSERT INTO fn_role (ROLE_NAME, ACTIVE_YN, PRIORITY)\r\n" + - "SELECT RNAME, 'Y', 5\r\n" + - "FROM available_roles\r\n" + - "WHERE NOT EXISTS (SELECT ROLE_NAME\r\n" + - "FROM fn_role \r\n" + - "where RNAME = ROLE_NAME);\r\n"; - } - - - - private String createTemporaryTableAvailableRoles(String availableRoles) { - String query = "CREATE TEMPORARY TABLE IF NOT EXISTS available_roles(rname VARCHAR(255));\r\n"; - query += "INSERT INTO available_roles VALUES "+availableRoles+CrLf; - return query; - } - - private String deleteWrongRecords(){ - String query ="CREATE TEMPORARY TABLE IF NOT EXISTS wrong_roles(roleID INT);\r\n" + - "INSERT INTO wrong_roles (roleID)\r\n" + - "SELECT ROLE_ID FROM fn_role LEFT JOIN available_roles ON role_name LIKE concat(rname, '%')\r\n" + - "WHERE available_roles.rname IS NULL AND ROLE_ID NOT IN (1,16);\r\n"; - query += deleteCascade(); - query += dropTemporaryTable("wrong_roles"); - return query; - } - - private String deleteCascade() { - String query = deleteFromTableByRoles("fn_role_composite", "PARENT_ROLE_ID"); - query = query.substring(0, query.length()-1); - query += " OR wrong_roles.ROLEID = fn_role_composite.CHILD_ROLE_ID;\r\n"; - query += deleteFromTableByRoles("fn_role_function", ROLE_ID_COLUMN)+ "\r\n"; - query += deleteFromTableByRoles("fn_user_role", ROLE_ID_COLUMN)+ "\r\n"; - query += deleteFromTableByRoles(TBL_NAME, ROLE_ID_COLUMN)+ "\r\n"; - return query; - } - - private String deleteFromTableByRoles(String table, String column) { - String query = "DELETE FROM " + table + "\r\n"; - query += "using " + table + " inner join wrong_roles\r\n" + - "where wrong_roles.ROLEID = " + table + "." + column + ";"; - return query; - } - - private String dropTemporaryTable(String table) { - return "DROP TEMPORARY TABLE IF EXISTS " + table + CrLf; - } -} diff --git a/vid-app-common/src/main/java/org/onap/vid/services/RoleGeneratorService.java b/vid-app-common/src/main/java/org/onap/vid/services/RoleGeneratorService.java deleted file mode 100644 index ef6fa3ba2..000000000 --- a/vid-app-common/src/main/java/org/onap/vid/services/RoleGeneratorService.java +++ /dev/null @@ -1,25 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.vid.services; - -public interface RoleGeneratorService { - String generateRoleScript(Boolean firstRun); -} diff --git a/vid-app-common/src/main/resources/generateRoleScript.sh b/vid-app-common/src/main/resources/generateRoleScript.sh deleted file mode 100644 index cf73b7412..000000000 --- a/vid-app-common/src/main/resources/generateRoleScript.sh +++ /dev/null @@ -1,3 +0,0 @@ -firstRun=${1-false} -url=http://127.0.0.1:8080/vid/generateRoleScript/$firstRun -wget -O roles.sql $url
\ No newline at end of file diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/controller/deleteResumeDialogController.js b/vid-app-common/src/main/webapp/app/vid/scripts/controller/deleteResumeDialogController.js index d7b7bab33..4c58f2b79 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/controller/deleteResumeDialogController.js +++ b/vid-app-common/src/main/webapp/app/vid/scripts/controller/deleteResumeDialogController.js @@ -69,7 +69,7 @@ var deleteResumeDialogController = function( COMPONENT, FIELD, $scope, $http, $t $scope.userParameterChanged = function(id) { DeleteResumeService.updateUserParameterList(id, $scope.userProvidedControl); - } + }; $scope.confirm = function() { DataService.setE2EService($scope.isE2EService); //VoLTE support @@ -139,13 +139,13 @@ var deleteResumeDialogController = function( COMPONENT, FIELD, $scope, $http, $t } - } + }; $scope.cancel = function() { $scope.isDialogVisible = false; $scope.popup.isVisible = false; runCallback(false); - } + }; var runCallback = function(isSuccessful) { if (angular.isFunction(callbackFunction)) { @@ -153,8 +153,8 @@ var deleteResumeDialogController = function( COMPONENT, FIELD, $scope, $http, $t isSuccessful : isSuccessful }); } - } -} + }; +}; appDS2.controller("deleteResumeDialogController", [ "COMPONENT", "FIELD", "$scope", "$http", "$timeout", "$log", "DataService", "DeleteResumeService","CreationService", "UtilityService", diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeController.js b/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeController.js index 105c48bae..5f05d210d 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeController.js +++ b/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeController.js @@ -22,6 +22,6 @@ var iframeController = function($scope, $location) { $scope.url = "app/ui/#" + $location.$$url; -} +}; app.controller("iframeController", [ "$scope", "$location", iframeController ]); diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeDialogController.js b/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeDialogController.js index e38847060..b4371c4a2 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeDialogController.js +++ b/vid-app-common/src/main/webapp/app/vid/scripts/controller/iframeDialogController.js @@ -48,7 +48,7 @@ var iframeDialogController = function (COMPONENT, FIELD, PARAMETER, $scope, $htt $scope.popup.isVisible = false; // } } - }) + }); } $scope.$apply(); } diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html index 3f4a94ee0..de0ec4026 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html +++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html @@ -24,7 +24,7 @@ <span ng-click="vm.close()" class="pull-right modal-close" aria-hidden="true">×</span> <div ng-if="vm.errorMsg!==''"><font color='red'>{{vm.errorMsg.message}}</font></div> </div> -<form class="form-create" name="newChangeManagement" ng-submit="vm.openModal();vm.close();" novalidate> +<form class="form-create" data-tests-id="newChangeManagementForm" name="newChangeManagement" ng-submit="vm.openModal();vm.close();" novalidate> <div class="modal-body step1" ng-show="vm.wizardStep === 1" > <div class="form-group"> <label class="control-label">Subscriber</label> diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/view-models/change-management.html b/vid-app-common/src/main/webapp/app/vid/scripts/view-models/change-management.html index 1d8b39c80..194df6e4d 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/view-models/change-management.html +++ b/vid-app-common/src/main/webapp/app/vid/scripts/view-models/change-management.html @@ -25,7 +25,7 @@ <div class="header"> <span id="change-management-headline">VNF Changes</span> <span class="separator"></span> - <div class="button-container" ng-click="vm.createNewChange()"> + <div data-tests-id="create-new-change-management" class="button-container" ng-click="vm.createNewChange()"> <div class="icon-svg" id="change-management-new-button"> <svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 55.47337 55.63023"><path class="icon-filling" d="M27.7367.07843A27.73669,27.73669,0,1,0,55.4734,27.81512,27.73757,27.73757,0,0,0,27.7367.07843ZM40.18824,29.6178H29.53938V40.26666a1.80267,1.80267,0,0,1-3.60535,0V29.6178H15.28516a1.80267,1.80267,0,0,1,0-3.60535H25.934V15.36359a1.80267,1.80267,0,0,1,3.60535,0V26.01245H40.18824a1.80267,1.80267,0,1,1,0,3.60535Z"/></svg> </div> |