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>
_clauses
The list of clausesprotected Set<String>
_contentTypes
Content types concerned by the solr searchprotected GetQueryFromJSONHelper
_getQueryFromJSONHelper
Helper to resolve referenced query infosprotected JSONUtils
_jsonUtils
Util class to manipulate JSON Stringprotected String
_queryReferenceId
Reference 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 typesvoid
addClauses(String... expressions)
Add clauses to the component.void
addContentTypes(String... contentTypes)
Add content types to componentprotected void
computeReferencedQueryInfos(String refQueryContent)
Manages the stored query referenced by the componentvoid
configure(Configuration configuration)
void
executeComponent(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.SimpleContentSearcher
getContentSearcher()
Retrieves the content searcher to use for solr searchSet<String>
getContentTypes()
Retrieves the list of content types defined for this componentString
getQueryReferenceId()
Retrieves the id of the referenced queryvoid
prepareComponentExecution(ExtractionExecutionContext context)
Prepare the execution of the componentprotected abstract void
processContents(Iterable<Content> contents, ContentHandler contentHandler, ExtractionExecutionContext context)
Process result contents to format the result documentvoid
service(ServiceManager serviceManager)
void
setQueryReferenceId(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:
service
in interfaceServiceable
- Overrides:
service
in classAbstractExtractionComponent
- Throws:
ServiceException
-
configure
public void configure(Configuration configuration) throws ConfigurationException
- Specified by:
configure
in interfaceConfigurable
- Overrides:
configure
in classAbstractExtractionComponent
- Throws:
ConfigurationException
-
prepareComponentExecution
public void prepareComponentExecution(ExtractionExecutionContext context) throws Exception
Description copied from interface:ExtractionComponent
Prepare the execution of the component- Specified by:
prepareComponentExecution
in interfaceExtractionComponent
- Overrides:
prepareComponentExecution
in 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:AbstractExtractionComponent
Execute the extraction of the component- Specified by:
executeComponent
in 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:ExtractionComponent
Retrieves the details of the component for tree- Specified by:
getComponentDetailsForTree
in interfaceExtractionComponent
- Overrides:
getComponentDetailsForTree
in classAbstractExtractionComponent
- Returns:
- a
Map
containing component details
-
getContentTypes
public Set<String> getContentTypes()
Description copied from interface:ExtractionComponent
Retrieves 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
-
-