summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-BE-common/src/main/java/org/openecomp/portalapp/portal/service/EPRoleFunctionServiceCentralizedImpl.java
blob: d41100ffd388735f122e59d197d4ca2c40e1cd47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package org.openecomp.portalapp.portal.service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.hibernate.SessionFactory;
import org.openecomp.portalapp.portal.domain.CentralRoleFunction;
import org.openecomp.portalapp.portal.domain.EPUser;
import org.openecomp.portalsdk.core.domain.RoleFunction;
import org.openecomp.portalsdk.core.service.DataAccessService;
import org.openecomp.portalsdk.core.util.SystemProperties;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;


@Transactional
public class EPRoleFunctionServiceCentralizedImpl implements EPRoleFunctionService{

	
	@Autowired
	private DataAccessService dataAccessService;
	
	@Autowired
	private  SessionFactory sessionFactory;
	
	@SuppressWarnings({ "unchecked"})
	@Override
	public List<RoleFunction> getRoleFunctions() {
		List<CentralRoleFunction> getRoleFuncList = null;
		List<RoleFunction> getRoleFuncListOfPortal = new ArrayList<>();
		final Map<String, Long> params = new HashMap<>();
		params.put("appId", (long) 1);
		//Sync all functions from external system into Ecomp portal DB
		getRoleFuncList = dataAccessService.executeNamedQuery("getAllRoleFunctions", params, null);
		for(CentralRoleFunction roleFunction : getRoleFuncList)
		{
			RoleFunction roleFun = new RoleFunction();
			roleFun.setCode(roleFunction.getCode());
			roleFun.setName(roleFunction.getName());
			getRoleFuncListOfPortal.add(roleFun);
		}
		return getRoleFuncListOfPortal;
	}

	@SuppressWarnings("unchecked")
	@Override
	public Set getRoleFunctions(HttpServletRequest request, EPUser user) {
		HttpSession session = request.getSession();
		String userId = user.getId().toString();
		final Map<String, String> params = new HashMap<>();
		params.put("userId", userId);
		@SuppressWarnings("unchecked")
		List getRoleFuncListOfPortal =   dataAccessService.executeNamedQuery("getRoleFunctionsOfUser", params, null);
		Set<String> getRoleFuncListOfPortalSet = new HashSet<>(getRoleFuncListOfPortal);	
		session.setAttribute(SystemProperties.getProperty(SystemProperties.ROLE_FUNCTIONS_ATTRIBUTE_NAME),
				getRoleFuncListOfPortalSet);
		return getRoleFuncListOfPortalSet;
				
	}

	
	
}