Class SolrWorkflowIndexer
- java.lang.Object
-
- org.ametys.runtime.plugin.component.AbstractLogEnabled
-
- org.ametys.cms.content.indexing.solr.SolrWorkflowIndexer
-
- All Implemented Interfaces:
SolrFieldNames
,LogEnabled
,Component
,Serviceable
public class SolrWorkflowIndexer extends AbstractLogEnabled implements Component, Serviceable, SolrFieldNames
Component indexing the whole workflow ofAmetysObject
s.
-
-
Field Summary
Fields Modifier and Type Field Description protected SolrClientProvider
_solrClientProvider
The Solr client providerprotected WorkflowProvider
_workflowProvider
The workflow provider.static String
ROLE
The component role.-
Fields inherited from interface org.ametys.cms.content.indexing.solr.SolrFieldNames
ACL_INIT_VALUE_ALLOWED_GROUPS, ACL_INIT_VALUE_ALLOWED_USERS, ACL_INIT_VALUE_ANONYMOUS, ACL_INIT_VALUE_ANYCONNECTED, ACL_INIT_VALUE_DENIED_GROUPS, ACL_INIT_VALUE_DENIED_USERS, ALL_CONTENT_TYPES, ALL_MIXIN_TYPES, ALL_TAGS, ATTACHMENT_CONTENT_ID, CONTENT_COMMENTS, CONTENT_COMMENTS_NONVALIDATED, CONTENT_COMMENTS_VALIDATED, CONTENT_CREATOR, CONTENT_LANGUAGE, CONTENT_LANGUAGES, CONTENT_LAST_CONTRIBUTOR, CONTENT_NAME, CONTENT_OUTGOING_REFEERENCES_RESOURCE_IDS, CONTENT_TITLES, CONTENT_TYPE_RESOURCE, CONTENT_TYPES, CONTENT_VISIBLE_ATTACHMENT_RESOURCE_IDS, CREATION_DATE, DATE_FOR_SORTING, DATES_FACET, DC_CONTRIBUTOR, DC_COVERAGE, DC_CREATOR, DC_DATE, DC_DESCRIPTION, DC_FORMAT, DC_IDENTIFIER, DC_LANGUAGE, DC_PUBLISHER, DC_RELATION, DC_RIGHTS, DC_SOURCE, DC_SUBJECT, DC_TITLE, DC_TYPE, DOCUMENT_TYPE, EXCERPT, FILENAME, FIRST_VALIDATION, FULL_EXACT_WS, FULL_GENERAL, FULL_PREFIX, FULL_STEMMED_PREFIX, ID, IS_AMETYS_OBJECT, LAST_MAJOR_VALIDATION, LAST_MODIFIED, LAST_VALIDATION, LENGTH, MIME_TYPES, MIXIN_TYPES, PATH, PSEUDO_CONTENT_TYPE_VALUE_RESOURCE, PSEUDO_CONTENT_TYPES, REPEATER_ENTRY_POSITION, RESOURCE_ANCESTOR_AND_SELF_IDS, RESOURCE_ANCESTOR_IDS, RESOURCE_CREATOR, RESOURCE_DATE, RESOURCE_LAST_MODIFIED, RESOURCE_MIME_TYPE_GROUP, RESOURCE_ROOT_ID, SIMPLE_CONTENT_PARENTS, SUB_CONTENT, TAGS, TITLE, TITLE_SORT, TYPE_CONTENT, TYPE_CONTENT_ATTACHMENT_RESOURCE, TYPE_CONTENT_ATTRIBUTE_RESOURCE, TYPE_REPEATER, TYPE_RESOURCE, TYPE_WF_ENTRY, TYPE_WF_STEP, WORKFLOW_CURRENT_STEPS, WORKFLOW_CURRENT_STEPS_DV, WORKFLOW_ENTRY_STATE, WORKFLOW_HISTORY_STEPS, WORKFLOW_HISTORY_STEPS_DV, WORKFLOW_NAME, WORKFLOW_REF, WORKFLOW_REF_DV, WORKFLOW_STEP, WORKFLOW_STEP_ACTIONID, WORKFLOW_STEP_CALLER, WORKFLOW_STEP_DUEDATE, WORKFLOW_STEP_FINISHDATE, WORKFLOW_STEP_ID, WORKFLOW_STEP_OWNER, WORKFLOW_STEP_STARTDATE, WORKFLOW_STEP_STATUS
-
-
Constructor Summary
Constructors Constructor Description SolrWorkflowIndexer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
indexAmetysObjectWorkflow(WorkflowAwareAmetysObject object, String workspaceName)
Index the workflow history of an Ametys object.void
indexAmetysObjectWorkflow(WorkflowAwareAmetysObject object, String workspaceName, org.apache.solr.client.solrj.SolrClient solrClient)
Index the workflow history of an Ametys object.private String
indexStep(com.opensymphony.workflow.spi.Step step, String objectId, List<org.apache.solr.common.SolrInputDocument> documents)
private List<String>
indexSteps(List<com.opensymphony.workflow.spi.Step> steps, String objectId, List<org.apache.solr.common.SolrInputDocument> documents)
private void
indexWorkflowEntry(WorkflowProvider.AmetysObjectWorkflow workflow, long workflowId, String objectId, List<String> historyStepIds, List<String> currentStepIds, List<org.apache.solr.common.SolrInputDocument> documents)
void
service(ServiceManager serviceManager)
void
unindexAmetysObjectWorkflow(String objectId, String workspaceName, org.apache.solr.client.solrj.SolrClient solrClient)
Unindex the workflow history of an Ametys object.-
Methods inherited from class org.ametys.runtime.plugin.component.AbstractLogEnabled
getLogger, setLogger
-
-
-
-
Field Detail
-
_solrClientProvider
protected SolrClientProvider _solrClientProvider
The Solr client provider
-
_workflowProvider
protected WorkflowProvider _workflowProvider
The workflow provider.
-
-
Constructor Detail
-
SolrWorkflowIndexer
public SolrWorkflowIndexer()
-
-
Method Detail
-
service
public void service(ServiceManager serviceManager) throws ServiceException
- Specified by:
service
in interfaceServiceable
- Throws:
ServiceException
-
indexAmetysObjectWorkflow
public void indexAmetysObjectWorkflow(WorkflowAwareAmetysObject object, String workspaceName) throws org.apache.solr.client.solrj.SolrServerException, IOException
Index the workflow history of an Ametys object.- Parameters:
object
- The ametys object.workspaceName
- The workspace where to work in- Throws:
org.apache.solr.client.solrj.SolrServerException
- If a solr error occurs.IOException
- If an I/O error occurs while indexing.
-
indexAmetysObjectWorkflow
public void indexAmetysObjectWorkflow(WorkflowAwareAmetysObject object, String workspaceName, org.apache.solr.client.solrj.SolrClient solrClient) throws org.apache.solr.client.solrj.SolrServerException, IOException
Index the workflow history of an Ametys object.- Parameters:
object
- The ametys object.workspaceName
- The workspace where to work insolrClient
- The solr client to use- Throws:
org.apache.solr.client.solrj.SolrServerException
- If a solr error occurs.IOException
- If an I/O error occurs while indexing.
-
indexWorkflowEntry
private void indexWorkflowEntry(WorkflowProvider.AmetysObjectWorkflow workflow, long workflowId, String objectId, List<String> historyStepIds, List<String> currentStepIds, List<org.apache.solr.common.SolrInputDocument> documents)
-
indexSteps
private List<String> indexSteps(List<com.opensymphony.workflow.spi.Step> steps, String objectId, List<org.apache.solr.common.SolrInputDocument> documents)
-
indexStep
private String indexStep(com.opensymphony.workflow.spi.Step step, String objectId, List<org.apache.solr.common.SolrInputDocument> documents)
-
unindexAmetysObjectWorkflow
public void unindexAmetysObjectWorkflow(String objectId, String workspaceName, org.apache.solr.client.solrj.SolrClient solrClient) throws org.apache.solr.client.solrj.SolrServerException, IOException
Unindex the workflow history of an Ametys object.- Parameters:
objectId
- The Ametys object ID.workspaceName
- The workspace where to work insolrClient
- The solr client to use- Throws:
org.apache.solr.client.solrj.SolrServerException
- If a solr error occurs.IOException
- If an I/O error occurs while indexing.
-
-