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 StringNazov, pod ktorym sa tento objekt nachadza v ServletContexte -
Method Summary
Modifier and TypeMethodDescriptionvoidclearAll()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 CacheVrati instanciu Cachestatic CachegetInstance(boolean forceRefresh) Vrati instanciu chacheZiska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)<R> Rvrati 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)intgetSize()Vrati pocet poloziek v cachegetUserObject(UserDetails user, String name) Ziska objekt z cache, vrati null, ak sa v cache nenachadza (alebo cas exspiroval)<R> RgetUserObject(UserDetails user, String name, Class<R> type) vrati objekt uz pretypovany (nemam rad ked musim po vrateni objekt pretypovavat :) )voidonDocChange(DocDetails doc) voidremoveObject(String name) voidremoveObject(String name, boolean refreshCluster) Odstrani zadany objekt z cahce.voidVymaze z cache objekty zacinajuce na dane menovoidremoveObjectStartsWithName(String name, boolean refreshCluster) Vymaze z cache objekty zacinajuce na dane meno.voidOdstrani z cache vsetky objekty zadaneho pouzivatelavoidVlozi objekt do cachevoidsetObjectByExpiry(String name, Object object, long expiryTime, boolean allowSmartRefresh) Vlozi objekt do cache s nastavenym casom exspiracievoidsetObjectExpiryTime(String name, long expiryTime) Nastavi uz existujucemu objektu v cache novy cas exspiracievoidsetObjectSeconds(String name, Object object, int cacheInSeconds) Vlozi objekt do cache, pouzije SMART RefreshvoidsetObjectSeconds(String name, Object object, int cacheInSeconds, boolean allowSmartRefresh) Vlozi objekt do cachevoidsetUserObject(UserDetails user, String name, Object object, int cacheInMinutes) Vlozi objekt do cache pre daneho pouzivatelastatic voidsubscribe(CacheListener theListener) Subscribes to the new events in Cachestatic voidunsubscribe(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-
-