1 | package edu.iu.uis.sit.portal.cache.service; |
2 | |
3 | import java.util.ArrayList; |
4 | import java.util.Iterator; |
5 | import java.util.List; |
6 | |
7 | import edu.iu.uis.sit.portal.portlet.publishing.domain.Tab; |
8 | import edu.iu.uis.sit.portal.portlet.publishing.services.PublishingService; |
9 | import edu.iu.uis.sit.portal.user.User; |
10 | |
11 | public class CacheServiceImpl implements CacheService { |
12 | |
13 | private PublishingService publishingService; |
14 | |
15 | public List findUsersTabs(User user) { |
16 | List usersTabs = new ArrayList(); |
17 | // TODO get from cache instead of getting from database. |
18 | for (Iterator iter = getPublishingService().findAllTabs().iterator(); iter.hasNext();) { |
19 | Tab tab = (Tab) iter.next(); |
20 | if (tab.isActive()) { |
21 | // TODO check user's acls vs tabs acls. return all active for now. |
22 | usersTabs.add(tab); |
23 | } |
24 | } |
25 | return usersTabs; |
26 | } |
27 | |
28 | public Tab findTab(User user, Long tabId) { |
29 | // TODO get from cache instead of getting from database. |
30 | // TODO check user's acls vs tabs acls. return if active for now. |
31 | Tab tab = getPublishingService().findTabById(tabId); |
32 | if (tab != null && tab.isActive()) { |
33 | return tab; |
34 | } |
35 | return null; |
36 | } |
37 | |
38 | public PublishingService getPublishingService() { |
39 | return publishingService; |
40 | } |
41 | |
42 | public void setPublishingService(PublishingService publishingService) { |
43 | this.publishingService = publishingService; |
44 | } |
45 | |
46 | } |