Class OdfProgramListServiceCachePolicy
- java.lang.Object
-
- org.ametys.runtime.plugin.component.AbstractLogEnabled
-
- org.ametys.plugins.odfweb.cachepolicy.OdfProgramListServiceCachePolicy
-
- All Implemented Interfaces:
LogEnabled
,PageElementCachePolicy
,Serviceable
public class OdfProgramListServiceCachePolicy extends AbstractLogEnabled implements Serviceable, PageElementCachePolicy
Cache policy for the program list service.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.ametys.web.cache.pageelement.PageElementCachePolicy
PageElementCachePolicy.PolicyResult
-
-
Field Summary
Fields Modifier and Type Field Description protected OdfPageHandler
_odfRootPageHandler
The ODF root page handler.private static Set<String>
_TYPES
-
Constructor Summary
Constructors Constructor Description OdfProgramListServiceCachePolicy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected List<String>
_getRemovingCacheEventIds(String workspace)
Returns all event ids for which the cache should be removed.Set<String>
getPageElementTypes()
Returns the types of the associated page elements.void
service(ServiceManager manager)
PageElementCachePolicy.PolicyResult
shouldClearCache(String workspace, Site site, String pageElementType, String elementId, Event event)
Second pass of event processing, at the Page level.
This method is only called if the first pass resulted with NEED_MORE_INFORMATION.PageElementCachePolicy.PolicyResult
shouldClearCache(String workspace, Site site, String pageElementType, Event event)
First pass of event processing, at the type level.
Returning NEED_MORE_INFORMATION eventually leads to the second pass, which is more precise, and also depends on a particular element, but is more costly to compute.
Returning null means that this policy declares itself as not concerned by the current event.-
Methods inherited from class org.ametys.runtime.plugin.component.AbstractLogEnabled
getLogger, setLogger
-
-
-
-
Field Detail
-
_odfRootPageHandler
protected OdfPageHandler _odfRootPageHandler
The ODF root page handler.
-
-
Constructor Detail
-
OdfProgramListServiceCachePolicy
public OdfProgramListServiceCachePolicy()
-
-
Method Detail
-
service
public void service(ServiceManager manager) throws ServiceException
- Specified by:
service
in interfaceServiceable
- Throws:
ServiceException
-
getPageElementTypes
public Set<String> getPageElementTypes()
Description copied from interface:PageElementCachePolicy
Returns the types of the associated page elements.- Specified by:
getPageElementTypes
in interfacePageElementCachePolicy
- Returns:
- the types of the associated page elements.
-
shouldClearCache
public final PageElementCachePolicy.PolicyResult shouldClearCache(String workspace, Site site, String pageElementType, Event event)
Description copied from interface:PageElementCachePolicy
First pass of event processing, at the type level.
Returning NEED_MORE_INFORMATION eventually leads to the second pass, which is more precise, and also depends on a particular element, but is more costly to compute.
Returning null means that this policy declares itself as not concerned by the current event.- Specified by:
shouldClearCache
in interfacePageElementCachePolicy
- Parameters:
workspace
- the current JCR workspace.site
- the current site.pageElementType
- the page element type.event
- the current event.- Returns:
- the policy result or null if this policy declares itself as not concerned.
-
shouldClearCache
public final PageElementCachePolicy.PolicyResult shouldClearCache(String workspace, Site site, String pageElementType, String elementId, Event event)
Description copied from interface:PageElementCachePolicy
Second pass of event processing, at the Page level.
This method is only called if the first pass resulted with NEED_MORE_INFORMATION. If this method also returns NEED_MORE_INFORMATION, it will be interpreted as REMOVE.- Specified by:
shouldClearCache
in interfacePageElementCachePolicy
- Parameters:
workspace
- the current JCR workspace.site
- the current site.pageElementType
- the page element type.elementId
- the current element id.event
- the current event.- Returns:
- the policy result.
-
_getRemovingCacheEventIds
protected List<String> _getRemovingCacheEventIds(String workspace)
Returns all event ids for which the cache should be removed.- Parameters:
workspace
- the current JCR workspace.- Returns:
- all event ids for which the cache should be removed.
-
-