Class IndexContentObserver
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.ametys.cms.content.indexing.solr.observation.IndexContentObserver
-
- All Implemented Interfaces:
AsyncObserver
,Observer
,Contextualizable
,LogEnabled
,Serviceable
- Direct Known Subclasses:
IndexSynchronizedContentObserver
public class IndexContentObserver extends AbstractLogEnabled implements AsyncObserver, Contextualizable, Serviceable
Observer in charge for indexing contents when created or modified.
-
-
Field Summary
Fields Modifier and Type Field Description protected Context
_context
The component context.private AmetysObjectResolver
_resolver
protected SolrClientProvider
_solrClientProvider
The provider of solr clientsprotected SolrIndexer
_solrIndexer
The Solr indexer.protected SolrWorkflowIndexer
_solrWfIndexer
The solr workflow indexer.-
Fields inherited from interface org.ametys.core.observation.Observer
MAX_PRIORITY, MIN_PRIORITY
-
-
Constructor Summary
Constructors Constructor Description IndexContentObserver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
contextualize(Context context)
int
getPriority(Event event)
Retrieves the priority to observe this event.
This can be used to process a supported event before others observers.protected boolean
index(Content content)
Test whether to index the given content or not.void
observe(Event event, Map<String,Object> transientVars)
Observes an event.void
service(ServiceManager serviceManager)
boolean
supports(Event event)
Checks if the event is supported.-
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.ametys.core.observation.AsyncObserver
parallelizable
-
-
-
-
Field Detail
-
_solrClientProvider
protected SolrClientProvider _solrClientProvider
The provider of solr clients
-
_solrIndexer
protected SolrIndexer _solrIndexer
The Solr indexer.
-
_solrWfIndexer
protected SolrWorkflowIndexer _solrWfIndexer
The solr workflow indexer.
-
_resolver
private AmetysObjectResolver _resolver
-
-
Constructor Detail
-
IndexContentObserver
public IndexContentObserver()
-
-
Method Detail
-
contextualize
public void contextualize(Context context) throws ContextException
- Specified by:
contextualize
in interfaceContextualizable
- Throws:
ContextException
-
service
public void service(ServiceManager serviceManager) throws ServiceException
- Specified by:
service
in interfaceServiceable
- Throws:
ServiceException
-
supports
public boolean supports(Event event)
Description copied from interface:Observer
Checks if the event is supported. If true, the observe(Event) method will be called.
-
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.- Specified by:
getPriority
in interfaceObserver
- Parameters:
event
- the event.- Returns:
- the priority where 0 the max priority and Integer.MAX_VALUE the min priority.
-
observe
public void observe(Event event, Map<String,Object> transientVars) throws Exception
Description copied from interface:Observer
Observes an event.- Specified by:
observe
in interfaceObserver
- Parameters:
event
- the event.transientVars
- transientVars passed from one Observer to another when processing a single Event. This may allow optimizations between observers.- Throws:
Exception
- if an error occurs. All exceptions will be logged but not propagated, as the observation mechanism should never fail.
-
-