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:
Observer
,LogEnabled
,Contextualizable
,Serviceable
- Direct Known Subclasses:
SolrContentValidatedPart1Observer
,SolrContentValidatedPart2Observer
,UnindexProgramObserver
public abstract class AbstractSolrODFObserver extends AbstractODFObserver
AbstractObserver
for synchronizing the Solr indexes.
-
-
Field Summary
Fields Modifier and Type Field Description protected OdfPageResolver
_odfPageResolver
ODF page resolverprotected SolrIndexer
_solrIndexer
The Solr indexerprotected SolrPageIndexer
_solrPageIndexer
The page indexer.-
Fields inherited from class org.ametys.plugins.odfweb.observation.AbstractODFObserver
_cocoonContext, _context, _odfHelper, _resolver
-
Fields inherited from interface org.ametys.core.observation.Observer
MAX_PRIORITY, MIN_PRIORITY
-
-
Constructor Summary
Constructors Constructor Description AbstractSolrODFObserver()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected 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
getPriority(Event event)
Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.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
-
-
-
-
Field Detail
-
_solrIndexer
protected SolrIndexer _solrIndexer
The Solr indexer
-
_solrPageIndexer
protected SolrPageIndexer _solrPageIndexer
The page indexer.
-
_odfPageResolver
protected OdfPageResolver _odfPageResolver
ODF page resolver
-
-
Constructor Detail
-
AbstractSolrODFObserver
public AbstractSolrODFObserver()
-
-
Method Detail
-
service
public void service(ServiceManager manager) throws ServiceException
- Specified by:
service
in interfaceServiceable
- Overrides:
service
in classAbstractODFObserver
- Throws:
ServiceException
-
getPriority
public int getPriority(Event event)
Description copied from interface:Observer
Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.- Parameters:
event
- the event.- Returns:
- the priority where 0 the max priority and Integer.MAX_VALUE the min priority.
-
_internalObserve
protected final void _internalObserve(Event event, Map<String,Object> transientVars, Page odfRootPage, Set<Program> programs, SubProgram subProgram, Course course) throws Exception
Description 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 Exception
Update 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.
-
-