-/*-\r
- * ================================================================================\r
- * ECOMP Portal\r
- * ================================================================================\r
- * Copyright (C) 2017 AT&T Intellectual Property\r
- * ================================================================================\r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- * \r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ================================================================================\r
- */\r
-package org.openecomp.portalapp.portal.service;\r
-\r
-import java.util.List;\r
-\r
-import org.apache.cxf.transport.http.HTTPException;\r
-import org.openecomp.portalapp.externalsystemapproval.model.ExternalSystemUser;\r
-import org.openecomp.portalapp.portal.domain.EPRole;\r
-import org.openecomp.portalapp.portal.domain.EPUser;\r
-import org.openecomp.portalapp.portal.domain.EPUserApp;\r
-import org.openecomp.portalapp.portal.domain.EPUserAppCatalogRoles;\r
-import org.openecomp.portalapp.portal.domain.ExternalSystemAccess;\r
-import org.openecomp.portalapp.portal.transport.AppWithRolesForUser;\r
-import org.openecomp.portalapp.portal.transport.FieldsValidator;\r
-import org.openecomp.portalapp.portal.transport.RoleInAppForUser;\r
-import org.openecomp.portalapp.portal.transport.UserApplicationRoles;\r
-\r
-public interface UserRolesService {\r
-\r
- public List<RoleInAppForUser> getAppRolesForUser(Long appId, String userId);\r
-\r
- public boolean setAppWithUserRoleStateForUser(EPUser user, AppWithRolesForUser newAppRolesForUser);\r
-\r
- public List<UserApplicationRoles> getUsersFromAppEndpoint(Long appId) throws HTTPException;\r
-\r
- public List<EPRole> importRolesFromRemoteApplication(Long appId) throws HTTPException;\r
- \r
- /**\r
- * Gets entries from the local fn_user_role table for the specified user and\r
- * app.\r
- * \r
- * @param appId\r
- * ID of row in fn_app\r
- * @param userid\r
- * ID of row in fn_user\r
- * @return List of EPRole; empty if none found.\r
- */\r
- public List<EPUserApp> getCachedAppRolesForUser(Long appId, Long userId);\r
- \r
- public FieldsValidator putUserAppRolesRequest(AppWithRolesForUser userAppRolesData, EPUser user);\r
-\r
- String setAppWithUserRoleStateForUser(ExternalSystemUser newAppRolesForUser);\r
-\r
- public List<EPUserAppCatalogRoles> getUserAppCatalogRoles(EPUser user, String appName);\r
- \r
- public String updateRemoteUserProfile(String orgUserId, Long appId);\r
- \r
- public ExternalSystemAccess getExternalRequestAccess();\r
-}\r
+/*-
+ * ================================================================================
+ * ECOMP Portal
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ================================================================================
+ */
+
+package org.openecomp.portalapp.portal.service;
+
+import java.util.List;
+
+import org.apache.cxf.transport.http.HTTPException;
+import org.openecomp.portalapp.externalsystemapproval.model.ExternalSystemUser;
+import org.openecomp.portalapp.portal.domain.EPRole;
+import org.openecomp.portalapp.portal.domain.EPUser;
+import org.openecomp.portalapp.portal.domain.EPUserApp;
+import org.openecomp.portalapp.portal.domain.EPUserAppCatalogRoles;
+import org.openecomp.portalapp.portal.domain.ExternalSystemAccess;
+import org.openecomp.portalapp.portal.transport.AppWithRolesForUser;
+import org.openecomp.portalapp.portal.transport.ExternalRequestFieldsValidator;
+import org.openecomp.portalapp.portal.transport.FieldsValidator;
+import org.openecomp.portalapp.portal.transport.RoleInAppForUser;
+import org.openecomp.portalapp.portal.transport.UserApplicationRoles;
+
+public interface UserRolesService {
+
+ /**
+ * Returns list of app roles of a single app
+ *
+ * @param appId
+ * ID of row in fn_app
+ * @param userId
+ * ID of row in fn_user
+ * @param extRequestValue
+ * set to false if request is from users page otherwise true
+ * @return List<RoleInAppForUser>
+ */
+ public List<RoleInAppForUser> getAppRolesForUser(Long appId, String userId, Boolean extRequestValue);
+
+ public boolean setAppWithUserRoleStateForUser(EPUser user, AppWithRolesForUser newAppRolesForUser);
+
+ public List<UserApplicationRoles> getUsersFromAppEndpoint(Long appId) throws HTTPException;
+
+ public List<EPRole> importRolesFromRemoteApplication(Long appId) throws HTTPException;
+
+ /**
+ * Gets entries from the local fn_user_role table for the specified user and
+ * app.
+ *
+ * @param appId
+ * ID of row in fn_app
+ * @param userId
+ * ID of row in fn_user
+ * @return List of EPRole; empty if none found.
+ */
+ public List<EPUserApp> getCachedAppRolesForUser(Long appId, Long userId);
+
+ public FieldsValidator putUserAppRolesRequest(AppWithRolesForUser userAppRolesData, EPUser user);
+
+ /**
+ * Save user app roles in the database from the external request
+ *
+ * @param newAppRolesForUser
+ *
+ * contains login id, app name, request id, and list of role
+ * names
+ * @param reqType
+ * @return if any exceptions, returns detail message and true or false
+ */
+ ExternalRequestFieldsValidator setExternalRequestUserAppRole(ExternalSystemUser newAppRolesForUser, String reqType);
+
+ public List<EPUserAppCatalogRoles> getUserAppCatalogRoles(EPUser user, String appName);
+
+ public String updateRemoteUserProfile(String orgUserId, Long appId);
+
+ public ExternalSystemAccess getExternalRequestAccess();
+
+}