Class AbstractSolrODFObserver
java.lang.Object
org.ametys.runtime.plugin.component.AbstractLogEnabled
org.ametys.plugins.odfweb.observation.AbstractODFObserver
org.ametys.plugins.odfweb.observation.solr.AbstractSolrODFObserver
- All Implemented Interfaces:
IndexingObserver
,Observer
,LogEnabled
,Prioritizable
,Supporter<Event>
,Contextualizable
,Serviceable
- Direct Known Subclasses:
SolrContentValidatedPart1Observer
,SolrContentValidatedPart2Observer
,UnindexProgramObserver
public abstract class AbstractSolrODFObserver
extends AbstractODFObserver
implements IndexingObserver
Abstract
Observer
for synchronizing the Solr indexes.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected OdfPageResolver
ODF page resolverprotected SolrPageIndexer
The page indexer.static final String
Attribute request indicating an ongoing indexationFields inherited from class org.ametys.plugins.odfweb.observation.AbstractODFObserver
_cocoonContext, _context, _odfHelper, _resolver
Fields inherited from interface org.ametys.cms.indexing.IndexingObserver
INDEXING_OBSERVER
Fields inherited from interface org.ametys.core.observation.Observer
MAX_PRIORITY, MIN_PRIORITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
_internalObserve
(Event event, Map<String, Object> transientVars, Page odfRootPage, Set<Program> programs, SubProgram subProgram, Course course) Do the actual work.protected abstract void
_updateIndex
(Event event, Map<String, Object> transientVars, Page odfRootPage, Program program, SubProgram subProgram, Course course) Update the index from the observed event.int
Get the priority for the component.void
service
(ServiceManager manager) Methods inherited from class org.ametys.plugins.odfweb.observation.AbstractODFObserver
_getContentArgument, _getCourse, _getODFRootPages, _getPrograms, _getSubProgram, _workspaceToUse, contextualize, observe
Methods inherited from class org.ametys.runtime.plugin.component.AbstractLogEnabled
getLogger, setLogger
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.ametys.cms.indexing.IndexingObserver
getTraits
-
Field Details
-
REQUEST_ATTRIBUTE_INDEXING
Attribute request indicating an ongoing indexation- See Also:
-
_solrPageIndexer
The page indexer. -
_odfPageResolver
ODF page resolver
-
-
Constructor Details
-
AbstractSolrODFObserver
public AbstractSolrODFObserver()
-
-
Method Details
-
service
- Specified by:
service
in interfaceServiceable
- Overrides:
service
in classAbstractODFObserver
- Throws:
ServiceException
-
getPriority
Description copied from interface:Prioritizable
Get the priority for the component. On components usingPrioritizable
interface, each implementation define the order. In most cases, less is the number, more prior is the component.- Specified by:
getPriority
in interfacePrioritizable
- Returns:
- the priority
-
_internalObserve
protected final void _internalObserve(Event event, Map<String, Object> transientVars, Page odfRootPage, Set<Program> programs, SubProgram subProgram, Course course) throws ExceptionDescription copied from class:AbstractODFObserver
Do the actual work.- Specified by:
_internalObserve
in classAbstractODFObserver
- Parameters:
event
- the event.transientVars
- transientVars passed from one Observer to another when processing a single Event. This may allow optimizations between observers.odfRootPage
- the Page holding the virtual factory.programs
- the root programs.subProgram
- The subprogram. Can be nullcourse
- The course. Can be null.- Throws:
Exception
- if an error occured
-
_updateIndex
protected abstract void _updateIndex(Event event, Map<String, Object> transientVars, Page odfRootPage, Program program, SubProgram subProgram, Course course) throws ExceptionUpdate the index from the observed event.- Parameters:
event
- the event.transientVars
- transientVars passed from one Observer to another when processing a single Event. This may allow optimizations between observers.odfRootPage
- the odf root pageprogram
- the target programsubProgram
- The subprogram. Can be nullcourse
- the course. Can be null.- Throws:
Exception
- if an error occurs.
-