diff options
Diffstat (limited to 'vid-app-common/src')
-rw-r--r-- | vid-app-common/src/main/webapp/app/vid/scripts/controller/ServiceProxyConfigController.js | 52 | ||||
-rw-r--r-- | vid-app-common/src/main/webapp/app/vid/scripts/view-models/serviceProxyConfig.htm | 12 |
2 files changed, 54 insertions, 10 deletions
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/controller/ServiceProxyConfigController.js b/vid-app-common/src/main/webapp/app/vid/scripts/controller/ServiceProxyConfigController.js index 8e3b5b890..c85187e98 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/controller/ServiceProxyConfigController.js +++ b/vid-app-common/src/main/webapp/app/vid/scripts/controller/ServiceProxyConfigController.js @@ -60,25 +60,58 @@ appDS2.controller( $scope.serviceTypes = []; - function init() { - loadServiceTypes(); + $scope.isSourceSubscriberEnabled = function() { + return featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_2006_PORT_MIRRORING_LET_SELECTING_SOURCE_SUBSCRIBER) + && !$scope.configurationByPolicy; + }; + function init() { + if ($scope.isSourceSubscriberEnabled()) { + loadSourceSubscriber(); + } + loadServiceTypes(DataService.getGlobalCustomerId(), handleGetSourceAndCollectorServiceTypesResponse); generateMetadata(sourceServiceProxy); generateMetadata(collectorServiceProxy); } + function loadSourceSubscriber() { + AaiService.getSubList(function (response) { + $scope.sourceSubscribers = response; + $scope.sourceSubscriber = response.find((subscriber)=>{ + return subscriber.globalCustomerId === DataService.getGlobalCustomerId(); + }); + }, function (response) { // failure + $scope.sourceSubscribers = []; + }); + } + + function getSourceSubscriberId() { + return $scope.isSourceSubscriberEnabled() + ? $scope.sourceSubscriber && $scope.sourceSubscriber.globalCustomerId + : DataService.getGlobalCustomerId() + } + function setDefaultCollectorServiceType() { const configServiceType = DataService.getServiceType(); $scope.collectorServiceType = mustFind($scope.serviceTypes, {"service-type": configServiceType}); loadCollectorProxies(); } - function handleGetServiceTypesResponse(response) { + function handleGetSourceAndCollectorServiceTypesResponse(response) { + handleGetSourceServiceTypesResponse(response) + handleGetCollectorServiceTypesResponse(response) + } + + function handleGetCollectorServiceTypesResponse(response) { $scope.serviceTypes = response.data; setDefaultCollectorServiceType(); } + function handleGetSourceServiceTypesResponse(response) { + $scope.sourceServiceTypes = response.data; + } + var handleGetParametersResponse = function(parameters) { $scope.serviceMetadataFields = parameters.summaryList; $scope.nodeTemplateFields = DataService.getPortMirroningConfigFields(); @@ -97,11 +130,14 @@ appDS2.controller( $window.history.back(); }; + $scope.onSourceSubscriberChange = function(selectedSubscriber) { + $scope.sourceSubscriber = selectedSubscriber + loadServiceTypes(selectedSubscriber.globalCustomerId, handleGetSourceServiceTypesResponse) + } - function loadServiceTypes() { - const subscriberId = DataService.getGlobalCustomerId(); + function loadServiceTypes(subscriberId, handleGetServiceTypesResponseCallback) { AaiService.getSubscriberServiceTypes(subscriberId) - .then(handleGetServiceTypesResponse) + .then(handleGetServiceTypesResponseCallback) .catch(function (error) { $log.error(error); }); @@ -288,7 +324,7 @@ appDS2.controller( if (service.name === 'collectorInstanceName' && $scope.configurationByPolicy) { var configurationModel = DataService.getModelInfo(COMPONENT.VNF); AaiService.getPnfInstancesList( - DataService.getGlobalCustomerId(), + getSourceSubscriberId(), serviceType, serviceProxy.sourceModelUuid, serviceProxy.sourceModelInvariant, @@ -307,7 +343,7 @@ appDS2.controller( }); } else { AaiService.getVnfInstancesList( - DataService.getGlobalCustomerId(), + getSourceSubscriberId(), serviceType, serviceProxy.sourceModelUuid, serviceProxy.sourceModelInvariant, diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/view-models/serviceProxyConfig.htm b/vid-app-common/src/main/webapp/app/vid/scripts/view-models/serviceProxyConfig.htm index 42732bb82..99d830573 100644 --- a/vid-app-common/src/main/webapp/app/vid/scripts/view-models/serviceProxyConfig.htm +++ b/vid-app-common/src/main/webapp/app/vid/scripts/view-models/serviceProxyConfig.htm @@ -64,10 +64,18 @@ limitations under the License. </div> <form name="proxiesInstanceName" class="bottom"> <div class="wrapper-list source-vnf"> - <div class="title-txt"><b>Source</b> Service Type</div> + <div class="title-txt" ng-if="isSourceSubscriberEnabled()"><b>Source</b> Subscriber name </div> + <select ng-model="sourceSubscriber" + ng-change="onSourceSubscriberChange(sourceSubscriber)" name="sourceSubscriber" id="sourceSubscriber" + ng-options="item['subscriberName'] disable when !(item['isPermitted']) for item in sourceSubscribers" + ng-if="isSourceSubscriberEnabled()" + required data-tests-id="sourceSubscriberName"> + </select> + + <div class="title-txt" ng-class="{'select-vnf-title': isSourceSubscriberEnabled()}"><b>Source</b> Service Type</div> <select ng-model="sourceServiceType" ng-change="onSourceServiceTypeSelected()" name="sourceServiceType" id="sourceServiceType" - ng-options="item['service-type'] disable when !(item['is-permitted']) for item in serviceTypes" + ng-options="item['service-type'] disable when !(item['is-permitted']) for item in sourceServiceTypes" required data-tests-id="sourceServiceType"> <option value="" disabled>Select service type</option> </select> |