diff options
author | Alexey Sandler <alexey.sandler@intl.att.com> | 2020-04-20 12:57:09 +0300 |
---|---|---|
committer | Ittay Stern <ittay.stern@att.com> | 2020-04-22 12:56:28 +0300 |
commit | b9d6126601120aabf2d43e2e951915c0eed370ce (patch) | |
tree | 5a0f98db0c3fa2abb00e0abe9d4963b4ed0e38e9 /vid-app-common/src/main/webapp | |
parent | d7196039157000a9aa600a9d6f28b0aa995df5dc (diff) |
Add drop down Source subscriber name on the PMC instantiation form
Add the "Source Subscriber Name" drop down for the source VNF on the PMC (Port Mirroring Configuration) instantiation form.
Issue-ID: VID-809
Change-Id: Iab01675e815bbc9809c67e31e475613973d868ea
Signed-off-by: Einat Vinouze <einat.vinouze@intl.att.com>
Signed-off-by: Alexey Sandler <alexey.sandler@intl.att.com>
Signed-off-by: Amichai Hemli <amichai.hemli@intl.att.com>
Signed-off-by: Ittay Stern <ittay.stern@att.com>
Diffstat (limited to 'vid-app-common/src/main/webapp')
-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> |