X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=portal-BE%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportal%2Fservice%2FWidgetService.java;fp=portal-BE%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportal%2Fservice%2FWidgetService.java;h=794f933629d7acf1668686b4ecfe807add46186e;hb=54f658724d2f47ed46ad4e179d030e331991a0fe;hp=491ce4ccf83bc6afc37fbb348d177436d4ae4e6c;hpb=880ba87b59dba2375b42095a85eb781bc8b4b867;p=portal.git diff --git a/portal-BE/src/main/java/org/onap/portal/service/WidgetService.java b/portal-BE/src/main/java/org/onap/portal/service/WidgetService.java index 491ce4cc..794f9336 100644 --- a/portal-BE/src/main/java/org/onap/portal/service/WidgetService.java +++ b/portal-BE/src/main/java/org/onap/portal/service/WidgetService.java @@ -244,4 +244,22 @@ public class WidgetService { .getResultList(); } + @Transactional + public FieldsValidator deleteOnboardingWidget(FnUser user, Long onboardingWidgetId) { + FieldsValidator fieldsValidator = new FieldsValidator(); + synchronized (syncRests) { + FnWidget widget = fnWidgetDao.getOne(onboardingWidgetId); + if (widget != null && widget.getAppId() != null) { // widget exists + if (!this.isUserAdminOfAppForWidget(adminRolesService.isSuperAdmin(user), user.getId(), + widget.getAppId())) { + fieldsValidator.setHttpStatusCode((long) HttpServletResponse.SC_FORBIDDEN); + } else { + fnWidgetDao.deleteById(onboardingWidgetId); + fieldsValidator.setHttpStatusCode( + (long) HttpServletResponse.SC_INTERNAL_SERVER_ERROR); + } + } + } + return fieldsValidator; + } }