EMMA Coverage Report (generated Fri Sep 15 10:32:43 EDT 2006)
[all classes][edu.iu.uis.sit.portal.portlet.personalize.web]

COVERAGE SUMMARY FOR SOURCE FILE [GroupLinksController.java]

nameclass, %method, %block, %line, %
GroupLinksController.java100% (1/1)92%  (11/12)98%  (214/219)98%  (52/53)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class GroupLinksController100% (1/1)92%  (11/12)98%  (214/219)98%  (52/53)
start (RenderRequest, RenderResponse): ModelAndView 0%   (0/1)0%   (0/5)0%   (0/1)
GroupLinksController (): void 100% (1/1)100% (3/3)100% (1/1)
addGroupLink (ActionRequest, ActionResponse): void 100% (1/1)100% (33/33)100% (7/7)
addGroupLink (RenderRequest, RenderResponse): ModelAndView 100% (1/1)100% (5/5)100% (1/1)
getCacheService (): CacheService 100% (1/1)100% (3/3)100% (1/1)
getGroupQuickLinks (User): List 100% (1/1)100% (46/46)100% (11/11)
getPersonalizeService (): PersonalizeService 100% (1/1)100% (3/3)100% (1/1)
removeGroupLink (ActionRequest, ActionResponse): void 100% (1/1)100% (33/33)100% (6/6)
removeGroupLink (RenderRequest, RenderResponse): ModelAndView 100% (1/1)100% (5/5)100% (1/1)
setCacheService (CacheService): void 100% (1/1)100% (4/4)100% (2/2)
setPersonalizeService (PersonalizeService): void 100% (1/1)100% (4/4)100% (2/2)
viewGroupLinks (RenderRequest, RenderResponse): ModelAndView 100% (1/1)100% (75/75)100% (19/19)

1package edu.iu.uis.sit.portal.portlet.personalize.web;
2 
3import java.util.ArrayList;
4import java.util.Collections;
5import java.util.Iterator;
6import java.util.List;
7 
8import javax.portlet.ActionRequest;
9import javax.portlet.ActionResponse;
10import javax.portlet.PortletSession;
11import javax.portlet.RenderRequest;
12import javax.portlet.RenderResponse;
13 
14import org.springframework.web.portlet.ModelAndView;
15 
16import edu.iu.uis.sit.portal.cache.service.CacheService;
17import edu.iu.uis.sit.portal.portlet.personalize.domain.GroupLink;
18import edu.iu.uis.sit.portal.portlet.personalize.services.PersonalizeService;
19import edu.iu.uis.sit.portal.portlet.publishing.domain.Tab;
20import edu.iu.uis.sit.portal.portlet.web.MultiActionController;
21import edu.iu.uis.sit.portal.user.User;
22 
23public class GroupLinksController extends MultiActionController {
24        private PersonalizeService personalizeService;
25 
26        private CacheService cacheService;
27 
28        public void removeGroupLink(ActionRequest request, ActionResponse response) throws Exception {
29                User user = (User) request.getPortletSession().getAttribute(User.USER_KEY, PortletSession.APPLICATION_SCOPE);
30                GroupLink groupLink = getPersonalizeService().findGroupLinkById(Long.parseLong(request.getParameter("groupLinkId")));
31                if (user.getOnestartUser().getPersonId().equals(groupLink.getPersonId())) {
32                        getPersonalizeService().deleteGroupLink(groupLink);
33                }
34                user.setGroupQuickLinks(getGroupQuickLinks(user));
35        }
36 
37        public ModelAndView removeGroupLink(RenderRequest request, RenderResponse response) throws Exception {
38                return viewGroupLinks(request, response);
39        }
40 
41        public void addGroupLink(ActionRequest request, ActionResponse response) throws Exception {
42                User user = (User) request.getPortletSession().getAttribute(User.USER_KEY, PortletSession.APPLICATION_SCOPE);
43                GroupLink groupLink = new GroupLink();
44                groupLink.setTabId(Long.parseLong(request.getParameter("tabId")));
45                groupLink.setPersonId(user.getOnestartUser().getPersonId());
46                getPersonalizeService().saveGroupLink(groupLink);
47                user.setGroupQuickLinks(getGroupQuickLinks(user));
48        }
49 
50        public ModelAndView addGroupLink(RenderRequest request, RenderResponse response) throws Exception {
51                return viewGroupLinks(request, response);
52        }
53 
54        public ModelAndView start(RenderRequest request, RenderResponse response) throws Exception {
55                return viewGroupLinks(request, response);
56        }
57 
58        public ModelAndView viewGroupLinks(RenderRequest request, RenderResponse response) throws Exception {
59                User user = (User) request.getPortletSession().getAttribute(User.USER_KEY, PortletSession.APPLICATION_SCOPE);
60 
61                List groupLinks = getGroupQuickLinks(user);
62                List tabs = new ArrayList();
63 
64                for (Iterator iter = getCacheService().findUsersTabs(user).iterator(); iter.hasNext();) {
65                        Tab tab = (Tab) iter.next();
66                        boolean found = false;
67                        for (Iterator iterator = groupLinks.iterator(); iterator.hasNext();) {
68                                WebGroup webGroup = (WebGroup) iterator.next();
69                                if (tab.getTabId().equals(webGroup.getGroupLink().getTabId())) {
70                                        found = true;
71                                        break;
72                                }
73                        }
74                        if (!found) {
75                                tabs.add(tab);
76                        }
77                }
78                ModelAndView modelAndView = new ModelAndView("displayGroupLinks");
79                modelAndView.addObject("groupLinks", groupLinks);
80                modelAndView.addObject("usersTabs", tabs);
81 
82                return modelAndView;
83        }
84 
85        private List getGroupQuickLinks(User user) {
86                List groupLinks = new ArrayList();
87                for (Iterator iter = getPersonalizeService().findUsersGroupLinks(user.getOnestartUser().getPersonId()).iterator(); iter.hasNext();) {
88                        GroupLink groupLink = (GroupLink) iter.next();
89                        WebGroup webGroup = new WebGroup(groupLink);
90                        Tab tab = getCacheService().findTab(user, groupLink.getTabId());
91                        if (tab != null) {
92                                webGroup.setGroupLinkName(tab.getName());
93                                groupLinks.add(webGroup);
94                        }
95                }
96                Collections.sort(groupLinks);
97                return groupLinks;
98        }
99 
100        public PersonalizeService getPersonalizeService() {
101                return personalizeService;
102        }
103 
104        public void setPersonalizeService(PersonalizeService personalizeService) {
105                this.personalizeService = personalizeService;
106        }
107 
108        public CacheService getCacheService() {
109                return cacheService;
110        }
111 
112        public void setCacheService(CacheService cacheService) {
113                this.cacheService = cacheService;
114        }
115}

[all classes][edu.iu.uis.sit.portal.portlet.personalize.web]
EMMA 2.0.5312 (C) Vladimir Roubtsov