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 Modifier and Type Field Description private ColumnHelper_columnHelperprivate List<ExtractionColumn>_columnsprivate ContentResultSetHelper_contentResultSetHelperprivate Context_contextprivate boolean_overrideColumnsprivate boolean_overrideSortsprivate Collection<? extends ResultField>_resultFieldsprivate SearchUIModelExtensionPoint_searchModelExtensionPointprivate ServiceManager_serviceManagerprivate Map<String,Sort.Order>_sortMapprivate List<Sort>_sorts- 
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 private List<ResultField>_buildResulFields(List<String> columnFieldPaths)private List<String>_getColumnsToDisplay(ExtractionExecutionContext context)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
_extractGroupExpressionsFromClause, _extractVariableFromClauseExpression, _getAttributeTypeId, _getClauseQueries, 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 
 - 
 
 - 
 
- 
- 
Field Detail
- 
_overrideColumns
private boolean _overrideColumns
 
- 
_columns
private List<ExtractionColumn> _columns
 
- 
_overrideSorts
private boolean _overrideSorts
 
- 
_sortMap
private Map<String,Sort.Order> _sortMap
 
- 
_resultFields
private Collection<? extends ResultField> _resultFields
 
- 
_serviceManager
private ServiceManager _serviceManager
 
- 
_searchModelExtensionPoint
private SearchUIModelExtensionPoint _searchModelExtensionPoint
 
- 
_contentResultSetHelper
private ContentResultSetHelper _contentResultSetHelper
 
- 
_columnHelper
private ColumnHelper _columnHelper
 
 - 
 
- 
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
 
- 
_getColumnsToDisplay
private List<String> _getColumnsToDisplay(ExtractionExecutionContext context)
 
- 
_buildResulFields
private List<ResultField> _buildResulFields(List<String> columnFieldPaths) throws Exception
- Throws:
 Exception
 
- 
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
 
 - 
 
 -