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
AbstractObserverfor synchronizing the Solr indexes.
-
-
Field Summary
Fields Modifier and Type Field Description protected OdfPageResolver_odfPageResolverODF page resolverprotected SolrIndexer_solrIndexerThe Solr indexerprotected SolrPageIndexer_solrPageIndexerThe 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.intgetPriority(Event event)Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.voidservice(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:
servicein interfaceServiceable- Overrides:
servicein classAbstractODFObserver- Throws:
ServiceException
-
getPriority
public int getPriority(Event event)
Description copied from interface:ObserverRetrieves 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:AbstractODFObserverDo the actual work.- Specified by:
_internalObservein 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.
-
-