summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSunder Tattavarada <statta@att.com>2020-11-25 15:13:52 +0000
committerGerrit Code Review <gerrit@onap.org>2020-11-25 15:13:52 +0000
commita49678cb3d2c7ef2b3e5fecc7f52b85df46e8268 (patch)
treea6b723e7a08e51e3bf9fdfb353a42c810e036c08
parent722e28620ecce86274bbd46cca9d315595767702 (diff)
parentb88200ce0d30b5ad0433c70555f5b8ddcab98d3b (diff)
Merge "Microservice Onboarding Issue resolved"
-rw-r--r--ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/controller/MicroserviceController.java8
-rw-r--r--portal-FE-common/src/app/pages/microservice-onboarding/microservice-add-details/microservice-add-details.component.ts19
2 files changed, 18 insertions, 9 deletions
diff --git a/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/controller/MicroserviceController.java b/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/controller/MicroserviceController.java
index a80a3b42..2c04ce83 100644
--- a/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/controller/MicroserviceController.java
+++ b/ecomp-portal-BE-common/src/main/java/org/onap/portalapp/portal/controller/MicroserviceController.java
@@ -51,6 +51,7 @@ import org.onap.portalapp.portal.domain.WidgetCatalog;
import org.onap.portalapp.portal.domain.WidgetServiceHeaders;
import org.onap.portalapp.portal.ecomp.model.PortalRestResponse;
import org.onap.portalapp.portal.ecomp.model.PortalRestStatusEnum;
+import org.onap.portalapp.portal.exceptions.DuplicateRecordException;
import org.onap.portalapp.portal.logging.aop.EPAuditLog;
import org.onap.portalapp.portal.service.WidgetMService;
import org.onap.portalapp.portal.service.MicroserviceService;
@@ -101,9 +102,12 @@ public class MicroserviceController extends EPRestrictedBaseController {
"ERROR", "MicroserviceData is not valid");
}
}
- long serviceId = microserviceService.saveMicroservice(newServiceData);
-
try {
+ List<MicroserviceData> microServiceData = microserviceService.getMicroserviceData();
+ for(MicroserviceData exitMicroservice: microServiceData)
+ if(exitMicroservice.getName().equalsIgnoreCase(newServiceData.getName()))
+ throw new DuplicateRecordException("Microservice already exists: " + exitMicroservice.getName());
+ long serviceId = microserviceService.saveMicroservice(newServiceData);
microserviceService.saveServiceParameters(serviceId, newServiceData.getParameterList());
} catch (Exception e) {
return new PortalRestResponse<>(PortalRestStatusEnum.ERROR, "FAILURE", e.getMessage());
diff --git a/portal-FE-common/src/app/pages/microservice-onboarding/microservice-add-details/microservice-add-details.component.ts b/portal-FE-common/src/app/pages/microservice-onboarding/microservice-add-details/microservice-add-details.component.ts
index 5e359dd4..510fe12e 100644
--- a/portal-FE-common/src/app/pages/microservice-onboarding/microservice-add-details/microservice-add-details.component.ts
+++ b/portal-FE-common/src/app/pages/microservice-onboarding/microservice-add-details/microservice-add-details.component.ts
@@ -39,6 +39,7 @@ import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
import { IMircroservies } from 'src/app/shared/model/microservice-onboarding/microservices';
import { MicroserviceService, WidgetOnboardingService } from '../../../shared/services/index';
import { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';
+import { ConfirmationModalComponent } from 'src/app/modals/confirmation-modal/confirmation-modal.component';
@Component({
selector: 'app-microservice-add-details',
@@ -291,13 +292,17 @@ export class MicroserviceAddDetailsComponent implements OnInit {
this.microservice.createService(newService)
.subscribe( data => {
this.result = data;
- console.log("add microservice response :: ",this.result);
- this.passEntry.emit(this.result);
- this.ngbModal.dismissAll();
- }, error => {
- this.ngbModal.dismissAll();
- console.log(error);
- });
+ if(this.result.status === 'OK'){
+ console.log("add microservice response :: ",this.result);
+ this.passEntry.emit(this.result);
+ this.ngbModal.dismissAll();
+ }
+ else {
+ const modalErrorRef = this.ngbModal.open(ConfirmationModalComponent);
+ modalErrorRef.componentInstance.title = 'Error';
+ modalErrorRef.componentInstance.message = this.result.response;
+ }
+ });
}
}
}