[PORTAL-16 PORTAL-18] Widget ms; staging
[portal.git] / ecomp-portal-BE-common / src / main / java / org / openecomp / portalapp / portal / service / AdminRolesService.java
1 /*-
2  * ================================================================================
3  * ECOMP Portal
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ================================================================================
19  */
20 package org.openecomp.portalapp.portal.service;
21
22 import java.util.List;
23
24 import org.openecomp.portalapp.portal.domain.EPRole;
25 import org.openecomp.portalapp.portal.domain.EPUser;
26 import org.openecomp.portalapp.portal.transport.AppsListWithAdminRole;
27
28 public interface AdminRolesService {
29
30         public AppsListWithAdminRole getAppsWithAdminRoleStateForUser(String orgUserId);
31
32         public boolean setAppsWithAdminRoleStateForUser(AppsListWithAdminRole newAppsListWithAdminRoles);
33
34         /**
35          * Attention! User roles in ECOMP PORTAL cannot be managed by this function.
36          * @param user
37          * @return 'true' if user has Super Administrator role SYS_ADMIN_ROLE_ID (1 for now) in ECOMP PORTAL, 'false' otherwise
38          */
39         public boolean isSuperAdmin(EPUser user);
40         
41         /**
42          * Attention! User roles in ECOMP PORTAL cannot be managed by this function.
43          * @param user
44          * @return 'true' if user has Account Administrator role ACCOUNT_ADMIN_ROLE_ID (999 for now) for any application except ECOMP Portal, 'false' otherwise
45          */
46         public boolean isAccountAdmin(EPUser user);
47
48         /**
49          * Attention! User roles in ECOMP PORTAL cannot be managed by this function.
50          * @param user
51          * @return 'true' if user has any remote(!) role within any application (ECOMP Portal roles are not included), 'false' otherwise
52          */
53         public boolean isUser(EPUser user);
54
55         List<EPRole> getRolesByApp(EPUser user, Long appId);
56 }