public interface IWorkflowContext
Modifier and Type | Method and Description |
---|---|
IPropertyFilter<CaseProperty> |
createCasePropertyFilter(CaseProperty property,
RelationalOperator operator,
Object value)
Creates a case property filter.
|
IPropertyFilter<IntermediateEventProperty> |
createIntermediateEventPropertyFilter(IntermediateEventProperty property,
RelationalOperator operator,
Object value)
Creates an intermediate event property filter.
|
IPropertyFilter<TaskProperty> |
createTaskPropertyFilter(TaskProperty property,
RelationalOperator operator,
Object value)
Creates a task property filter.
|
IPropertyFilter<WorkflowEventProperty> |
createWorkflowEventPropertyFilter(WorkflowEventProperty property,
RelationalOperator operator,
Object value)
Creates a workflow event property filter.
|
void |
deleteCompletedCase(ICase completedCase)
Deletes the given completed case and all belonging objects (tasks, workflow events, notes, process data etc.).
|
IDocumentService |
documents()
Returns a service for managing documents of this workflow context.
|
ICase |
findCase(long caseIdentifier)
Finds a case by its ID.
|
List<IGroup<ICase>> |
findCaseCategories(IPropertyFilter<CaseProperty> categoryFilter,
CaseProperty categoryProperty,
OrderDirection categoryPropertyOrder)
Deprecated.
use
CategoryTree.createFor(CaseQuery) instead |
IQueryResult<ICase> |
findCases(IPropertyFilter<CaseProperty> filter,
List<PropertyOrder<CaseProperty>> order,
int startIndex,
int count,
boolean returnAllCount)
Find cases using a filter
|
IQueryResult<ICase> |
findCases(String propertyName,
String propertyValue,
int startIndex,
int count,
boolean returnAllCount)
Finds all cases which have an additional property with the given name and value.
|
IQueryResult<IIntermediateEvent> |
findIntermediateEvents(IPropertyFilter<IntermediateEventProperty> filter,
List<PropertyOrder<IntermediateEventProperty>> order,
int startIndex,
int count,
boolean returnAllCount)
Finds intermediate events
|
Set<IProcessStart> |
findProcessStartsBySignature(String signature)
Finds all process starts that have the given signature.
|
ITask |
findTask(long taskIdentifier)
Finds a task by its ID.
|
List<IGroup<ITask>> |
findTaskCategories(IPropertyFilter<TaskProperty> categoryFilter,
TaskProperty categoryProperty,
OrderDirection categoryPropertyOrder)
Deprecated.
use
CategoryTree.createFor(TaskQuery) instead |
IQueryResult<ITask> |
findTasks(IPropertyFilter<TaskProperty> filter,
List<PropertyOrder<TaskProperty>> order,
int startIndex,
int count,
boolean returnAllCount)
Find tasks using a filter.
|
IQueryResult<ITask> |
findTasks(String propertyName,
String propertyValue,
int startIndex,
int count,
boolean returnAllCount)
Finds all tasks which have an additional property with the given name and value.
|
IQueryResult<IWorkflowEvent> |
findWorkflowEvents(IPropertyFilter<WorkflowEventProperty> filter,
List<PropertyOrder<WorkflowEventProperty>> order,
int startIndex,
int count,
boolean returnAllCount)
Finds workflow events.
|
IQueryResult<ITask> |
findWorkTasks(IUser user,
int startIndex,
int count)
Finds tasks that a given user can work on (currently working or can start).
|
IQueryResult<ITask> |
findWorkTasks(IUser user,
IPropertyFilter<TaskProperty> filter,
List<PropertyOrder<TaskProperty>> order,
int startIndex,
int count,
boolean returnAllCount,
EnumSet<TaskState> includeTaskStates)
Finds tasks that a given user can work on (currently working or can start).
|
IIntermediateEvent |
fireIntermediateEvent(IIntermediateEventElement intermediateEventElement,
String eventIdentifier,
Object resultObject,
String additionalInformation)
Fires an intermediate event.
|
IApplication |
getApplication()
Gets the application this workflow context belongs to.
|
ICaseQueryExecutor |
getCaseQueryExecutor()
Executor for
case queries on this application. |
IGlobalWorkflowContext |
getGlobalContext() |
int |
getRunningCasesCount(IProcessModelVersion processModelVersion)
Gets the number of running cases of a process model version.
|
ISecurityContext |
getSecurityContext()
Gets the security context that is responsible for the security of the application this workflow context belongs to.
|
List<IProcessStart> |
getStartableProcessStarts(IUser user)
Returns all process start elements which the given user can start.
|
List<IWebStartable> |
getStartables(IUser user)
Returns all startables which the given user can start.
|
ITaskQueryExecutor |
getTaskQueryExecutor()
Executor for
task queries on this application. |
IWorkflowSession |
getWorkflowSession(ISession session)
Gets the workflow session that belongs to the given security session.
|
IBpmSignalService |
signals()
A service for sending and querying signals.
|
IApplication getApplication() throws PersistencyException
PersistencyException
- if persistency access failsISecurityContext getSecurityContext() throws PersistencyException
PersistencyException
- if persistency access failsIPropertyFilter<CaseProperty> createCasePropertyFilter(CaseProperty property, RelationalOperator operator, Object value)
Creates a case property filter.
Case property filters can be used to filter cases in the findCase methods like IWorkflowContext.findCases(IPropertyFilter, List, int, int, boolean)
Example:
IPropertyFilter
IPropertyFilter
IPropertyFilter
property
- the case property to filter withoperator
- the filter operatorvalue
- the value to filter for. Can be null. Must respect the type of the property. I.e. the name property should have a String value.IPropertyFilter<TaskProperty> createTaskPropertyFilter(TaskProperty property, RelationalOperator operator, Object value)
Creates a task property filter.
Task property filters can be used to filter tasks in the findTask methods like IWorkflowContext.findTasks(IPropertyFilter, List, int, int, boolean)
Example:
IPropertyFilter
IPropertyFilter
IPropertyFilter
property
- the case property to filter withoperator
- the filter operatorvalue
- the value to filter for. Can be null. Must respect the type of the property. I.e. the name property should have a String value.IPropertyFilter<WorkflowEventProperty> createWorkflowEventPropertyFilter(WorkflowEventProperty property, RelationalOperator operator, Object value)
Creates a workflow event property filter.
Workflow Event property filters can be used to filter workflow events in the findWorkflowEvent methods like IWorkflowContext.findWorkflowEvents(IPropertyFilter, List, int, int, boolean)
Example:
IPropertyFilter
IPropertyFilter
IPropertyFilter
property
- the case property to filter withoperator
- the filter operatorvalue
- the value to filter for. Can be null. Must respect the type of the property. I.e. the username property should have a String value.IPropertyFilter<IntermediateEventProperty> createIntermediateEventPropertyFilter(IntermediateEventProperty property, RelationalOperator operator, Object value)
Creates an intermediate event property filter.
Workflow Event property filters can be used to filter workflow events in the findWorkflowEvent methods like IWorkflowContext.findWorkflowEvents(IPropertyFilter, List, int, int, boolean)
Example:
IPropertyFilter
property
- the intermediate event property to filter withoperator
- the filter operatorvalue
- the value to filter for. Can be null. Must respect the type of the property. I.e. the taskId property should be an integer value.ICase findCase(long caseIdentifier) throws PersistencyException
caseIdentifier
- the case identifierPersistencyException
- if persistency access failsIQueryResult<ICase> findCases(String propertyName, String propertyValue, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Consider to use the CaseQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
CaseQuery query = CaseQuery.create()
.where().additionalProperty("myPropertyName").isLike("myValue");
List cases = ivy.wf.getCaseQueryExecutor().getResults(query, startIndex, count);
propertyName
- the additional property name.propertyValue
- the additional property valuestartIndex
- the index of the first case of all cases found returned. Must be >= 0.count
- how many cases found are returned. Must be >= 0 or -1 which means return all.returnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall cases that have been found, if false it returns -1query result
with all founded casesPersistencyException
- if persistency access failsIAdditionalPropertyable.setAdditionalProperty(String, String)
,
IAdditionalPropertyable.getAdditionalProperty(String)
,
CaseQuery
,
IWorkflowContext.getCaseQueryExecutor()
IQueryResult<ICase> findCases(IPropertyFilter<CaseProperty> filter, List<PropertyOrder<CaseProperty>> order, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Find cases using a filter
The filter can be created with the method IWorkflowContext.createCasePropertyFilter(CaseProperty, RelationalOperator, Object)
.
The order can be created with the method PropertyOrder.create(IProperty, OrderDirection)
.
Example:
import ch.ivyteam.ivy.persistence.OrderDirection;
import ch.ivyteam.ivy.workflow.PropertyOrder;
import ch.ivyteam.ivy.workflow.IPropertyFilter;
import ch.ivyteam.ivy.persistence.IQueryResult;
import ch.ivyteam.ivy.workflow.CaseProperty;
import ch.ivyteam.logicalexpression.RelationalOperator;
// create order
List order = PropertyOrder.create(CaseProperty.PROCESS_CODE, CaseProperty.PROCESS_CATEGORY_CODE);
// create filter
IPropertyFilter filter = ivy.wf.createCasePropertyFilter(CaseProperty.PROCESS_CODE, RelationalOperator.EQUAL, "MY_PROCESS_CODE");
// execute query
IQueryResult result = ivy.wf.findCases(filter, order, 0, -1, true);
Consider to use the CaseQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
CaseQuery query = CaseQuery.create()
.where().processCode().isEqual("MY_PROCESS_CODE")
.orderBy().processCode().processCategoryCode();
List<ICase> cases = ivy.wf.getCaseQueryExecutor().getResults(query, startIndex, count);
filter
- a filter expression to filter the cases. Can be null.order
- specifies how to order the result. Can be null.startIndex
- the index of the first case of all cases found returned. Must be >= 0count
- how many cases found are returned. Must be >= 0 or -1 which means return all.returnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall cases that have been found, if false it returns -1query result
of the founded casesPersistencyException
- if persistency access failsIWorkflowContext.createCasePropertyFilter(CaseProperty, RelationalOperator, Object)
,
PropertyOrder.create(IProperty)
,
PropertyOrder.create(IProperty...)
,
PropertyOrder.create(IProperty, OrderDirection)
,
PropertyOrder.create(IProperty, OrderDirection, IProperty, OrderDirection)
,
PropertyOrder.create(IProperty, OrderDirection, IProperty, OrderDirection, IProperty, OrderDirection)
,
CaseQuery
,
IWorkflowContext.getCaseQueryExecutor()
int getRunningCasesCount(IProcessModelVersion processModelVersion) throws PersistencyException
Gets the number of running cases of a process model version.
A case is running if it is in state CaseState.CREATED
or CaseState.RUNNING
.
processModelVersion
- the process model version to checkPersistencyException
- if persistency access failsITask findTask(long taskIdentifier) throws PersistencyException
taskIdentifier
- the identifier of the taskPersistencyException
- if persistency access failsIQueryResult<ITask> findTasks(String propertyName, String propertyValue, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Finds all tasks which have an additional property with the given name and value.
Consider to use the TaskQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
TaskQuery query = TaskQuery.create()
.where().additionalProperty("myPropertyName").isLike("myValue");
List<ITask> tasks = ivy.wf.getTaskQueryExecutor().getResults(query, startIndex, count);
propertyName
- the additional property namepropertyValue
- the additional property value.startIndex
- the index of the first task of all tasks found returned. Must be >= 0.count
- how many tasks found are returned. Must be >= 0 or -1 which means all.returnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall cases that have been found, if false it returns -1query result
with all found tasksPersistencyException
- if persistency access failsIAdditionalPropertyable.setAdditionalProperty(String, String)
,
IAdditionalPropertyable.getAdditionalProperty(String)
,
TaskQuery
,
IWorkflowContext.getTaskQueryExecutor()
IQueryResult<ITask> findTasks(IPropertyFilter<TaskProperty> filter, List<PropertyOrder<TaskProperty>> order, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Find tasks using a filter.
The filter can be created with the method IWorkflowContext.createTaskPropertyFilter(TaskProperty, RelationalOperator, Object)
.
The order can be created with the method PropertyOrder.create(IProperty, OrderDirection)
.
Example:
import ch.ivyteam.ivy.persistence.OrderDirection;
import ch.ivyteam.ivy.workflow.PropertyOrder;
import ch.ivyteam.ivy.workflow.IPropertyFilter;
import ch.ivyteam.ivy.persistence.IQueryResult;
import ch.ivyteam.ivy.workflow.TaskProperty;
import ch.ivyteam.logicalexpression.RelationalOperator;
// create order
List order = PropertyOrder.create(TaskProperty.TYPE_CODE, TaskProperty.SUB_TYPE_CODE);
// create filter
IPropertyFilter filter = ivy.wf.createTaskPropertyFilter(TaskProperty.TYPE_CODE, RelationalOperator.EQUAL, "MY_TYPE_CODE");
// execute query
IQueryResult result = ivy.wf.findTasks(filter, order, 0, -1, true);
Consider to use the TaskQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
TaskQuery query = TaskQuery.create()
.where().typeCode().isEqual("MY_TYPE_CODE")
.orderBy().typeCode().subTypeCode();
List<ITask> tasks = ivy.wf.getTaskQueryExecutor().getResults(query, startIndex, count);
filter
- a filter expression to filter the tasks. Can be null.order
- how to order the result. Can be null.startIndex
- the index of the first task of all tasks found returned. Must be >= 0.count
- how many tasks found are returned. Must be >=0 or -1 which means all.returnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall cases that have been found, if false it returns -1query result
with the found tasksPersistencyException
- if persistency access failsIWorkflowContext.createTaskPropertyFilter(TaskProperty, RelationalOperator, Object)
,
PropertyOrder.create(IProperty)
,
PropertyOrder.create(IProperty...)
,
PropertyOrder.create(IProperty, OrderDirection)
,
PropertyOrder.create(IProperty, OrderDirection, IProperty, OrderDirection)
,
PropertyOrder.create(IProperty, OrderDirection, IProperty, OrderDirection, IProperty, OrderDirection)
,
TaskQuery
,
IWorkflowContext.getTaskQueryExecutor()
IQueryResult<ITask> findWorkTasks(IUser user, int startIndex, int count) throws PersistencyException
Finds tasks that a given user can work on (currently working or can start).
Note: if parameter count
is specified, then this method does not provide the whole number
of matching tasks on IQueryResult.getAllCount()
Consider to use the TaskQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
TaskQuery query = TaskQuery.create()
.where().canWorkOn(user);
List<ITask> tasks = ivy.wf.getTaskQueryExecutor().getResults(query, startIndex, count);
user
- an ivy userstartIndex
- index of the first result that is returned (0..n, first entry is 0)count
- maximum number of results to return (-1 for all)PersistencyException
- if persistency access failsIWorkflowContext.findWorkTasks(IUser, IPropertyFilter, List, int, int, boolean, EnumSet)
,
TaskQuery
,
IWorkflowContext.getTaskQueryExecutor()
IQueryResult<ITask> findWorkTasks(IUser user, IPropertyFilter<TaskProperty> filter, List<PropertyOrder<TaskProperty>> order, int startIndex, int count, boolean returnAllCount, EnumSet<TaskState> includeTaskStates) throws PersistencyException
Finds tasks that a given user can work on (currently working or can start).
Task filter can be created with the method IWorkflowContext.createTaskPropertyFilter(TaskProperty, RelationalOperator, Object)
.
Consider to use the TaskQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons. E.g:
TaskQuery query = TaskQuery.create()
.where().canWorkOn(user)
.and().state().isEqual(TaskState.SUSPENDED);;
List<ITask> tasks = ivy.wf.getTaskQueryExecutor().getResults(query, startIndex, count);
user
- an ivy userfilter
- additional filter for tasks (can be null)order
- sorting order for results (ORDER BY)startIndex
- index of the first result that is returned (0..n, first entry is 0)count
- maximum number of results to returnreturnAllCount
- whether the overall result counter should be returned (consider performance effects), see IQueryResult.getAllCount()
includeTaskStates
- only tasks with listed states will be included in result (cannot be null).PersistencyException
- if persistency access failsIWorkflowContext.findWorkTasks(IUser, int, int)
,
TaskQuery
,
IWorkflowContext.getTaskQueryExecutor()
IQueryResult<IWorkflowEvent> findWorkflowEvents(IPropertyFilter<WorkflowEventProperty> filter, List<PropertyOrder<WorkflowEventProperty>> order, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Finds workflow events.
The filter can be created with the method IWorkflowContext.createWorkflowEventPropertyFilter(WorkflowEventProperty, RelationalOperator, Object)
.
filter
- Filter criteria to specify which workflow
events should be read. Can be null.order
- how to order the result. Can be null.startIndex
- the index of the first task of all tasks found returned. Must be >= 0.count
- maximum number of workflow events to be returned. Must be >= 0 or -1 to return all.returnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall cases that have been found, if false it returns -1query result
with the found workflow eventsPersistencyException
- if persistency access failsIQueryResult<IIntermediateEvent> findIntermediateEvents(IPropertyFilter<IntermediateEventProperty> filter, List<PropertyOrder<IntermediateEventProperty>> order, int startIndex, int count, boolean returnAllCount) throws PersistencyException
Finds intermediate events
The filter can be created with the method IWorkflowContext.createIntermediateEventPropertyFilter(IntermediateEventProperty, RelationalOperator, Object)
.
filter
- Filter criteria to specify which intermediate
events should be read. Can be null.order
- how to order the result. Can be null.startIndex
- the index of the first intermediate event of all intermediate events found returned. Must be >= 0.count
- how many intermediate events found are returned. Must be >= 0 or -1 which means allreturnAllCount
- if true the query result method IQueryResult.getAllCount()
returns the overall intermediate events that have been found, if false it returns -1query result
with the found intermediate eventsPersistencyException
- if persistency access failsvoid deleteCompletedCase(ICase completedCase) throws PersistencyException
Deletes the given completed case and all belonging objects (tasks, workflow events, notes, process data etc.).
A completed case is a case that has the state CaseState.DESTROYED
or CaseState.DONE
or CaseState.ZOMBIE
.
This method can be used to clean up the database.
Warning: This method deletes the data of the given case permanently. It is not possible to restore the data afterwards.
completedCase
- the case to delete permanently. Must not be nullPersistencyException
- if persistency access failsIllegalStateException
- if the given case is not in state CaseState.DESTROYED
or CaseState.DONE
or CaseState.ZOMBIE
IWorkflowSession getWorkflowSession(ISession session) throws PersistencyException
Gets the workflow session that belongs to the given security session. The security session and the workflow session are two interfaces to the same object. With this method you can navigate from one interface to the other.
session
- the security sessionPersistencyException
- if persistency access fails@Deprecated List<IGroup<ITask>> findTaskCategories(IPropertyFilter<TaskProperty> categoryFilter, TaskProperty categoryProperty, OrderDirection categoryPropertyOrder) throws PersistencyException
CategoryTree.createFor(TaskQuery)
insteadTasks can be categorized in a tree structure using the following task properties from top to bottom TaskProperty.PROCESS_CATEGORY_CODE
, TaskProperty.PROCESS_CODE
, TaskProperty.TYPE_CODE
, TaskProperty.SUB_TYPE_CODE
, TaskProperty.KIND_CODE
.
This method can be used to find the children of a node in the categorized tree structure.
The top level tree nodes can be found using TaskProperty.PROCESS_CATEGORY_CODE
as categoryProperty and null as categoryFilter.
Children of a top level node can be found using the categoryFilter specifying the value of the TaskProperty.PROCESS_CATEGORY_CODE
of the node and TaskProperty.PROCESS_CODE
as categoryFilter.
And so on until you are on the button of the tree using TaskProperty.KIND_CODE
as categoryProperty. You may now use the method IWorkflowContext.findTasks(IPropertyFilter, List, int, int, boolean)
to find all tasks that belong to the bottom group
Each category found is returned as a group. A group knows the number of objects contained in the group. Moreover, one example object of the group that represents all the entries in this group. It can be used to evaluate the category value of this group.
Consider to use the TaskQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons and grouping. E.g:
TaskQuery query = TaskQuery.create()
.where().processCategoryCode().isEqual("MY_CATEGORY_CODE")
.groupBy().processCode()
.aggregate().countRows();
Recordset rs = ivy.wf.getTaskQueryExecutor().getRecordset(query);
categoryFilter
- filters the categories. Can be null.categoryProperty
- a task property that is used to build the categories (E.g. one of TaskProperty.PROCESS_CATEGORY_CODE
, TaskProperty.PROCESS_CODE
, TaskProperty.TYPE_CODE
, TaskProperty.SUB_TYPE_CODE
, TaskProperty.KIND_CODE
)categoryPropertyOrder
- the order in which the categoryProperty should be ordered in. Can be null.task categories
.PersistencyException
- if persistency access failsTaskQuery
,
IWorkflowContext.getTaskQueryExecutor()
@Deprecated List<IGroup<ICase>> findCaseCategories(IPropertyFilter<CaseProperty> categoryFilter, CaseProperty categoryProperty, OrderDirection categoryPropertyOrder) throws PersistencyException
CategoryTree.createFor(CaseQuery)
insteadCases can be categorized in a tree structure using the following case properties from top to bottom CaseProperty.PROCESS_CATEGORY_CODE
, CaseProperty.PROCESS_CODE
, CaseProperty.TYPE_CODE
, CaseProperty.SUB_TYPE_CODE
.
This method can be used to find the children of a node in the categorized tree structure.
The top level tree nodes can be found using CaseProperty.PROCESS_CATEGORY_CODE
as categoryProperty and null as categoryFilter.
Children of a top level node can be found using the categoryFilter specifying the value of the CaseProperty.PROCESS_CATEGORY_CODE
of the node and CaseProperty.PROCESS_CODE
as categoryFilter.
And so on until you are on the button of the tree using CaseProperty.SUB_TYPE_CODE
as categoryProperty. You may now use the method IWorkflowContext.findCases(IPropertyFilter, List, int, int, boolean)
to find all cases that belong to the bottom group
Each category found is returned as a group. A group knows the number of objects contained in the group. Moreover, one example object of the group that represents all the entries in this group. It can be used to evaluate the category value of this group.
Consider to use the CaseQuery
API alternatively.
This fluent API makes the statement combinable with other filters
and allows SQL-like value comparisons and grouping. E.g:
CaseQuery query = CaseQuery.create()
.where().processCategoryCode().isEqual("MY_CATEGORY_CODE")
.groupBy().processCode()
.aggregate().countRows();
Recordset rs = ivy.wf.getCaseQueryExecutor().getRecordset(query);
categoryFilter
- filters the categories. Can be null.categoryProperty
- a case property that is used to build the categories (E.g. one of CaseProperty.PROCESS_CATEGORY_CODE
, CaseProperty.PROCESS_CODE
, CaseProperty.TYPE_CODE
, CaseProperty.SUB_TYPE_CODE
})categoryPropertyOrder
- the order in which categoryProperty should be ordered in. Can be null.case categories
.PersistencyException
- if persistency access failsCaseQuery
,
IWorkflowContext.getCaseQueryExecutor()
IIntermediateEvent fireIntermediateEvent(IIntermediateEventElement intermediateEventElement, String eventIdentifier, Object resultObject, String additionalInformation) throws PersistencyException
intermediateEventElement
- the intermediate event element to fire the intermediate event on.eventIdentifier
- the event identifier.resultObject
- the result object. Can be null.additionalInformation
- additional information about the event.PersistencyException
- if persistency access failsITaskQueryExecutor getTaskQueryExecutor()
task queries
on this application.TaskQuery
ICaseQueryExecutor getCaseQueryExecutor()
case queries
on this application.CaseQuery
IGlobalWorkflowContext getGlobalContext()
IGlobalWorkflowContext
Set<IProcessStart> findProcessStartsBySignature(String signature)
signature
- the signature of the searched process, i.e. mySignature(java.lang.String):java.lang.IntegerList<IProcessStart> getStartableProcessStarts(IUser user)
user
- List<IWebStartable> getStartables(IUser user)
user
- IDocumentService documents()
Examples:
Add a document:
IDocument document = ivy.wf.documents().add(new Path("images/myImage.png")).write().withContentFrom(in.file);
Get all documents:
List<IDocument> documents = ivy.wf.documents().getAll();
IBpmSignalService signals()
A service for sending and querying signals.
Example: send a signal:ivy.wf.signals().send("user:created");
Copyright © 2024
AXON IVY AG
All Rights Reserved Documentation was generated
on April 28, 2024