Package sk.iway.iwcm
Class Cache
java.lang.Object
sk.iway.iwcm.Cache
Cache.java - cache pre casto pouzivane objekty, ktorych generovanie je pomale
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Nazov, pod ktorym sa tento objekt nachadza v ServletContexte -
Method Summary
Modifier and TypeMethodDescriptionvoid
clearAll()
Vymaze celu cachedownloadUrl
(String url, int cacheInMinutes) Stiahne url a ulozi ho do cache na cacheInMinutes minut.Vrati zoznam vsetkych objektov v cacheVrati zoznam vsetkych klucov z cachestatic Cache
Vrati instanciu Cachestatic Cache
getInstance
(boolean forceRefresh) Vrati instanciu chacheZiska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)<R> R
vrati objekt uz pretypovany (nemam rad ked musim po vrateni objekt pretypovavat :) )getObjectExpiryTime
(String name) Ziska timestamp exspiracie objektu z cache, vrati null, ak sa objekt v cache nenachadza (alebo cas exspiroval)int
getSize()
Vrati pocet poloziek v cachegetUserObject
(UserDetails user, String name) Ziska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)<R> R
getUserObject
(UserDetails user, String name, Class<R> type) vrati objekt uz pretypovany (nemam rad ked musim po vrateni objekt pretypovavat :) )void
onDocChange
(DocDetails doc) void
removeObject
(String name) void
removeObject
(String name, boolean refreshCluster) Odstrani zadany objekt z cahce.void
Vymaze z cache objekty zacinajuce na dane menovoid
removeObjectStartsWithName
(String name, boolean refreshCluster) Vymaze z cache objekty zacinajuce na dane meno.void
Odstrani z cache vsetky objekty zadaneho pouzivatelavoid
Vlozi objekt do cachevoid
setObjectByExpiry
(String name, Object object, long expiryTime, boolean allowSmartRefresh) Vlozi objekt do cache s nastavenym casom exspiracievoid
setObjectExpiryTime
(String name, long expiryTime) Nastavi uz existujucemu objektu v cache novy cas exspiracievoid
setObjectSeconds
(String name, Object object, int cacheInSeconds) Vlozi objekt do cache, pouzije SMART Refreshvoid
setObjectSeconds
(String name, Object object, int cacheInSeconds, boolean allowSmartRefresh) Vlozi objekt do cachevoid
setUserObject
(UserDetails user, String name, Object object, int cacheInMinutes) Vlozi objekt do cache pre daneho pouzivatelastatic void
subscribe
(CacheListener theListener) Subscribes to the new events in Cachestatic void
unsubscribe
(CacheListener theListener) No longer willing to hear about new events in Cache
-
Field Details
-
CONTEXT_NAME
Nazov, pod ktorym sa tento objekt nachadza v ServletContexte- See Also:
-
-
Method Details
-
subscribe
Subscribes to the new events in Cache- Parameters:
theListener
-
-
unsubscribe
No longer willing to hear about new events in Cache- Parameters:
theListener
-
-
getInstance
Vrati instanciu Cache- Returns:
-
getInstance
Vrati instanciu chache- Parameters:
forceRefresh
- - ak je true, vytvori sa nanovo (zabudne stare objekty)- Returns:
-
clearAll
public void clearAll()Vymaze celu cache -
getSize
public int getSize()Vrati pocet poloziek v cache- Returns:
-
getObject
Ziska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)- Parameters:
name
- - symbolicke meno objektu v cache- Returns:
-
getObject
vrati objekt uz pretypovany (nemam rad ked musim po vrateni objekt pretypovavat :) )- Parameters:
name
-type
-- Returns:
-
getAllKeys
Vrati zoznam vsetkych klucov z cache- Returns:
-
getAllElements
Vrati zoznam vsetkych objektov v cache- Returns:
-
setObject
Vlozi objekt do cache- Parameters:
name
- - symbolicke meno objektu v cacheobject
- - objekt, ktory sa ma vlozitcacheInMinutes
- - pocet minut, pocas ktorych sa objekt bude v cache nachadzat
-
setObjectSeconds
Vlozi objekt do cache, pouzije SMART Refresh- Parameters:
name
- - symbolicke meno objektu v cacheobject
- - objekt, ktory sa ma vlozitcacheInSeconds
- - pocet sekund, pocas ktorych sa objekt uchova
-
setObjectSeconds
public void setObjectSeconds(String name, Object object, int cacheInSeconds, boolean allowSmartRefresh) Vlozi objekt do cache- Parameters:
name
- - symbolicke meno objektu v cacheobject
- - objekt, ktory sa ma vlozitcacheInSeconds
- - pocet sekund, pocas ktorych sa objekt uchovaallowSmartRefresh
- - ak je nastavene na true, tak tesne pred vyprsanim objektu zo session je vratene null, aby dany thread mohol objekt znova naplnit (SmartCahce)
-
setObjectByExpiry
public void setObjectByExpiry(String name, Object object, long expiryTime, boolean allowSmartRefresh) Vlozi objekt do cache s nastavenym casom exspiracie- Parameters:
name
-object
-expiryTime
-allowSmartRefresh
-
-
setObjectExpiryTime
Nastavi uz existujucemu objektu v cache novy cas exspiracie- Parameters:
name
-expiryTime
-
-
removeObject
-
removeObject
Odstrani zadany objekt z cahce. Ak je refreshCluster true odstani sa aj z ostatnych nodov clustra- Parameters:
name
-refreshCluster
-
-
removeObjectStartsWithName
Vymaze z cache objekty zacinajuce na dane meno- Parameters:
name
-
-
removeObjectStartsWithName
Vymaze z cache objekty zacinajuce na dane meno. Ak je refreshCluster true odstani sa aj z ostatnych nodov clustra- Parameters:
name
-refreshCluster
-
-
downloadUrl
Stiahne url a ulozi ho do cache na cacheInMinutes minut. Podporuje iba GET- Parameters:
url
- - url adresa stranky (sluzi aj ako kluc do cache)cacheInMinutes
- - pocet minut, pocas ktorych sa bude drzat v cache- Returns:
-
onDocChange
-
getObjectExpiryTime
Ziska timestamp exspiracie objektu z cache, vrati null, ak sa objekt v cache nenachadza (alebo cas exspiroval)- Parameters:
name
- - symbolicke meno objektu v cache- Returns:
-
setUserObject
Vlozi objekt do cache pre daneho pouzivatela- Parameters:
user
- - prihlaseny pouzivatelname
- - symbolicke meno objektu v cacheobject
- - objekt, ktory sa ma vlozitcacheInMinutes
- - pocet minut, pocas ktorych sa objekt bude v cache nachadzat
-
getUserObject
vrati objekt uz pretypovany (nemam rad ked musim po vrateni objekt pretypovavat :) )- Parameters:
user
- - prihlaseny pouzivatelname
-type
-- Returns:
-
getUserObject
Ziska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)- Parameters:
user
- - prihlaseny pouzivatelname
- - symbolicke meno objektu v cache- Returns:
-
removeUserAllUserObjects
Odstrani z cache vsetky objekty zadaneho pouzivatela- Parameters:
user
-
-