1
22
23 package com.liferay.portlet.calendar.service.impl;
24
25 import com.liferay.portal.kernel.cache.MultiVMPoolUtil;
26 import com.liferay.portal.kernel.cache.PortalCache;
27 import com.liferay.portal.kernel.util.StringMaker;
28 import com.liferay.portal.kernel.util.StringPool;
29 import com.liferay.portlet.calendar.model.CalEvent;
30
31 import java.util.List;
32 import java.util.Map;
33 import java.util.concurrent.ConcurrentHashMap;
34
35
42 public class CalEventLocalUtil {
43
44 public static final String CACHE_NAME = CalEventLocalUtil.class.getName();
45
46 protected static void clearEventsPool(long groupId) {
47 String key = _encodeKey(groupId);
48
49 _cache.remove(key);
50 }
51
52 protected static Map<String, List<CalEvent>> getEventsPool(long groupId) {
53 String key = _encodeKey(groupId);
54
55 Map <String, List<CalEvent>> eventsPool =
56 (Map<String, List<CalEvent>>)MultiVMPoolUtil.get(_cache, key);
57
58 if (eventsPool == null) {
59 eventsPool = new ConcurrentHashMap<String, List<CalEvent>>();
60
61 MultiVMPoolUtil.put(_cache, key, eventsPool);
62 }
63
64 return eventsPool;
65 }
66
67 private static String _encodeKey(long groupId) {
68 StringMaker sm = new StringMaker();
69
70 sm.append(CACHE_NAME);
71 sm.append(StringPool.POUND);
72 sm.append(groupId);
73
74 return sm.toString();
75 }
76
77 private static PortalCache _cache = MultiVMPoolUtil.getCache(CACHE_NAME);
78
79 }