Class AbstractSolrExtractionComponent
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.ametys.plugins.extraction.component.AbstractExtractionComponent
-
- org.ametys.plugins.extraction.component.AbstractSolrExtractionComponent
-
- All Implemented Interfaces:
ExtractionComponent,Configurable,LogEnabled,Serviceable
- Direct Known Subclasses:
AbstractGroupExtractionComponent,MappingQueryExtractionComponent
public abstract class AbstractSolrExtractionComponent extends AbstractExtractionComponent
This class represents an extraction component with a solr query
-
-
Field Summary
Fields Modifier and Type Field Description protected List<ExtractionClause>_clausesThe list of clausesprotected Set<String>_contentTypesContent types concerned by the solr searchprotected GetQueryFromJSONHelper_getQueryFromJSONHelperHelper to resolve referenced query infosprotected JSONUtils_jsonUtilsUtil class to manipulate JSON Stringprotected String_queryReferenceIdReference id of a recorded query-
Fields inherited from class org.ametys.plugins.extraction.component.AbstractExtractionComponent
_contentTypeExtensionPoint, _contentTypesHelper, _subComponents, _tagName, _thesaurusDAO, EXTRACTION_ITEM_PATH_SEPARATOR, JOIN_HIERARCHY_ELEMENT, JOIN_HIERARCHY_SEPARATOR
-
-
Constructor Summary
Constructors Constructor Description AbstractSolrExtractionComponent()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected String_getAttributeTypeId(String fieldPath, Collection<String> contentTypeIds)Retrieves the field path's attribute type identifier from content typesvoidaddClauses(String... expressions)Add clauses to the component.voidaddContentTypes(String... contentTypes)Add content types to componentprotected voidcomputeReferencedQueryInfos(String refQueryContent)Manages the stored query referenced by the componentvoidconfigure(Configuration configuration)voidexecuteComponent(ContentHandler contentHandler, ExtractionExecutionContext context)Execute the extraction of the componentList<ExtractionClause>getClauses()Retrieves the component clausesMap<String,Object>getComponentDetailsForTree()Retrieves the details of the component for treeprotected Iterable<Content>getContents(ExtractionExecutionContext context)Gets the content results from Solrprotected ContentSearcherFactory.SimpleContentSearchergetContentSearcher()Retrieves the content searcher to use for solr searchSet<String>getContentTypes()Retrieves the list of content types defined for this componentStringgetQueryReferenceId()Retrieves the id of the referenced queryvoidprepareComponentExecution(ExtractionExecutionContext context)Prepare the execution of the componentprotected abstract voidprocessContents(Iterable<Content> contents, ContentHandler contentHandler, ExtractionExecutionContext context)Process result contents to format the result documentvoidservice(ServiceManager serviceManager)voidsetQueryReferenceId(String queryReferenceId)Sets the id of the referenced query-
Methods inherited from class org.ametys.plugins.extraction.component.AbstractExtractionComponent
addSubComponent, execute, executeSubComponents, getDefaultTagName, getLogsPrefix, getSubComponents, getTagName, setTagName
-
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
-
-
-
Field Detail
-
_contentTypes
protected Set<String> _contentTypes
Content types concerned by the solr search
-
_queryReferenceId
protected String _queryReferenceId
Reference id of a recorded query
-
_clauses
protected List<ExtractionClause> _clauses
The list of clauses
-
_getQueryFromJSONHelper
protected GetQueryFromJSONHelper _getQueryFromJSONHelper
Helper to resolve referenced query infos
-
_jsonUtils
protected JSONUtils _jsonUtils
Util class to manipulate JSON String
-
-
Constructor Detail
-
AbstractSolrExtractionComponent
public AbstractSolrExtractionComponent()
-
-
Method Detail
-
service
public void service(ServiceManager serviceManager) throws ServiceException
- Specified by:
servicein interfaceServiceable- Overrides:
servicein classAbstractExtractionComponent- Throws:
ServiceException
-
configure
public void configure(Configuration configuration) throws ConfigurationException
- Specified by:
configurein interfaceConfigurable- Overrides:
configurein classAbstractExtractionComponent- Throws:
ConfigurationException
-
prepareComponentExecution
public void prepareComponentExecution(ExtractionExecutionContext context) throws Exception
Description copied from interface:ExtractionComponentPrepare the execution of the component- Specified by:
prepareComponentExecutionin interfaceExtractionComponent- Overrides:
prepareComponentExecutionin classAbstractExtractionComponent- Parameters:
context- context of the extraction component- Throws:
Exception- if an error occurs
-
computeReferencedQueryInfos
protected void computeReferencedQueryInfos(String refQueryContent) throws QuerySyntaxException
Manages the stored query referenced by the component- Parameters:
refQueryContent- referenced query content- Throws:
QuerySyntaxException- if there is a syntax error in the referenced query
-
executeComponent
public void executeComponent(ContentHandler contentHandler, ExtractionExecutionContext context) throws Exception
Description copied from class:AbstractExtractionComponentExecute the extraction of the component- Specified by:
executeComponentin classAbstractExtractionComponent- Parameters:
contentHandler- result documentcontext- context of the extraction component- Throws:
Exception- if an error occurs
-
_getAttributeTypeId
protected String _getAttributeTypeId(String fieldPath, Collection<String> contentTypeIds)
Retrieves the field path's attribute type identifier from content types- Parameters:
fieldPath- the field pathcontentTypeIds- the content types identifiers- Returns:
- the attribute type identifier
-
getContentSearcher
protected ContentSearcherFactory.SimpleContentSearcher getContentSearcher()
Retrieves the content searcher to use for solr search- Returns:
- the content searcher
-
getContents
protected Iterable<Content> getContents(ExtractionExecutionContext context) throws Exception
Gets the content results from Solr- Parameters:
context- component execution context- Returns:
- the content results from Solr
- Throws:
Exception- if an error occurs
-
processContents
protected abstract void processContents(Iterable<Content> contents, ContentHandler contentHandler, ExtractionExecutionContext context) throws Exception
Process result contents to format the result document- Parameters:
contents- search resultscontentHandler- result documentcontext- component execution context- Throws:
Exception- if an error occurs
-
getComponentDetailsForTree
public Map<String,Object> getComponentDetailsForTree()
Description copied from interface:ExtractionComponentRetrieves the details of the component for tree- Specified by:
getComponentDetailsForTreein interfaceExtractionComponent- Overrides:
getComponentDetailsForTreein classAbstractExtractionComponent- Returns:
- a
Mapcontaining component details
-
getContentTypes
public Set<String> getContentTypes()
Description copied from interface:ExtractionComponentRetrieves the list of content types defined for this component- Returns:
- a list of content types id
-
addContentTypes
public void addContentTypes(String... contentTypes)
Add content types to component- Parameters:
contentTypes- Array of content types to add
-
getQueryReferenceId
public String getQueryReferenceId()
Retrieves the id of the referenced query- Returns:
- the id of the referenced query
-
setQueryReferenceId
public void setQueryReferenceId(String queryReferenceId)
Sets the id of the referenced query- Parameters:
queryReferenceId- The id of the referenced query to set
-
getClauses
public List<ExtractionClause> getClauses()
Retrieves the component clauses- Returns:
- the component clauses
-
addClauses
public void addClauses(String... expressions)
Add clauses to the component. Do not manage clauses' groups- Parameters:
expressions- Array clauses expressions to add
-
-