Class QueryExtractionComponent
- java.lang.Object
-
- org.apache.avalon.framework.logger.AbstractLogEnabled
-
- org.ametys.plugins.extraction.component.AbstractExtractionComponent
-
- org.ametys.plugins.extraction.component.AbstractSolrExtractionComponent
-
- org.ametys.plugins.extraction.component.AbstractGroupExtractionComponent
-
- org.ametys.plugins.extraction.component.QueryExtractionComponent
-
- All Implemented Interfaces:
ExtractionComponent,TwoStepsExecutingExtractionComponent,Configurable,Contextualizable,LogEnabled,Serviceable
public class QueryExtractionComponent extends AbstractGroupExtractionComponent implements TwoStepsExecutingExtractionComponent, Contextualizable
This class represents a query component of the extraction module
-
-
Field Summary
-
Fields inherited from class org.ametys.plugins.extraction.component.AbstractGroupExtractionComponent
_groupingFields
-
Fields inherited from class org.ametys.plugins.extraction.component.AbstractSolrExtractionComponent
_clauses, _contentTypes, _getQueryFromJSONHelper, _jsonUtils, _queryReferenceId
-
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 QueryExtractionComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddColumn(String fieldPath, String displayOptionalColumnName)Add an optional column to the componentvoidaddColumns(String... fieldPaths)Add columns to the components.voidaddSort(String filedPath, Sort.Order order)Add sort to the componentIterable<Content>computeFirstLevelResults(ExtractionExecutionContext context)Computes first level results for preparing multiple extraction executionsprotected voidcomputeReferencedQueryInfos(String refQueryContent)Manages the stored query referenced by the componentvoidconfigure(Configuration query)voidcontextualize(Context context)voidexecuteFor(ContentHandler contentHandler, Iterable<Content> firstLevelResults, ExtractionExecutionContext context)Execute the extraction of the component for the given first level resultsList<ExtractionColumn>getColumns()Retrieves the component columnsMap<String,Object>getComponentDetailsForTree()Retrieves the details of the component for treeprotected ContentSearcherFactory.SimpleContentSearchergetContentSearcher()Retrieves the content searcher to use for solr searchprotected StringgetDefaultTagName()Retrieves the default tag nameprotected StringgetLogsPrefix()Retrieves the prefix to use in exceptions thrown by this componentMap<String,Sort.Order>getSorts()Retrieves the component sortsbooleanoverrideColumns()the referenced query's columnsbooleanoverrideSorts()the referenced query's sortsvoidprepareComponentExecution(ExtractionExecutionContext context)Prepare the execution of the componentprotected voidprocessContents(Iterable<Content> contents, ContentHandler contentHandler, ExtractionExecutionContext context)Process result contents to format the result documentprotected voidsaxContents(ContentHandler contentHandler, ExtractionExecutionContext context, Collection<? extends ResultField> resultFields, List<Content> contents)Sax a contentvoidservice(ServiceManager serviceManager)voidsetOverrideColumns(boolean overrideColumns)Set the boolean to override the referenced query's columns or notvoidsetOverrideSorts(boolean overrideSorts)Set the boolean to override the referenced query's sorts or not-
Methods inherited from class org.ametys.plugins.extraction.component.AbstractGroupExtractionComponent
addGroupingFields, getGroupingFields, organizeContentsInGroups, saxGroup
-
Methods inherited from class org.ametys.plugins.extraction.component.AbstractSolrExtractionComponent
_getAttributeTypeId, addClauses, addContentTypes, executeComponent, getClauses, getContents, getContentTypes, getQueryReferenceId, setQueryReferenceId
-
Methods inherited from class org.ametys.plugins.extraction.component.AbstractExtractionComponent
addSubComponent, execute, executeSubComponents, getSubComponents, getTagName, setTagName
-
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.plugins.extraction.component.ExtractionComponent
addSubComponent, getContentTypes, getSubComponents
-
Methods inherited from interface org.ametys.plugins.extraction.component.TwoStepsExecutingExtractionComponent
execute
-
-
-
-
Constructor Detail
-
QueryExtractionComponent
public QueryExtractionComponent()
-
-
Method Detail
-
contextualize
public void contextualize(Context context) throws ContextException
- Specified by:
contextualizein interfaceContextualizable- Throws:
ContextException
-
service
public void service(ServiceManager serviceManager) throws ServiceException
- Specified by:
servicein interfaceServiceable- Overrides:
servicein classAbstractGroupExtractionComponent- Throws:
ServiceException
-
configure
public void configure(Configuration query) throws ConfigurationException
- Specified by:
configurein interfaceConfigurable- Overrides:
configurein classAbstractGroupExtractionComponent- 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 classAbstractGroupExtractionComponent- Parameters:
context- context of the extraction component- Throws:
Exception- if an error occurs
-
computeReferencedQueryInfos
protected void computeReferencedQueryInfos(String refQueryContent) throws QuerySyntaxException
Description copied from class:AbstractSolrExtractionComponentManages the stored query referenced by the component- Overrides:
computeReferencedQueryInfosin classAbstractSolrExtractionComponent- Parameters:
refQueryContent- referenced query content- Throws:
QuerySyntaxException- if there is a syntax error in the referenced query
-
getContentSearcher
protected ContentSearcherFactory.SimpleContentSearcher getContentSearcher()
Description copied from class:AbstractSolrExtractionComponentRetrieves the content searcher to use for solr search- Overrides:
getContentSearcherin classAbstractSolrExtractionComponent- Returns:
- the content searcher
-
processContents
protected void processContents(Iterable<Content> contents, ContentHandler contentHandler, ExtractionExecutionContext context) throws Exception
Description copied from class:AbstractSolrExtractionComponentProcess result contents to format the result document- Specified by:
processContentsin classAbstractSolrExtractionComponent- Parameters:
contents- search resultscontentHandler- result documentcontext- component execution context- Throws:
Exception- if an error occurs
-
computeFirstLevelResults
public Iterable<Content> computeFirstLevelResults(ExtractionExecutionContext context) throws Exception
Description copied from interface:TwoStepsExecutingExtractionComponentComputes first level results for preparing multiple extraction executions- Specified by:
computeFirstLevelResultsin interfaceTwoStepsExecutingExtractionComponent- Parameters:
context- context of the extraction component- Returns:
- The first level content results
- Throws:
Exception- if an error occurs
-
executeFor
public void executeFor(ContentHandler contentHandler, Iterable<Content> firstLevelResults, ExtractionExecutionContext context) throws Exception
Description copied from interface:TwoStepsExecutingExtractionComponentExecute the extraction of the component for the given first level results- Specified by:
executeForin interfaceTwoStepsExecutingExtractionComponent- Parameters:
contentHandler- result documentfirstLevelResults- A subset of the first level content results previously returned byTwoStepsExecutingExtractionComponent.computeFirstLevelResults(ExtractionExecutionContext)context- context of the extraction component- Throws:
Exception- if an error occurs
-
saxContents
protected void saxContents(ContentHandler contentHandler, ExtractionExecutionContext context, Collection<? extends ResultField> resultFields, List<Content> contents) throws Exception
Description copied from class:AbstractGroupExtractionComponentSax a content- Specified by:
saxContentsin classAbstractGroupExtractionComponent- Parameters:
contentHandler- result documentcontext- execution contextresultFields- result fields to saxcontents- contents to sax- 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 classAbstractGroupExtractionComponent- Returns:
- a
Mapcontaining component details
-
getDefaultTagName
protected String getDefaultTagName()
Description copied from class:AbstractExtractionComponentRetrieves the default tag name- Specified by:
getDefaultTagNamein classAbstractExtractionComponent- Returns:
- the default tag name
-
getLogsPrefix
protected String getLogsPrefix()
Description copied from class:AbstractExtractionComponentRetrieves the prefix to use in exceptions thrown by this component- Specified by:
getLogsPrefixin classAbstractExtractionComponent- Returns:
- the prefix for exceptions
-
overrideColumns
public boolean overrideColumns()
the referenced query's columns- Returns:
trueif the referenced query's columns are overridden on this component,falseotherwise
-
setOverrideColumns
public void setOverrideColumns(boolean overrideColumns)
Set the boolean to override the referenced query's columns or not- Parameters:
overrideColumns-trueto override columns,falseotherwise
-
getColumns
public List<ExtractionColumn> getColumns()
Retrieves the component columns- Returns:
- The component columns
-
addColumns
public void addColumns(String... fieldPaths)
Add columns to the components. Do not manage optional columns' variables- Parameters:
fieldPaths- Array of columns' field paths to add
-
addColumn
public void addColumn(String fieldPath, String displayOptionalColumnName)
Add an optional column to the component- Parameters:
fieldPath- The column's field pathdisplayOptionalColumnName- The name of the variable that manage the display of this optional column
-
overrideSorts
public boolean overrideSorts()
the referenced query's sorts- Returns:
trueif the referenced query's sorts are overridden on this component,falseotherwise
-
setOverrideSorts
public void setOverrideSorts(boolean overrideSorts)
Set the boolean to override the referenced query's sorts or not- Parameters:
overrideSorts-trueto override sorts,falseotherwise
-
getSorts
public Map<String,Sort.Order> getSorts()
Retrieves the component sorts- Returns:
- The component sorts
-
addSort
public void addSort(String filedPath, Sort.Order order)
Add sort to the component- Parameters:
filedPath- Field on which apply sortorder- sort order to apply for field
-
-