Interface ProcessDesignService
- All Superinterfaces:
ContextSensitiveSingletonService
,Service
ProcessDesignService
is used for creating and modifying
ProcessModel
which are organized by storing them in
ProcessModelFolder
objects. It also contains methods for
handling the security of these objects. It mainly deals with the design of
Process Models whereas the ProcessExecutionService
deals with all
aspects of starting and maintaining instances of a ProcessModel
(Process
).
A ProcessModelFolder
can be created and modified with this
service. Process models are organized into folders in the process model
pickers.
ProcessModel
objects created by this service can be run
using the ProcessExecutionService
.
When a ProcessModel
is being designed it is considered a draft.
When a designer is satisfied with their design he or she may save the
ProcessModel
using updateProcessModel(ProcessModel)
and create a new version using versionProcessModel(ProcessModel)
.
When a ProcessModel
is first versioned it is given the version
"1.0" and all subsequent versions are incremented by 1.0. Versions of a
ProcessModel
cannot be run until they are published, and
a ProcessModel
version cannot be published unless it is valid.
A ProcessModel
can be validated using the
validateProcessModel(ProcessModel)
method.
A ProcessModel
can be locked by a user so that no other
users can edit the ProcessModel
. However, a User
can attempt to override the lock placed on a ProcessModel
by
another User
by calling lockProcessModel(Long,boolean)
or unlockProcessModel(Long,boolean)
and setting the override
boolean
to true
.
In addition to regular ProcessNode
objects a
ProcessModel
can contain other ProcessModel
objects through sub and linked processes.
A sub-process is a node which contains a ProcessModel
. This
node is considered a single node by the parent ProcessModel
.
When a sub-process node is reached during process execution the sub-process
is started and the sub-process node is considered active. The node does not
complete until the sub-process has completed.
A linked-process is a node which starts an instance of a
ProcessModel
. Once the linked-process has been started the
linked-process node is considered complete by the parent
Process
.
As mentioned above, this service contains methods relating to the security
and permissions of various objects. The permissions which can be obtained
through this service include: getPermissionsForFolder(Long)
,
#getPermissionsForPalette(Long)
,
getPermissionsForProcessApplication()
, and
getPermissionsForProcessModel(Long)
. These methods should be used
when determining which actions a User
can perform on the
corresponding object. Permissions are obtained through
ProcessModelPermissions
. These may be referenced to determine
whether a user has sufficient privileges to perform a particular action.
Methods of service classes can all throw the unchecked exception
ServiceException
if any
system-level error (for example, server failure) occurs, and will in general
throw a checked exception (InvalidXXXException
) when an entity
to be retrieved is inaccessible, instead of returning null
.
Exceptions to this paradigm (including the use of ResultList
as
described below) are noted. All checked exceptions extend
AppianException
.
It may be necessary to retrieve a subset of results as opposed to an entire
collection, and also to sort the subset by some property of the returned
object. "Paging" methods which return a
ResultPage
are provided in certain
instances for this purpose. The ResultPage
will contain the
sorted subset of results
(via Result.getResults()
), and the
total number of items in the available result set
(via ResultPage.getAvailableItems()
).
It may also be necessary to retrieve some results, even if all results
cannot be retrieved (for instance, some of the entities corresponding
to a list of entity IDs may no longer exist). Methods which return a
ResultList
are provided for this
purpose. The Result.getResults()
method in this case will return all results which can be retrieved. In
addition, there will be a list of result codes
(ResultList.getResultCodes()
) that
represent the successful retrieval of an entity, or, if the entity could
not be retrieved, the reason for the failure. See the CODE_XXX
constants in ResultList
for details.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final boolean
static final boolean
static final int
All possible sub-process statesstatic final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final int
Indicates that there is no recursion in the process model, the subprocess model, or between the process model and sub-process modelstatic final int
Sub-process is embedded in the parent processstatic final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final int
Sub-process is independent of the parent processstatic final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final int
Indicates that the parent process model recurses (including the situation where the parent recurses through addition of the sub-process model)static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final int
Indicates that any sub-process of the parent process recursesstatic final boolean
static final boolean
static final Integer
Get unpublished children failed because the process model specified did not existstatic final Integer
Get unpublished children failed because the process model specified did not existstatic final Integer
Get unpublished children failed because the user did not have publish permissionsstatic final Integer
Get unpublished children failed because the user did not have view permissionsstatic final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
static final boolean
Fields inherited from interface com.appiancorp.services.ContextSensitiveSingletonService
CONFIGURE_METHOD_NAME
-
Method Summary
Modifier and TypeMethodDescriptionvoid
activateUserSession
(Long[] membership_, Long[] administration_, Long userTypeId_, String username) Notifies the Process application that a new session has been created for the current user, and provides information about the current user's membership and administration rights to groups.void
addProcessModelToFavorites
(Long modelId_) Associates thisProcessModel
by givenmodelId_
as one of the current user's favorites.void
Deprecated.void
createBusinessEntity
(BusinessEntity business_) Creates aBusinessEntity
for use with Web Services.createFolder
(ProcessModelFolder folder_) Creates a folder for storing process models.Creates aProcessModel
in the database using the input parameter.void
Create aProcessModelWebService
.void
deleteFolder
(Long folderId_) Deletes aProcessModelFolder
deleteFolders
(Long[] folders_) Deletes a list of foldersvoid
deleteProcessModel
(Long processModelId_) Deletes a process model.void
deleteProcessModels
(Long[] processModelIds_) Deletes multipleProcessModel
objects.deleteProcessModelVersion
(Long processModelId_, String version_) Deletes a version of aProcessModel
.void
deleteProcessModelWebService
(String serviceName_) Deletes aProcessModelWebService
based on the service name which it contains.void
disableProcessModel
(Long processModelId_, String version_) Disables a version of aProcessModel
.void
enableProcessModel
(Long processModelId_, String version_) Enables aProcessModel
version.evaluateExpression
(String expression) Evaluate the given expression (including java expression functions).evaluateExpression
(String expression, NamedTypedValue[] variableValues) Evaluate the given expression (including java expression functions).evaluateExpressionInVariableContext
(String expression, NamedTypedValue[] typedVariables, NamedTypedValue[] continueParams) exportProcessModel
(Long processModelId_) Retrieve a working draft of aProcessModel
.exportProcessModelVersion
(Long processModelId_, String version_) Retrieves a version of aProcessModel
.externalizeExpression
(String expression, String... parameterNames) Replaces rule names with UUIDs within the given expression.findEventsPaging
(String searchString_, Long pmId_, Long[] eventTypes_, Boolean includeStartEvents_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Searches for Events associated with the given Process Model that match the specified searchString.getACInstanceIdsForLocalIds
(String[] localIds_) Returns aResultList
containing the actual Id's in database corresponding to given localId's ofActivityClass
getACPInstanceIdsForLocalIds
(Long activityClassLocalId_, String[] localIds_) Returns aResultList
containing the actual Id's in database forActivityClassParameter
corresponding to given aActivityClass
localId andActivityClassParameter
localId's.getACSchemaByLocalId
(String acsLocalId_) Retrieves anActivityClassSchema
by local id.getActivityClassSchema
(Long acsId_) Retrieves anActivityClassSchema
.Identity[]
getActivityClassSchemas
(Long[] acsIds_) Retrieves a list of abbreviatedActivityClassSchema
representations for the given IDsRetrieves the activity class schemas for the activity classes that operate on the assignee pool.Retrieves the activity class schemas for the activity classes that operate on the assignment pool.getAsynchronousSubProcessModelDescriptorsForProcessModel
(Long processModelId_) Retrieve a list of process model descriptors that represent the working drafts of all linked process models for the given process model.Retrieves theBusinessEntity
which has been created on the system.getChildFolders
(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Gets all the direct child folders of a process model folderint
getCountProcessModelParametersForVersion
(Long processModelId_, String version_) Retrieves count of all of the process variables that are required to start an instance of the given process model version (ie.String[]
Deprecated.since 23.2getDashboardPageForProcessModel
(Long processModelId_) Returns the dashboard Id that is used for theProcessModel
by givenprocessModelId_
Retrieves the defaultPriority
for the system.Returns the Id of the folder where attachments will be stored when an email message is sent to either theProcessModel
or any event within theProcessModel
Retrieves the activity class schemas for activities that can be used as escalations.String[]
getEventOrProcessModelNames
(Long[] pmIds_, String[] eventPersistentIds_) Returns the display names of processModels and Events for the providedProcessModel
Ids and Event IdsgetEventsByPersistentId
(String[] eventPersistentIds_) Returns a ResultList containing Events that correspond to the passed in array of Event persistent IDs.getEventsForProcessModelPaging
(Long pmId_, Long[] eventTypes_, Boolean includeStartEvents_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Returns the Events for a givenProcessModel
specified byeventTypes_
.getExpressionDependencies
(String[] expression, String[] parameterNames) Returns an array of theExpressionDependency
objects for the given expressions.getExpressionDependencies
(String expressionText, String... parameterNames) Returns the expression dependencies for the givenexpressionText
.Retrieves aProcessModelFolder
.getFolders
(Long[] folderIds_) Retrieves multiple process model foldersgetFormConfig
(Long processModelId_) Retrieves theFormConfig
of the draft of the given process model.getFormConfigForVersion
(Long processModelId, String version) Retrieves theFormConfig
of the given process model version.getLingeringTasksForProcessModel
(Long processModelId_, boolean recursive_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Returns all instances of lingering nodes in the specified process.getLinkProcessModelDescriptorsForProcessModel
(Long processModelId_) Deprecated.int
Returns the maximum number of attachments that can be added to a process model or process node.int
Deprecated.since 23.2RetrievesProcessModel
objects for which the current user is an owner.getParentsForProcessModel
(Long processModelId_) Retrieves the working drafts of the parents of aProcessModel
.getParentsOfUnpublishedChildrenForProcessModel
(Long processModelId_) Returns the working drafts of the parents of the unpublished children (sub process models) of aProcessModel
.getPermissionsForFolder
(Long folderId_) RetrievesProcessModelFolderPermissions
for aProcessModelFolder
getPermissionsForFolders
(Long[] folderIds_) RetrievesProcessModelFolderPermissions
objects for multipleProcessModelFolder
objects.Retrieves permissions on the Process application for the current userRetrieves permissions on a process model for the current user.getPermissionsForProcessModels
(Long[] ids_) Retrieves permissions on multiple process models objects for the current user.getPmIdForEvent
(String eventPersistentId_) Returns the ID of theProcessModel
that the Event by giveneventPersistentId
belongs to.getPriority
(Long priorityId_) Retrieves aPriority
getPriorityOfProcessModel
(Long processModelId_) Retrieves the priority for aProcessModel
.getProcessDashboardPageForProcessModel
(Long processModelId_) Returns the dashboard Id that is used for all processes spawned from theProcessModel
by givenprocessModelId_
getProcessModel
(Long processModelId_) Retrieve a working draft of aProcessModel
.getProcessModelByUuid
(String uuid_) Retrieves the working draft of theProcessModel
specified by a UUID (Universal Unique Identifier).getProcessModelDescriptor
(Long processModelId_) Retrieves a process model descriptor representing the working draft of a process model.getProcessModelDescriptors
(Long[] pmIds_) Retrieves multiple process model descriptors, representing the working drafts of the given process modelsgetProcessModelDescriptorsContainingAsynchronousSubProcessModel
(Long linkProcessModelId_) Retrieves process model descriptors representing the working drafts of the process models that contain the given linked process modelgetProcessModelDescriptorsContainingLinkProcessModel
(Long linkProcessModelId_) Deprecated.getProcessModelDescriptorsContainingSubProcessModel
(Long subProcessModelId_) Deprecated.getProcessModelDescriptorsContainingSynchronousSubProcessModel
(Long subProcessModelId_) Retrieves process model descriptors representing the working drafts of the process models that contain the given process model as a sub-process modelgetProcessModelDetails
(Long processModelId_) RetrievesProcessModelDetails
representing the working drafts of the givenProcessModel
If only requiring FormConfig, seegetFormConfig
in this class.getProcessModelIdByUuid
(String uuid_) Retrieves the ID of aProcessModel
by a UUID (Universal Unique Identifier).Long[]
getProcessModelIdsByUuids
(String[] pmUUIDs_) Returns the IDs of ProcessModels that match the given UUID.getProcessModelLatestPublishedVersion
(Long processModelId_) Retrieve the latest published version of aProcessModel
or the working draft if a published version does not exist.getProcessModelLatestPublishedVersionDescriptor
(Long processModelId_) Retrieve the latest published version of aProcessModel.Descriptor
or the working draft if a published version does not exist.getProcessModelParameters
(Long processModelId_) Retrieves all of the process variables that are required to start an instance of the given process model (ie.getProcessModelParametersForVersion
(Long processModelId_, String version_) Retrieves all of the process variables that are required to start an instance of the given process model version (ie.getProcessModelProperties
(Long modelId_) Retrieves theProcessModelProperties
representing the working draft of aProcessModel
.getProcessModels
(Long[] ids_) Deprecated.UsegetProcessModelDescriptors(Long[])
or callgetProcessModel(Long)
iteratively instead.getProcessModelsAndDescendants
(Long[] ids_) Retrieves multipleProcessModel
objects as well as the subProcessModel
objects which they contain.getProcessModelsForFolder
(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Retrieve process model descriptors representing the working drafts of the process models directly in a process model foldergetProcessModelsForFolderStartableOnly
(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Retrieve descriptors representing the working drafts of the startable process models directly in a process model folder.getProcessModelsForGroup
(Long groupId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Deprecated.Process models are no longer associated with groups, but rather are organized into folders.Retrieves process model descriptors which represent the working drafts of the process models that the current user has permission to startRetrieves multiple process model descriptors, representing the latest published version or a draft if there is no publish version.getProcessModelVersion
(Long processModelId_, String version_) Retrieves a version of aProcessModel
.getProcessModelVersionDescriptor
(Long processModelId_, String version_) Retrieves the process model descriptor for a version of aProcessModel
.getProcessModelWebServices
(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Retrieves allProcessModelWebService
objects on the server.getProcessStartingInfo
(String serviceName_) Retrieves theProcessStartingInfo
for a service.getProcessVariablesForModel
(Long pmId_, boolean recursive_) Returns the list of all process variables in a given process model.getProcessVariablesForModel
(String uuid, boolean recursive) Returns the list of all process variables in a given process model.int
getRecursiveRelationship
(Long processModelId_, Long subProcessModelId_) Return the status of the two process models' recursive relationshipLong[]
getRuleIdReferences
(Long pmId) Gets all the rule ids that the expressions within the process model withpmId
id contain, including nested rules referenced by all the expressions.String[]
Gets all the rule UUID references that the expressions within the process model bean (pm
) contain.getSecurityForFolder
(Long folderId_) Gets the security for a process model folderGets the security settings of the Process ApplicationGets the security settings of a process modelgetSubProcessModelDescriptorsForProcessModel
(Long processModelId_) Deprecated.getSynchronousSubProcessModelDescriptorsForProcessModel
(Long processModelId_) Gets a ResultList containing process model descriptors representing the working drafts of the sub-process models of the given process modelgetTopLevelFolders
(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Returns the top level folders in the process application that the current user can see.getTopLevelProcessModelDescriptorsForAsynchronousSubProcessModel
(Long linkProcessModelId_) Gets aResultList
containing process model descriptors that represent the working drafts of all parent process models for the given linked process modelgetTopLevelProcessModelDescriptorsForLinkProcessModel
(Long linkProcessModelId_) Deprecated.getTopLevelProcessModelDescriptorsForSubProcessModel
(Long subProcessModelId_) Deprecated.getTopLevelProcessModelDescriptorsForSynchronousSubProcessModel
(Long subProcessModelId_) Gets a ResultList containing process model descriptors that represent the working drafts of the top level process models of the given sub-process modelgetUnpublishedChildrenForProcessModel
(Long processModelId_) Returns the working draft of the unpublished children (sub process models) of the given process modelgetVersionsForProcessModel
(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Gets the versions for a process modelgetVisibleProcessVariables
(Long processModelId_) Retrieves all visible process variables associated with the given process model, or the process variables that are reportable through analytics and can be mapped in a subprocess relationshipgetVisibleProcessVariablesForVersion
(Long processModelId_, String version_) Retrieves all visible process variables associated with the given process model version, or the process variables that are reportable through analytics and can be mapped in a subprocess relationshipint[]
handleMessages
(InternalMessage[] messages_) Sends the messages to the design server to be handled by the Events framework, and returns appropriate result codes.initiateProcess
(Long processModelId, ProcessStartConfig config) Starts an instance of the given process model.internalizeExpression
(String expression) Replaces UUIDs with rule names within the given expression.boolean
isProcessModelLocked
(Long processModelId_) Determines whether a process model is lockedisStartFormCapable
(Long[] processModelIds, int capabilities) Retrieves a ResultList containing Boolean values representing whether the start form for the latest published version of each of the process models is capable of ALL the specified form capabilities.Deprecated.UsegetProcessModelDescriptors(Long[])
instead.void
lockProcessModel
(Long processModelId_, boolean override_) Locks the specified process modelvoid
moveFolder
(Long folderId_, Long parentFolderId_) Moves a process model foldervoid
moveProcessModel
(Long processModelId_, Long parentFolderId_) Moves a process model to a new process model foldervoid
notifyUserCreation
(String username_) Deprecated.done automatically by UserService.createUservoid
notifyUsersCreation
(String[] usernames_) Notifies the server that new users were created on the Personalization serverpublishProcessModel
(ProcessModel processModel_) Deprecated.use saveAndPublishProcessModelvoid
Deprecated.reloading properties is now automatic, so this call is now unnecessary and does nothing.void
removeDashboardPageForProcessModel
(Long processModelId) Disassociates the current Dashboard page for the givenProcessModel
byprocessModelId
.void
removeProcessDashboardPageForProcessModel
(Long processModelId_) Removes any custom dashboards created for instances of a particular process model.void
removeProcessModelFromFavorites
(Long modelId_) Removes thisProcessModel
by givenmodelId_
as one of the current user's favorites.void
Deprecated.saveAndPublishProcessModel
(ProcessModel processModel_, boolean overrideLock_) Attempts to lock, save, validate, and publish the given model.void
setActorsInRolesForFolder
(Long folderId_, String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) Sets actors (users and groups) in roles for a process model folder.void
setActorsInRolesForProcessApplication
(String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) Adds and/or modifies the roles of users and groups on the Process Application.void
setActorsInRolesForProcessModel
(Long id_, String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) Adds and/or modifies the roles of users and groups on a specified ProcessModel.void
setApplicationAdministratorGroup
(Long groupId_) Determines which group users need to be in to have the application administrator role.void
setCurrentNotePaths
(String[] notePaths_) Deprecated.since 23.2void
setDashboardPageForProcessModel
(Long processModelId, Long pageId) Sets a page as the Dashboard page for the givenProcessModel
byprocessModelId
.void
setDefaultPriority
(Long priorityId_) Sets the default Priority that the Process Application will use.void
setInheritanceForFolder
(Long folderId_, boolean inherits_) Sets the inheritance for a process model foldervoid
setPriorityOfProcessModel
(Long processModelId_, Long priorityId_) Sets the priority of a process modelvoid
setProcessDashboardPageForProcessModel
(Long processModelId_, Long pageId_) Sets a particular page as the dashboard for every instance of a givenProcessModel
byprocessModelId
.void
setSecurityForFolder
(Long folderId_, Security security_) Sets the security for a process model folder.void
Sets the security settings of the Process Application.void
setSecurityForProcessModel
(Long id_, Security s_) Sets the security settings of a process model.void
setSiteLocaleSettings
(SiteLocaleSettings settings_) Registers the site locale settings on the process design server.void
Set a backend timezone.void
setTimeZoneSameAs
(BackendTimeZoneSimple tz, String sameAsId) Set a backend timezone to have the same rules as another backend timezone the sameAsId.startProcess
(Long processModelId_, ProcessVariable[] variables_) Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)startProcessVersion
(Long processModelId_, ProcessVariable[] variables_, String version_, Long priorityId_) Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)startProcessWithPriority
(Long processModelId_, ProcessVariable[] variables_, Long priorityId_) Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)void
unlockProcessModel
(Long processModelId_, boolean override_) Unlocks the given process modelvoid
Unlocks all process models locked by the current user.void
updateBusinessEntity
(BusinessEntity business_) Updates aBusinessEntity
.updateFolder
(ProcessModelFolder folder_) Updates a process model folder.updateFolders
(ProcessModelFolder[] processModelFolders_) Updates a list of process model folders.Updates a process model in the database based on the input parameter.updateProcessModelsWithDescriptors
(ProcessModel.Descriptor[] descriptors_) Updates process models in the database.void
updateUsernames
(String[] oldUsernames_, String[] newUsernames_, long maxExpirationTimeInSeconds_) Deprecated.validate()
Runs validation tests against the database to check whether it is corrupt, and returns a line-separated list of validation resultsboolean
validateGroupMembership
(Long[] memGroupIds_, Long[] admGroupIds_, Long userTypeId_, String username) Validates if the association of a user as 'Member' and as an 'Administrator has changed or not.String[]
Returns the results of validating a process modelString[]
validateProcessModelVersion
(Long processModelId_, String version_) Returns the results of validating a process model, same as getProcessModelVersion followed by validateProcessModel.boolean
validateTypedValues
(TypedValue[] typedValues) Validates given TypedValues.Boolean[]
validateUsernames
(String[] usernames_) Returns an array of Boolean values, Boolean.TRUE if the user given by the username exists and Boolean.FALSE otherwise.The returned process model is not transformed.Versions a process model in the database based on the input parameter.Methods inherited from interface com.appiancorp.services.ContextSensitiveSingletonService
configureContextSensitiveSingletonService
-
Field Details
-
DOES_NOT_RECURSE
static final int DOES_NOT_RECURSEIndicates that there is no recursion in the process model, the subprocess model, or between the process model and sub-process model- See Also:
-
PARENT_PROCESS_RECURSES
static final int PARENT_PROCESS_RECURSESIndicates that the parent process model recurses (including the situation where the parent recurses through addition of the sub-process model)- See Also:
-
SUBPROCESS_RECURSES
static final int SUBPROCESS_RECURSESIndicates that any sub-process of the parent process recurses- See Also:
-
EMBEDDED
static final int EMBEDDEDSub-process is embedded in the parent process- See Also:
-
INDEPENDENT
static final int INDEPENDENTSub-process is independent of the parent process- See Also:
-
ALL
static final int ALLAll possible sub-process states- See Also:
-
UNPUBLISHED_CHILDREN_VIEW_PERMISSIONS
Get unpublished children failed because the user did not have view permissions -
UNPUBLISHED_CHILDREN_INVALID
Get unpublished children failed because the process model specified did not exist -
UNPUBLISHED_CHILDREN_PUBLISH_PERMISSIONS
Get unpublished children failed because the process model specified did not exist -
UNPUBLISHED_CHILDREN_SUCCESS
Get unpublished children failed because the user did not have publish permissions -
createProcessModel$UPDATES
static final boolean createProcessModel$UPDATES- See Also:
-
updateProcessModel$UPDATES
static final boolean updateProcessModel$UPDATES- See Also:
-
getProcessModel$UPDATES
static final boolean getProcessModel$UPDATES- See Also:
-
exportProcessModel$UPDATES
static final boolean exportProcessModel$UPDATES- See Also:
-
listProcessModels$UPDATES
static final boolean listProcessModels$UPDATES- See Also:
-
getActivityClassSchemas$UPDATES
static final boolean getActivityClassSchemas$UPDATES- See Also:
-
getActivityClassSchema$UPDATES
static final boolean getActivityClassSchema$UPDATES- See Also:
-
getACSchemaByLocalId$UPDATES
static final boolean getACSchemaByLocalId$UPDATES- See Also:
-
startProcess$UPDATES
static final boolean startProcess$UPDATES- See Also:
-
startProcessWithPriority$UPDATES
static final boolean startProcessWithPriority$UPDATES- See Also:
-
initiateProcess$UPDATES
static final boolean initiateProcess$UPDATES- See Also:
-
getProcessModelsForGroup$UPDATES
static final boolean getProcessModelsForGroup$UPDATES- See Also:
-
getProcessModelDetails$UPDATES
static final boolean getProcessModelDetails$UPDATES- See Also:
-
getFormConfig$UPDATES
static final boolean getFormConfig$UPDATES- See Also:
-
getFormConfigForVersion$UPDATES
static final boolean getFormConfigForVersion$UPDATES- See Also:
-
isStartFormCapable$UPDATES
static final boolean isStartFormCapable$UPDATES- See Also:
-
getMyProcessModels$UPDATES
static final boolean getMyProcessModels$UPDATES- See Also:
-
getProcessModelsICanStart$UPDATES
static final boolean getProcessModelsICanStart$UPDATES- See Also:
-
getProcessModels$UPDATES
static final boolean getProcessModels$UPDATES- See Also:
-
getProcessModelParameters$UPDATES
static final boolean getProcessModelParameters$UPDATES- See Also:
-
getVisibleProcessVariables$UPDATES
static final boolean getVisibleProcessVariables$UPDATES- See Also:
-
getAssigneePoolACSchemas$UPDATES
static final boolean getAssigneePoolACSchemas$UPDATES- See Also:
-
getAssignmentPoolACSchemas$UPDATES
static final boolean getAssignmentPoolACSchemas$UPDATES- See Also:
-
activateUserSession$UPDATES
static final boolean activateUserSession$UPDATES- See Also:
-
getEscalationACSchemas$UPDATES
static final boolean getEscalationACSchemas$UPDATES- See Also:
-
deleteProcessModel$UPDATES
static final boolean deleteProcessModel$UPDATES- See Also:
-
deleteProcessModels$UPDATES
static final boolean deleteProcessModels$UPDATES- See Also:
-
getProcessModelDescriptor$UPDATES
static final boolean getProcessModelDescriptor$UPDATES- See Also:
-
getRecursiveRelationship$UPDATES
static final boolean getRecursiveRelationship$UPDATES- See Also:
-
getSubProcessModelDescriptorsForProcessModel$UPDATES
static final boolean getSubProcessModelDescriptorsForProcessModel$UPDATES- See Also:
-
getSynchronousSubProcessModelDescriptorsForProcessModel$UPDATES
static final boolean getSynchronousSubProcessModelDescriptorsForProcessModel$UPDATES- See Also:
-
getProcessModelDescriptorsContainingSubProcessModel$UPDATES
static final boolean getProcessModelDescriptorsContainingSubProcessModel$UPDATES- See Also:
-
getProcessModelDescriptorsContainingSynchronousSubProcessModel$UPDATES
static final boolean getProcessModelDescriptorsContainingSynchronousSubProcessModel$UPDATES- See Also:
-
getTopLevelProcessModelDescriptorsForSubProcessModel$UPDATES
static final boolean getTopLevelProcessModelDescriptorsForSubProcessModel$UPDATES- See Also:
-
getTopLevelProcessModelDescriptorsForSynchronousSubProcessModel$UPDATES
static final boolean getTopLevelProcessModelDescriptorsForSynchronousSubProcessModel$UPDATES- See Also:
-
getLinkProcessModelDescriptorsForProcessModel$UPDATES
static final boolean getLinkProcessModelDescriptorsForProcessModel$UPDATES- See Also:
-
getAsynchronousSubProcessModelDescriptorsForProcessModel$UPDATES
static final boolean getAsynchronousSubProcessModelDescriptorsForProcessModel$UPDATES- See Also:
-
getProcessModelDescriptorsContainingLinkProcessModel$UPDATES
static final boolean getProcessModelDescriptorsContainingLinkProcessModel$UPDATES- See Also:
-
getProcessModelDescriptorsContainingAsynchronousSubProcessModel$UPDATES
static final boolean getProcessModelDescriptorsContainingAsynchronousSubProcessModel$UPDATES- See Also:
-
getTopLevelProcessModelDescriptorsForLinkProcessModel$UPDATES
static final boolean getTopLevelProcessModelDescriptorsForLinkProcessModel$UPDATES- See Also:
-
getTopLevelProcessModelDescriptorsForAsynchronousSubProcessModel$UPDATES
static final boolean getTopLevelProcessModelDescriptorsForAsynchronousSubProcessModel$UPDATES- See Also:
-
getSecurityForProcessApplication$UPDATES
static final boolean getSecurityForProcessApplication$UPDATES- See Also:
-
setSecurityForProcessApplication$UPDATES
static final boolean setSecurityForProcessApplication$UPDATES- See Also:
-
getSecurityForProcessModel$UPDATES
static final boolean getSecurityForProcessModel$UPDATES- See Also:
-
setSecurityForProcessModel$UPDATES
static final boolean setSecurityForProcessModel$UPDATES- See Also:
-
setActorsInRolesForProcessApplication$UPDATES
static final boolean setActorsInRolesForProcessApplication$UPDATES- See Also:
-
setActorsInRolesForProcessModel$UPDATES
static final boolean setActorsInRolesForProcessModel$UPDATES- See Also:
-
getPermissionsForProcessApplication$UPDATES
static final boolean getPermissionsForProcessApplication$UPDATES- See Also:
-
getPermissionsForProcessModel$UPDATES
static final boolean getPermissionsForProcessModel$UPDATES- See Also:
-
getPermissionsForProcessModels$UPDATES
static final boolean getPermissionsForProcessModels$UPDATES- See Also:
-
getPriority$UPDATES
static final boolean getPriority$UPDATES- See Also:
-
getDefaultPriority$UPDATES
static final boolean getDefaultPriority$UPDATES- See Also:
-
setDefaultPriority$UPDATES
static final boolean setDefaultPriority$UPDATES- See Also:
-
getPriorityOfProcessModel$UPDATES
static final boolean getPriorityOfProcessModel$UPDATES- See Also:
-
setPriorityOfProcessModel$UPDATES
static final boolean setPriorityOfProcessModel$UPDATES- See Also:
-
lockProcessModel$UPDATES
static final boolean lockProcessModel$UPDATES- See Also:
-
getProcessModelVersion$UPDATES
static final boolean getProcessModelVersion$UPDATES- See Also:
-
exportProcessModelVersion$UPDATES
static final boolean exportProcessModelVersion$UPDATES- See Also:
-
versionProcessModel$UPDATES
static final boolean versionProcessModel$UPDATES- See Also:
-
getProcessModelsForFolder$UPDATES
static final boolean getProcessModelsForFolder$UPDATES- See Also:
-
getChildFolders$UPDATES
static final boolean getChildFolders$UPDATES- See Also:
-
getTopLevelFolders$UPDATES
static final boolean getTopLevelFolders$UPDATES- See Also:
-
getVersionsForProcessModel$UPDATES
static final boolean getVersionsForProcessModel$UPDATES- See Also:
-
setActorsInRolesForFolder$UPDATES
static final boolean setActorsInRolesForFolder$UPDATES- See Also:
-
unlockProcessModel$UPDATES
static final boolean unlockProcessModel$UPDATES- See Also:
-
unlockProcessModels$UPDATES
static final boolean unlockProcessModels$UPDATES- See Also:
-
getFolder$UPDATES
static final boolean getFolder$UPDATES- See Also:
-
getFolders$UPDATES
static final boolean getFolders$UPDATES- See Also:
-
startProcessVersion$UPDATES
static final boolean startProcessVersion$UPDATES- See Also:
-
getProcessModelProperties$UPDATES
static final boolean getProcessModelProperties$UPDATES- See Also:
-
getMaximumNumberOfNotes$UPDATES
static final boolean getMaximumNumberOfNotes$UPDATES- See Also:
-
getMaximumNumberOfAttachments$UPDATES
static final boolean getMaximumNumberOfAttachments$UPDATES- See Also:
-
getUnpublishedChildrenForProcessModel$UPDATES
static final boolean getUnpublishedChildrenForProcessModel$UPDATES- See Also:
-
getParentsForProcessModel$UPDATES
static final boolean getParentsForProcessModel$UPDATES- See Also:
-
getParentsOfUnpublishedChildrenForProcessModel$UPDATES
static final boolean getParentsOfUnpublishedChildrenForProcessModel$UPDATES- See Also:
-
publishProcessModel$UPDATES
static final boolean publishProcessModel$UPDATES- See Also:
-
saveAndPublishProcessModel$UPDATES
static final boolean saveAndPublishProcessModel$UPDATES- See Also:
-
getVisibleProcessVariablesForVersion$UPDATES
static final boolean getVisibleProcessVariablesForVersion$UPDATES- See Also:
-
getProcessModelParametersForVersion$UPDATES
static final boolean getProcessModelParametersForVersion$UPDATES- See Also:
-
getCountProcessModelParametersForVersion$UPDATES
static final boolean getCountProcessModelParametersForVersion$UPDATES- See Also:
-
updateFolder$UPDATES
static final boolean updateFolder$UPDATES- See Also:
-
createFolder$UPDATES
static final boolean createFolder$UPDATES- See Also:
-
disableProcessModel$UPDATES
static final boolean disableProcessModel$UPDATES- See Also:
-
enableProcessModel$UPDATES
static final boolean enableProcessModel$UPDATES- See Also:
-
deleteFolders$UPDATES
static final boolean deleteFolders$UPDATES- See Also:
-
deleteFolder$UPDATES
static final boolean deleteFolder$UPDATES- See Also:
-
updateFolders$UPDATES
static final boolean updateFolders$UPDATES- See Also:
-
updateProcessModelsWithDescriptors$UPDATES
static final boolean updateProcessModelsWithDescriptors$UPDATES- See Also:
-
getSecurityForFolder$UPDATES
static final boolean getSecurityForFolder$UPDATES- See Also:
-
setSecurityForFolder$UPDATES
static final boolean setSecurityForFolder$UPDATES- See Also:
-
getProcessModelDescriptors$UPDATES
static final boolean getProcessModelDescriptors$UPDATES- See Also:
-
getProcessModelsLatestPublishedDescriptors$UPDATES
static final boolean getProcessModelsLatestPublishedDescriptors$UPDATES- See Also:
-
getProcessModelVersionDescriptor$UPDATES
static final boolean getProcessModelVersionDescriptor$UPDATES- See Also:
-
moveProcessModel$UPDATES
static final boolean moveProcessModel$UPDATES- See Also:
-
moveFolder$UPDATES
static final boolean moveFolder$UPDATES- See Also:
-
getPermissionsForFolder$UPDATES
static final boolean getPermissionsForFolder$UPDATES- See Also:
-
getPermissionsForFolders$UPDATES
static final boolean getPermissionsForFolders$UPDATES- See Also:
-
setInheritanceForFolder$UPDATES
static final boolean setInheritanceForFolder$UPDATES- See Also:
-
deleteProcessModelVersion$UPDATES
static final boolean deleteProcessModelVersion$UPDATES- See Also:
-
getBusinessEntity$UPDATES
static final boolean getBusinessEntity$UPDATES- See Also:
-
createBusinessEntity$UPDATES
static final boolean createBusinessEntity$UPDATES- See Also:
-
updateBusinessEntity$UPDATES
static final boolean updateBusinessEntity$UPDATES- See Also:
-
getProcessModelWebServices$UPDATES
static final boolean getProcessModelWebServices$UPDATES- See Also:
-
createProcessModelWebService$UPDATES
static final boolean createProcessModelWebService$UPDATES- See Also:
-
deleteProcessModelWebService$UPDATES
static final boolean deleteProcessModelWebService$UPDATES- See Also:
-
getProcessStartingInfo$UPDATES
static final boolean getProcessStartingInfo$UPDATES- See Also:
-
getProcessModelByUuid$UPDATES
static final boolean getProcessModelByUuid$UPDATES- See Also:
-
getProcessModelIdByUuid$UPDATES
static final boolean getProcessModelIdByUuid$UPDATES- See Also:
-
getProcessModelsAndDescendants$UPDATES
static final boolean getProcessModelsAndDescendants$UPDATES- See Also:
-
getProcessModelsForFolderStartableOnly$UPDATES
static final boolean getProcessModelsForFolderStartableOnly$UPDATES- See Also:
-
validateProcessModel$UPDATES
static final boolean validateProcessModel$UPDATES- See Also:
-
validateProcessModelVersion$UPDATES
static final boolean validateProcessModelVersion$UPDATES- See Also:
-
isProcessModelLocked$UPDATES
static final boolean isProcessModelLocked$UPDATES- See Also:
-
getProcessModelLatestPublishedVersion$UPDATES
static final boolean getProcessModelLatestPublishedVersion$UPDATES- See Also:
-
getProcessModelLatestPublishedVersionDescriptor$UPDATES
static final boolean getProcessModelLatestPublishedVersionDescriptor$UPDATES- See Also:
-
getACInstanceIdsForLocalIds$UPDATES
static final boolean getACInstanceIdsForLocalIds$UPDATES- See Also:
-
getACPInstanceIdsForLocalIds$UPDATES
static final boolean getACPInstanceIdsForLocalIds$UPDATES- See Also:
-
notifyUserCreation$UPDATES
static final boolean notifyUserCreation$UPDATES- See Also:
-
notifyUsersCreation$UPDATES
static final boolean notifyUsersCreation$UPDATES- See Also:
-
validateGroupMembership$UPDATES
static final boolean validateGroupMembership$UPDATES- See Also:
-
updateUsernames$UPDATES
static final boolean updateUsernames$UPDATES- See Also:
-
commitUpdateUsernames$UPDATES
static final boolean commitUpdateUsernames$UPDATES- See Also:
-
rollbackUpdateUsernames$UPDATES
static final boolean rollbackUpdateUsernames$UPDATES- See Also:
-
setApplicationAdministratorGroup$UPDATES
static final boolean setApplicationAdministratorGroup$UPDATES- See Also:
-
reloadProperties$UPDATES
static final boolean reloadProperties$UPDATES- See Also:
-
validate$UPDATES
static final boolean validate$UPDATES- See Also:
-
setSiteLocaleSettings$UPDATES
static final boolean setSiteLocaleSettings$UPDATES- See Also:
-
getEventsForProcessModelPaging$UPDATES
static final boolean getEventsForProcessModelPaging$UPDATES- See Also:
-
findEventsPaging$UPDATES
static final boolean findEventsPaging$UPDATES- See Also:
-
getEventOrProcessModelNames$UPDATES
static final boolean getEventOrProcessModelNames$UPDATES- See Also:
-
getProcessModelIdsByUuids$UPDATES
static final boolean getProcessModelIdsByUuids$UPDATES- See Also:
-
getEmailAttachmentFolderIdForPm$UPDATES
static final boolean getEmailAttachmentFolderIdForPm$UPDATES- See Also:
-
getPmIdForEvent$UPDATES
static final boolean getPmIdForEvent$UPDATES- See Also:
-
getEventsByPersistentId$UPDATES
static final boolean getEventsByPersistentId$UPDATES- See Also:
-
setDashboardPageForProcessModel$UPDATES
static final boolean setDashboardPageForProcessModel$UPDATES- See Also:
-
getDashboardPageForProcessModel$UPDATES
static final boolean getDashboardPageForProcessModel$UPDATES- See Also:
-
removeDashboardPageForProcessModel$UPDATES
static final boolean removeDashboardPageForProcessModel$UPDATES- See Also:
-
addProcessModelToFavorites$UPDATES
static final boolean addProcessModelToFavorites$UPDATES- See Also:
-
removeProcessModelFromFavorites$UPDATES
static final boolean removeProcessModelFromFavorites$UPDATES- See Also:
-
handleMessages$UPDATES
static final boolean handleMessages$UPDATES- See Also:
-
validateUsernames$UPDATES
static final boolean validateUsernames$UPDATES- See Also:
-
getProcessVariablesForModel$UPDATES
static final boolean getProcessVariablesForModel$UPDATES- See Also:
-
getCurrentNotePaths$UPDATES
static final boolean getCurrentNotePaths$UPDATES- See Also:
-
setCurrentNotePaths$UPDATES
static final boolean setCurrentNotePaths$UPDATES- See Also:
-
getExpressionDependencies$UPDATES
static final boolean getExpressionDependencies$UPDATES- See Also:
-
evaluateExpressionInVariableContext$UPDATES
static final boolean evaluateExpressionInVariableContext$UPDATES- See Also:
-
evaluateExpression$UPDATES
static final boolean evaluateExpression$UPDATES- See Also:
-
externalizeExpression$UPDATES
static final boolean externalizeExpression$UPDATES- See Also:
-
internalizeExpression$UPDATES
static final boolean internalizeExpression$UPDATES- See Also:
-
getRuleIdReferences$UPDATES
static final boolean getRuleIdReferences$UPDATES- See Also:
-
getRuleUuidReferences$UPDATES
static final boolean getRuleUuidReferences$UPDATES- See Also:
-
evaluateRule$UPDATES
static final boolean evaluateRule$UPDATES- See Also:
-
setProcessDashboardPageForProcessModel$UPDATES
static final boolean setProcessDashboardPageForProcessModel$UPDATES- See Also:
-
getProcessDashboardPageForProcessModel$UPDATES
static final boolean getProcessDashboardPageForProcessModel$UPDATES- See Also:
-
removeProcessDashboardPageForProcessModel$UPDATES
static final boolean removeProcessDashboardPageForProcessModel$UPDATES- See Also:
-
getLingeringTasksForProcessModel$UPDATES
static final boolean getLingeringTasksForProcessModel$UPDATES- See Also:
-
validateTypedValues$UPDATES
static final boolean validateTypedValues$UPDATES- See Also:
-
setTimeZone$UPDATES
static final boolean setTimeZone$UPDATES- See Also:
-
setTimeZoneSameAs$UPDATES
static final boolean setTimeZoneSameAs$UPDATES- See Also:
-
-
Method Details
-
createProcessModel
ProcessModel createProcessModel(ProcessModel pm_) throws PrivilegeException, InvalidFolderException, InvalidPriorityException, InvalidUserException, DuplicateUuidException Creates aProcessModel
in the database using the input parameter. The database generates primary keys and reconstitutes the model to create the return value.In order to create a model at least the following fields must be populated:
LocalizedIdentity.setName(com.appiancorp.suiteapi.common.LocaleString)
AbstractProcessModel.setProcessName(com.appiancorp.suiteapi.common.LocaleString)
AbstractProcessModel.setFolderId(java.lang.Long)
AbstractProcessModel.setPriority(com.appiancorp.suiteapi.process.Priority)
- If an OR, XOR, or Complex Logic node is included in the model,
ProcessModel.setVariables(com.appiancorp.suiteapi.process.ProcessVariable[])
must be populated, because these nodes require variables to be defined.
For each process variable, the following fields must be populated:
key
,value
,type
, andmultiple
For each process node, the following fields must be populated:
id
,guiId
,ownerId
,ownerName
,groupOwnerId
,groupOwnerName
,icon
,paletteIcon
,x
,y
,activityClass
,preActivities
(can be an empty array),postActivities
(can be an empty array),connections
(can be an empty array),notify
,assign
(if the node is attended),confirmationUrl
(populated by default),schedule
,escalations
(can be an empty array),multipleInstance
,notes
(can be an empty array),attachments (can be an empty array)
,priority
,targetCompletion
(populated by default), andtargetLag
(populated by default).Within each process node, in the assign member, the following fields must be populated:
assignees
,multipleInstanceAssigneeType
,assignmentFunction
, andassignmentPosition
Within each process node, in the activity class member, the following fields must be populated:
acSchemaId
,localId
,parameters
(can be an empty list),customParameters
(can be an empty list),unattended
,runAs
(if it is unattended),outputExpressions
(can be an empty list),formConfig
(if it is attended), andhelperClass
.Within each activity class, for each activity class parameter, the following fields must be populated:
acpSchemaId
,expression
, andvalidationMessages
- Parameters:
pm_
- theProcessModel
to create- Returns:
- the created
ProcessModel
, with IDs populated. - Throws:
PrivilegeException
- if the current user does not have permission to perform this actionInvalidFolderException
- if theProcessModelFolder
does not existInvalidPriorityException
- if thePriority
does not existInvalidUserException
- if any user referenced in theProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursDuplicateUuidException
- if the UUID of the process model already exists
-
updateProcessModel
ProcessModel updateProcessModel(ProcessModel pm_) throws InvalidUuidException, InvalidProcessModelException, InvalidPriorityException, PrivilegeException, LockException, InvalidUserException Updates a process model in the database based on the input parameter. The database generates primary keys and reconstitutes the model to create the return value. Theid
anduuid
fields are only used for retrieving the model and cannot be changed since they are assigned by the server in the first place.In order to update a model at least the following fields must be populated:
LocalizedIdentity.setId(java.lang.Long)
LocalizedIdentity.setName(com.appiancorp.suiteapi.common.LocaleString)
AbstractProcessModel.setProcessName(com.appiancorp.suiteapi.common.LocaleString)
AbstractProcessModel.setPriority(com.appiancorp.suiteapi.process.Priority)
- If an OR, XOR, or Complex Logic node is included in the model,
ProcessModel.setVariables(com.appiancorp.suiteapi.process.ProcessVariable[])
must be populated, because these nodes require variables to be defined.
For each process variable, the following fields must be populated:
key
,value
,type
, andmultiple
For each process node, the following fields must be populated:
id
,guiId
,ownerId
,ownerName
,groupOwnerId
,groupOwnerName
,icon
,paletteIcon
,x
,y
,activityClass
,preActivities
(can be an empty array),postActivities
(can be an empty array),connections
(can be an empty array),notify
,assign
(if the node is attended),confirmationUrl
(populated by default),schedule
,escalations
(can be an empty array),multipleInstance
,notes
(can be an empty array),attachments (can be an empty array)
,priority
,targetCompletion
(populated by default), andtargetLag
(populated by default).Within each process node, in the assign member, the following fields must be populated:
assignees
.Within each process node, in the activity class member, the following fields must be populated:
acSchemaId
,localId
,parameters
(can be an empty list),customParameters
(can be an empty list),unattended
,runAs
(if it is unattended),outputExpressions
(can be an empty list),formConfig
(if it is attended), andhelperClass
.Within each activity class, for each activity class parameter, the following fields must be populated:
acpSchemaId
,expression
, andvalidationMessages
.- Parameters:
pm_
- the processModel to update- Returns:
- the updated process model
- Throws:
InvalidProcessModelException
- if the process model does not existPrivilegeException
- if the user does not have privileges to update the process modelLockException
- if the process model is locked by someone other than the current userInvalidUuidException
- if the specifieduuid
is used by another process modelInvalidUserException
- if any user referenced in theProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.InvalidPriorityException
-
getProcessModel
ProcessModel getProcessModel(Long processModelId_) throws PrivilegeException, InvalidProcessModelException Retrieve a working draft of aProcessModel
. If the information needed can be retrieved fromProcessModel.Descriptor
consider calling thegetProcessModelDescriptor(Long)
method instead which is considerably faster.- Parameters:
processModelId_
- ID of theProcessModel
to retrieve- Returns:
- The
ProcessModel
specified byprocessModelId_
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not existPrivilegeException
- if the currentUser
does not have sufficient privileges to view theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
exportProcessModel
ProcessModel exportProcessModel(Long processModelId_) throws PrivilegeException, InvalidProcessModelException Retrieve a working draft of aProcessModel
. UnlikegetProcessModel(java.lang.Long)
, this API does not convert rule uuids to names (within expressions). Therefore this API should be used when retrieving a model for export.- Parameters:
processModelId_
- ID of theProcessModel
to retrieve- Returns:
- The
ProcessModel
specified byprocessModelId_
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not existPrivilegeException
- if the currentUser
does not have sufficient privileges to view theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
listProcessModels
Deprecated.UsegetProcessModelDescriptors(Long[])
instead. This method performs poorly and should not be called.Lists descriptors representing the working drafts of all process models in the system.- Returns:
- an array of descriptor objects which represent the process models in the system
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getActivityClassSchemas
Retrieves a list of abbreviatedActivityClassSchema
representations for the given IDs- Parameters:
acsIds_
- the activity class schema IDs- Returns:
- An array of
Identity
objects which are abbreviated representations ofActivityClassSchema
objects. - Throws:
InvalidActivityClassSchemaException
- ifActivityClassSchema
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getActivityClassSchema
Retrieves anActivityClassSchema
.- Parameters:
acsId_
- the ID of theActivityClassSchema
to retrieve.- Returns:
- the
ActivityClassSchema
specified byacsId_
- Throws:
InvalidActivityClassSchemaException
- if theActivityClassSchema
specified byacsId_
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getACSchemaByLocalId
ActivityClassSchema getACSchemaByLocalId(String acsLocalId_) throws InvalidActivityClassSchemaException Retrieves anActivityClassSchema
by local id.- Parameters:
acsLocalId_
- the local ID of theActivityClassSchema
to retrieve.- Returns:
- the
ActivityClassSchema
specified byacsLocalId_
- Throws:
InvalidActivityClassSchemaException
- if theActivityClassSchema
specified byacsId_
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
startProcess
@Deprecated Long startProcess(Long processModelId_, ProcessVariable[] variables_) throws InvalidProcessModelException, PrivilegeException, InvalidStateException, StorageLimitException, InvalidUserException, IllegalArgumentException, Exception Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)Starts an instance of the given process model, using the given variables to initialize state.The following fields must be populated for each
ProcessVariable
object:key
,value
,type
, andmultiple
- Parameters:
processModelId_
- id of process model to startvariables_
- parameters for the process model. If using a process variable of an Appian type, do not set the value to that object but instead to the corresponding primitive. For instance, do not assign a User process variable aUser
object. Instead, assign that process variable aString
containing the username. Likewise, assign a process variable of type Group should be assigned aLong
, etc. The exception to this rule is the People type. Process variables of type People should be assigned aLocalObject
. Only the values are used for passed parameters, not expressions; expressions must be set on the process model at design time.- Returns:
- The id of the started process instance.
- Throws:
InvalidProcessModelException
- if the referenced process model does not exist or has been deleted.PrivilegeException
- if the user does not have permission to perform this action.InvalidStateException
- if there is no published version of the specified pm, the published version is disabled, or if the process model contains sub process models that have been disabled or deleted. Note that all sub process models of a published process model must have been published, but they can still be disabled.InvalidUserException
- if any user referenced in anyProcessVariable
does not exist.IllegalArgumentException
- if theProcessModel
requires process parameters to start, and thevariables_
parameter is an empty array, or does not contain all necessary process parameters.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs.NullPointerException
- ifprocessModelId_
orvariables_
array is null.Exception
StorageLimitException
-
startProcessWithPriority
@Deprecated Long startProcessWithPriority(Long processModelId_, ProcessVariable[] variables_, Long priorityId_) throws InvalidProcessModelException, InvalidPriorityException, InvalidStateException, PrivilegeException, InvalidUserException, IllegalArgumentException, Exception Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)Starts an instance of the given process model, using the given variables to initialize state. The process will be started with the priority specified.- Parameters:
processModelId_
- id of process model to startvariables_
- parameters for the process model. If using a process variable of an Appian type, do not set the value to that object but instead to the corresponding primitive. For instance, do not assign a User process variable aUser
object. Instead, assign that process variable aString
containing the username. Likewise, assign a process variable of type Group should be assigned aLong
, etc. The exception to this rule is the People type. Process variables of type People should be assigned aLocalObject
.priorityId_
- the priority with which to start the process- Returns:
- The id of the started process instance.
- Throws:
InvalidPriorityException
- if the Priority does not existInvalidProcessModelException
- if theProcessModel
does not existPrivilegeException
- if the user does not have permission to perform this actionInvalidStateException
- if there is no published version of the specified pm, the published version is disabled, or if the process model contains sub process models that have been disabled or deleted. Note that all sub process models of a published process model must have been published, but they can still be disabled.InvalidUserException
- if any user referenced in anyProcessVariable
does not existIllegalArgumentException
- if theProcessModel
requires process parameters to start, and thevariables_
parameter is null, an empty array, or does not contain all necessary process parameters.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursException
-
initiateProcess
Long initiateProcess(Long processModelId, ProcessStartConfig config) throws InvalidProcessModelException, InvalidPriorityException, InvalidVersionException, PrivilegeException, InvalidStateException, StorageLimitException, InvalidUserException, IllegalArgumentException, Exception Starts an instance of the given process model.- Parameters:
processModelId_
- id of process model to startconfig
- additional configuration to control how the process is started- Returns:
- The id of the started process instance.
- Throws:
InvalidProcessModelException
- if the referenced process model does not exist or has been deleted.PrivilegeException
- if the user does not have permission to perform this action.InvalidStateException
- if there is no published version of the specified pm, the published version is disabled, or if the process model contains sub process models that have been disabled or deleted. Note that all sub process models of a published process model must have been published, but they can still be disabled.InvalidUserException
- if any user referenced in anyProcessVariable
does not exist.IllegalArgumentException
- if theProcessModel
requires process parameters to start, and any of the required parameters are missing or have not been given a value that is not null or empty.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs.NullPointerException
- ifprocessModelId_
orvariables_
array is null.Exception
InvalidPriorityException
InvalidVersionException
StorageLimitException
-
getProcessModelsForGroup
@Deprecated ResultPage getProcessModelsForGroup(Long groupId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Deprecated.Process models are no longer associated with groups, but rather are organized into folders. UsegetProcessModelsForFolder(java.lang.Long, int, int, java.lang.Integer, java.lang.Integer)
Retrieves process model descriptors objects for all process models owned by a group- Parameters:
groupId_
- ID of theGroup
for which to retrieveProcessModel.Descriptor
objectsstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inProcessModel.Descriptor
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- A
ResultPage
which contains an array ofProcessModel.Descriptor
objects for eachProcessModel
owned by theGroup
specified bygroupId_
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDetails
ProcessModelDetails getProcessModelDetails(Long processModelId_) throws InvalidProcessModelException, PrivilegeException RetrievesProcessModelDetails
representing the working drafts of the givenProcessModel
If only requiring FormConfig, seegetFormConfig
in this class.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve theProcessModelDetails
- Returns:
- A
ProcessModelDetails
which contains details about theProcessModel
specified byprocessModelId_
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not existPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getFormConfig
FormConfig getFormConfig(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves theFormConfig
of the draft of the given process model.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve theFormConfig
- Returns:
- A
FormConfig
- Throws:
InvalidProcessModelException
PrivilegeException
-
getFormConfigForVersion
FormConfig getFormConfigForVersion(Long processModelId, String version) throws InvalidProcessModelException, InvalidVersionException, InvalidStateException, PrivilegeException Retrieves theFormConfig
of the given process model version.- Parameters:
processModelId
- ID of theProcessModel
for which to retrieve theFormConfig
version
- version of the process model (usenull
to refer to a draft, orAbstractProcessModel.LATEST_PUBLISHED_VERSION
to refer to the latest published version)- Returns:
- A
FormConfig
- Throws:
InvalidProcessModelException
InvalidVersionException
InvalidStateException
- if there is no published version of the specified pm, the published version is disabled, or if the process model contains sub process models that have been disabled or deleted. Note that all sub process models of a published process model must have been published, but they can still be disabled.PrivilegeException
-
isStartFormCapable
Retrieves a ResultList containing Boolean values representing whether the start form for the latest published version of each of the process models is capable of ALL the specified form capabilities. If the process model does not have a start form, this method will return aResultList.CODE_VALID
for that entry.- Parameters:
processModelIds
- the process model idscapabilities
- a bitwise OR of any of the following values:FormConfig.CAPABILITY_RENDER_WEB
,FormConfig.CAPABILITY_RENDER_MOBILE
- Returns:
- a ResultList containing a Boolean value for each process model that is valid
and has a published version. The result codes can be:
ResultList.CODE_VALID
if the process model exists and has the requested capability,ResultList.CODE_INVALID
if the specified process model does not exist, does not have a published version or does not have the requested capability, orResultList.CODE_NO_PERMISSION
if the user does not have permission to view the given process model.
-
getMyProcessModels
ProcessModel.Descriptor[] getMyProcessModels()RetrievesProcessModel
objects for which the current user is an owner.- Returns:
- An array of
ProcessModel.Descriptor
objects which represent theProcessModel
objects owned by the currentUser
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any sytem-level error occurs
-
getProcessModelsICanStart
ProcessModel.Descriptor[] getProcessModelsICanStart()Retrieves process model descriptors which represent the working drafts of the process models that the current user has permission to start- Returns:
ProcessModel.Descriptor
objects for eachProcessModel
which the current user can start.- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModels
Deprecated.UsegetProcessModelDescriptors(Long[])
or callgetProcessModel(Long)
iteratively instead.Retrieves multipleProcessModel
objects, representing the working drafts of the process models with the given IDs. This method will throw aPrivilegeException
if an ID points to aProcessModel
to which the current user does not have "viewer" or higher privileges. If the information needed can be retrieved fromProcessModel.Descriptor
consider calling thegetProcessModelDescriptors(Long[])
method instead which is considerably faster.- Parameters:
ids_
- Unique IDs of theProcessModel
objects to retrieve- Returns:
- The
ProcessModel
objects specified byids_
- Throws:
NullPointerException
- if it is called with a null argumentcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursPrivilegeException
- if the user does not have "viewer" or higher privileges for any of the referencedProcessModel
s.
-
getProcessModelParameters
ProcessVariable[] getProcessModelParameters(Long processModelId_) throws InvalidProcessModelException, PrivilegeException, InvalidStateException, Exception Retrieves all of the process variables that are required to start an instance of the given process model (ie. process parameters).- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve the process parameters- Returns:
ProcessVariable
objects which represent those variables which are required to start the givenProcessModel
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not exist.PrivilegeException
- if the currentUser
does not have permissions to get theProcessModel
's parametersInvalidStateException
- if there is no published version of the specified pm, the published version is disabled, or if the process model contains sub process models that have been disabled or deleted. Note that all sub process models of a published process model must have been published, but they can still be disabled.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursException
-
getVisibleProcessVariables
ProcessVariable[] getVisibleProcessVariables(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves all visible process variables associated with the given process model, or the process variables that are reportable through analytics and can be mapped in a subprocess relationship- Parameters:
processModelId_
- the unique Id of the process model to retrieve variables for- Returns:
- the visible process variables of the process model specified
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not exist.PrivilegeException
- if the currentUser
does not have permissions to get theProcessModel
's parameterscom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getAssigneePoolACSchemas
ActivityClassSchema[] getAssigneePoolACSchemas()Retrieves the activity class schemas for the activity classes that operate on the assignee pool. The assignee pool contains all users and groups which can be assigned a task, as chosen at design time.- Returns:
- An array of
ActivityClassSchema
objects which represent the functions that operate on the assignee pool. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getAssignmentPoolACSchemas
ActivityClassSchema[] getAssignmentPoolACSchemas()Retrieves the activity class schemas for the activity classes that operate on the assignment pool. The assignment pool contains all users and groups which are assigned a task at execution time.- Returns:
- An array of
ActivityClassSchema
objects which represent the functions that operate on the assignment pool. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
activateUserSession
void activateUserSession(Long[] membership_, Long[] administration_, Long userTypeId_, String username) throws InvalidUserException Notifies the Process application that a new session has been created for the current user, and provides information about the current user's membership and administration rights to groups.This method should be called every time the group membership role of the current user is changed (eg: from member to admin, etc), or when a new group is created, or when the current user was newly created. This method will skip any
null
values formembership_
oradministration_
. If theuserTypeId_
isnull
, the method will fail but will NOT throw any exceptions- Parameters:
membership_
- An array of group IDs which represent the groups to which the current user belongs.administration_
- An array of group IDs which represent the groups for which the current user is an administrator.userTypeId_
- this is one ofUserProfile.USER_TYPE_BASIC
orUserProfile.USER_TYPE_SYS_ADMIN
. If neither or null is given,UserProfile.USER_TYPE_BASIC
will be assumed.username
- the username of the user whose session is to be activated- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursInvalidUserException
-
getEscalationACSchemas
ActivityClassSchema[] getEscalationACSchemas()Retrieves the activity class schemas for activities that can be used as escalations.- Returns:
- An array of
ActivityClassSchema
objects which represent all activity classes of type Escalation - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
deleteProcessModel
void deleteProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Deletes a process model. A model can be deleted even if there are processes that have been created from it on any of the execution servers. These processes will continue after the process model has been deleted. To delete processes, useProcessExecutionService.deleteProcess(java.lang.Long, boolean)
, andProcessExecutionService.deleteProcesses(java.lang.Long[], boolean)
- Parameters:
processModelId_
- the ID of theProcessModel
to delete.- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not exist.PrivilegeException
- if the currentUser
does not have permissions to delete theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
deleteProcessModels
void deleteProcessModels(Long[] processModelIds_) throws InvalidProcessModelException, PrivilegeException Deletes multipleProcessModel
objects. A model can only be deleted if there are no processes that have been created from it on any of the execution servers. To delete processes, useProcessExecutionService.deleteProcess(java.lang.Long, boolean)
, andProcessExecutionService.deleteProcesses(java.lang.Long[], boolean)
- Parameters:
processModelIds_
- ids of process models to delete.- Throws:
InvalidProcessModelException
- if a specifiedProcessModel
does not exist.PrivilegeException
- if the currentUser
does not have permissions to delete a specifiedProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptor
ProcessModel.Descriptor getProcessModelDescriptor(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves a process model descriptor representing the working draft of a process model. This method will successfully return a valid descriptor even if the user only has "initiator" privileges over the specifiedProcessModel
.- Parameters:
processModelId_
- ID of theProcessModel
for which to get the descriptor- Returns:
ProcessModel.Descriptor
specified by givenprocessModelId_
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not existPrivilegeException
- if the currentUser
does not have sufficient privileges to get theProcessModel
descriptorcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getRecursiveRelationship
int getRecursiveRelationship(Long processModelId_, Long subProcessModelId_) throws InvalidProcessModelException Return the status of the two process models' recursive relationship- Parameters:
processModelId_
- id of process model to check for recursive relationshipsubProcessModelId_
- subProcessModel to check for relationship with parent ProcessModel- Returns:
- one of
DOES_NOT_RECURSE
,PARENT_PROCESS_RECURSES
orSUBPROCESS_RECURSES
- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getSubProcessModelDescriptorsForProcessModel
@Deprecated ResultList getSubProcessModelDescriptorsForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Gets a ResultList containing process model descriptors representing the working drafts of the subprocess models of the given process model- Parameters:
processModelId_
- the unique ID of the process model to get the sub process model descriptors for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects that are subprocesses for the given process. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getSynchronousSubProcessModelDescriptorsForProcessModel
ResultList getSynchronousSubProcessModelDescriptorsForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Gets a ResultList containing process model descriptors representing the working drafts of the sub-process models of the given process model- Parameters:
processModelId_
- the unique ID of the process model to get the sub-process model descriptors for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects that are subprocesses for the given process. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptorsContainingSubProcessModel
@Deprecated ResultList getProcessModelDescriptorsContainingSubProcessModel(Long subProcessModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Retrieves process model descriptors representing the working drafts of the process models that contain the given process model as a sub-process model- Parameters:
subProcessModelId_
- The ID of the sub process model which will be contained in the returned process models- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects representing those process models containing the given sub process model. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
given bysubProcessModelId_
is invalidPrivilegeException
- if the current user does not have sufficient permissions to view the given process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptorsContainingSynchronousSubProcessModel
ResultList getProcessModelDescriptorsContainingSynchronousSubProcessModel(Long subProcessModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves process model descriptors representing the working drafts of the process models that contain the given process model as a sub-process model- Parameters:
subProcessModelId_
- The ID of the sub-process model which will be contained in the returned process models- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects representing process models that contain the given sub process model. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
given bysubProcessModelId_
is invalidPrivilegeException
- if the current user does not have sufficient permissions to view the given process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getTopLevelProcessModelDescriptorsForSubProcessModel
@Deprecated ResultList getTopLevelProcessModelDescriptorsForSubProcessModel(Long subProcessModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Gets a ResultList containing process model descriptors representing the working drafts of the top level process models of the given sub process model- Parameters:
subProcessModelId_
- the process model to get top levelProcessModel.Descriptor
objects for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects for all top level process models of the given sub process model. This will return an empty ResultList for models that solely form a recursive loop or if called on a top-level process model. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getTopLevelProcessModelDescriptorsForSynchronousSubProcessModel
ResultList getTopLevelProcessModelDescriptorsForSynchronousSubProcessModel(Long subProcessModelId_) throws InvalidProcessModelException, PrivilegeException Gets a ResultList containing process model descriptors that represent the working drafts of the top level process models of the given sub-process model- Parameters:
subProcessModelId_
- the process model to get top levelProcessModel.Descriptor
objects for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects for all top level process models of the given sub process model. This will return an empty ResultList for models that solely form a recursive loop or if called on a top-level process model. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getLinkProcessModelDescriptorsForProcessModel
@Deprecated ResultList getLinkProcessModelDescriptorsForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Retrieve a list of process model descriptors representing the working drafts of the linked process models for a given process model.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve the linkedProcessModel.Descriptor
objects- Returns:
- a
ResultList
containingProcessModel.Descriptor
objects which represent the linkedProcessModel
objects for the specifiedProcessModel
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
is invalidPrivilegeException
- if the current user does not have sufficient privileges to access theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getAsynchronousSubProcessModelDescriptorsForProcessModel
ResultList getAsynchronousSubProcessModelDescriptorsForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieve a list of process model descriptors that represent the working drafts of all linked process models for the given process model.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve the linkedProcessModel.Descriptor
objects- Returns:
- a
ResultList
containingProcessModel.Descriptor
objects which represent the linkedProcessModel
objects for the specifiedProcessModel
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
is invalidPrivilegeException
- if the current user does not have sufficient privileges to access theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptorsContainingLinkProcessModel
@Deprecated ResultList getProcessModelDescriptorsContainingLinkProcessModel(Long linkProcessModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Retrieves process model descriptors that represent the working drafts of all process models that contain the given linked process model- Parameters:
linkProcessModelId_
- The ID of the linkedProcessModel
which will be contained in the returnedProcessModel
objects- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects which contain the linkedProcessModel
specified bylinkProcessModelId_
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the linkedProcessModel
does not existPrivilegeException
- if the current user does not have sufficient permissions to view theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptorsContainingAsynchronousSubProcessModel
ResultList getProcessModelDescriptorsContainingAsynchronousSubProcessModel(Long linkProcessModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves process model descriptors representing the working drafts of the process models that contain the given linked process model- Parameters:
linkProcessModelId_
- The ID of the linkedProcessModel
which will be contained in the returnedProcessModel
objects- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects which contain the linkedProcessModel
specified bylinkProcessModelId_
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if the linkedProcessModel
does not existPrivilegeException
- if the current user does not have sufficient permissions to view theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getTopLevelProcessModelDescriptorsForLinkProcessModel
@Deprecated ResultList getTopLevelProcessModelDescriptorsForLinkProcessModel(Long linkProcessModelId_) throws InvalidProcessModelException, PrivilegeException Deprecated.Gets aResultList
containing process model descriptors representing the working drafts of thetop level process models of the given linked process model- Parameters:
linkProcessModelId_
- the process model to get top level process model descriptors for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects for all top level process models of the given linked process model. This will return an empty ResultList for models that solely form a recursive loop or if called on a top level process model. - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getTopLevelProcessModelDescriptorsForAsynchronousSubProcessModel
ResultList getTopLevelProcessModelDescriptorsForAsynchronousSubProcessModel(Long linkProcessModelId_) throws InvalidProcessModelException, PrivilegeException Gets aResultList
containing process model descriptors that represent the working drafts of all parent process models for the given linked process model- Parameters:
linkProcessModelId_
- the process model to get top level process model descriptors for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects for all top level process models of the given linked process model. This will return an empty ResultList for models that solely form a recursive loop or if called on a top level process model. - Throws:
InvalidProcessModelException
- if the process model is invalidPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getSecurityForProcessApplication
Gets the security settings of the Process Application- Returns:
- the
Security
object (with all fields populated) that contains the security for the process application. The role maps in theSecurity
object areProcessApplicationRoleMap
objects. - Throws:
PrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setSecurityForProcessApplication
Sets the security settings of the Process Application. FieldscanInherit
andinheritable
will be ignored (doesInherit
is not ignored).- Parameters:
s_
- aSecurity
object which encapsulates the security settings of the Process Application. The role maps in theSecurity
object must beProcessRoleMap
objects- Throws:
PrivilegeException
- if the current user does not have sufficient privileges to perform this operationInvalidUserException
- if any user referenced in theSecurity
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getSecurityForProcessModel
Security getSecurityForProcessModel(Long id_) throws InvalidProcessModelException, PrivilegeException Gets the security settings of a process model- Parameters:
id_
- the unique Id of the process model- Returns:
- the
Security
object (with all fields populated) that contains the security settings of the process model. The role maps in theSecurity
object are beProcessRoleMap
objects - Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have sufficient privileges to perform this operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setSecurityForProcessModel
void setSecurityForProcessModel(Long id_, Security s_) throws InvalidProcessModelException, PrivilegeException, InvalidUserException Sets the security settings of a process model. This method does NOT setcanInherit
andinheritable
(doesInherit
is not ignored).- Parameters:
id_
- the unique Id of the process models_
- aSecurity
object which encapsulates the security settings of the process model. The role maps in theSecurity
object must beProcessRoleMap
objects- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have sufficient privileges to perform this operationInvalidUserException
- if any user referenced in theSecurity
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setActorsInRolesForProcessApplication
void setActorsInRolesForProcessApplication(String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) throws PrivilegeException, InvalidUserException, InvalidRoleException Adds and/or modifies the roles of users and groups on the Process Application. This method will only update the roles for the users and groups specified in the parameters. All other roles will not be changed. To overwrite the roles for all users and groups usesetSecurityForProcessApplication(Security)
SeeProcessRoleMap
for valid roles.- Parameters:
users_
- the list of users whose roles are to be added/modified. This parameter can be null, as long asuserRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.userRoles_
- a 2-dimentional array of size [users_.length][]. The String array userRoles_[i] represents the roles which users_[i] will have. (If this array is null or zero-length, the user have no explicit permissions in the Process Application role map). It is legal to have null within this array.groups_
- the list of groups whose roles are to be added/modified. This parameter can be null, as long asgroupRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.groupRoles_
- a 2-dimentional array of size [groups_.length][]. The String array groupRoles_[i] represents the roles which groups_[i] will have. (If this array is null or zero-length, the group have no explicit permissions in the Process Application role map). It is legal to have null within this array.- Throws:
PrivilegeException
- if the current user does not have sufficient privileges to perform this operationInvalidUserException
- if any users does not existInvalidRoleException
- if an invalid role is passed to the methodcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setActorsInRolesForProcessModel
void setActorsInRolesForProcessModel(Long id_, String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) throws InvalidProcessModelException, PrivilegeException, InvalidUserException, InvalidRoleException Adds and/or modifies the roles of users and groups on a specified ProcessModel. This method will only overwrite the roles for the users and groups specified in the parameters. All other roles will not be changed. To overwrite the roles for all users and groups usesetSecurityForProcessModel(Long, Security)
SeeProcessRoleMap
for valid roles.- Parameters:
id_
- the unique Id of the process modelusers_
- the list of users whose roles are to be added/modified This parameter can be null, as long asuserRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.userRoles_
- a 2-dimentional array of size [users_.length][]. The String array userRoles_[i] represents the roles which users_[i] will have. (If this array is null or zero-length, the user have no explicit permissions in the process model role map)groups_
- the list of groups whose roles are to be added/modified This parameter can be null, as long asgroupRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.groupRoles_
- a 2-dimentional array of size [groups_.length][]. The String array groupRoles_[i] represents the roles which groups_[i] will have. (If this array is null or zero-length, the group have no explicit permissions in the process model role map)- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have sufficient privileges to perform this operationInvalidUserException
- if any users does not existInvalidRoleException
- if an invalid role is passed to the methodcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPermissionsForProcessApplication
Retrieves permissions on the Process application for the current user- Returns:
ProcessApplicationPermissions
object which contains the permissions for the current user on the Process Application- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursInvalidUserException
-
getPermissionsForProcessModel
Retrieves permissions on a process model for the current user.- Parameters:
id_
- ID of theProcessModel
for which to get theProcessModelPermissions
- Returns:
ProcessModelPermissions
object which contains the permissions on the process model for the current user.- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPermissionsForProcessModels
ProcessModelPermissions[] getPermissionsForProcessModels(Long[] ids_) throws InvalidProcessModelException Retrieves permissions on multiple process models objects for the current user.- Parameters:
ids_
- Unique IDs of the process models for which to get theProcessModelPermissions
- Returns:
ProcessModelPermissions
which contain the permissions on the process models for the current user- Throws:
InvalidProcessModelException
- if a specifiedProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPriority
Retrieves aPriority
- Parameters:
priorityId_
- ID of thePriority
to retrieve- Returns:
- The
Priority
coresponding topriorityId_
- Throws:
InvalidPriorityException
- if thePriority
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getDefaultPriority
Priority getDefaultPriority()Retrieves the defaultPriority
for the system.- Returns:
- The default
Priority
;null
if no default is configured.
-
setDefaultPriority
Sets the default Priority that the Process Application will use.- Parameters:
priorityId_
- the ID of the priority to set as the default priority- Throws:
InvalidPriorityException
- if the specificed priority does not existIllegalArgumentException
- if anull
argument is passedcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPriorityOfProcessModel
Priority getPriorityOfProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves the priority for aProcessModel
.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve thePriority
- Returns:
- The
Priority
for theProcessModel
specified byprocessModelId_
- Throws:
InvalidProcessModelException
- if the specifiedProcessModel
does not existPrivilegeException
- if the current user does not have privileges to view the process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setPriorityOfProcessModel
void setPriorityOfProcessModel(Long processModelId_, Long priorityId_) throws InvalidPriorityException, InvalidProcessModelException, PrivilegeException Sets the priority of a process model- Parameters:
processModelId_
- the unique id of the process model to set the priority ofpriorityId_
- the unique id of the priority to set- Throws:
InvalidPriorityException
- if the priority does not existInvalidProcessModelException
- if the process model does not existPrivilegeException
- if the current user does not have sufficient permissions to perform this actioncom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
lockProcessModel
void lockProcessModel(Long processModelId_, boolean override_) throws InvalidProcessModelException, PrivilegeException, LockException Locks the specified process model- Parameters:
processModelId_
- the unique ID of the process model to lockoverride_
- whether or not to override the lock another user has placed on the process model- Throws:
InvalidProcessModelException
- if the process model does not existPrivilegeException
- if the user does not have access to lock (or override the existing lock, if specified) of the process modelLockException
- if the process model is already locked (by someone other than the user) and the user did not choose to override it.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelVersion
ProcessModel getProcessModelVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Retrieves a version of aProcessModel
. If the version isnull
or empty, it returns the latest saved draft.- Parameters:
processModelId_
- ID of theProcessModel
whose version will be retrievedversion_
- The version of theProcessModel
to retrieve- Returns:
- The
ProcessModel
given byprocessModelId_
andversion_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existInvalidVersionException
- if theProcessModel
does not have the given versionPrivilegeException
- if the current user does not have sufficient permissions to view theProcessModel
version
-
exportProcessModelVersion
ProcessModel exportProcessModelVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Retrieves a version of aProcessModel
. If the version isnull
or empty, it returns the latest saved draft. UnlikegetProcessModelVersion(java.lang.Long, java.lang.String)
, this API does not convert rule uuids to names (within expressions). Therefore this API should be used when retrieving a model for export.- Parameters:
processModelId_
- ID of theProcessModel
whose version will be retrievedversion_
- The version of theProcessModel
to retrieve- Returns:
- The
ProcessModel
given byprocessModelId_
andversion_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existInvalidVersionException
- if theProcessModel
does not have the given versionPrivilegeException
- if the current user does not have sufficient permissions to view theProcessModel
version
-
versionProcessModel
ProcessModel versionProcessModel(ProcessModel pm_) throws InvalidProcessModelException, PrivilegeException, LockException, InvalidUserException Versions a process model in the database based on the input parameter. SeecreateProcessModel(com.appiancorp.suiteapi.process.ProcessModel)
for the properties that must be populated on the process model. It creates a new process model if the process modelId
is set to -1.- Parameters:
pm_
- aProcessModel
object representing the new process model version- Returns:
- a
ProcessModel
object representing the versioned process model - Throws:
InvalidProcessModelException
- if the ID of the process model does not correspond to a valid process modelPrivilegeException
- if the user does not have privileges to version the process modelLockException
- if the process model is locked by someone other than the current userInvalidUserException
- if any of the users referenced in theProcessModel
do not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
versionProcessModel
ProcessModel versionProcessModel(ProcessDiagram pm_) throws InvalidProcessModelException, PrivilegeException, LockException, InvalidUserException The returned process model is not transformed. -
getProcessModelsForFolder
ResultPage getProcessModelsForFolder(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidFolderException, PrivilegeException Retrieve process model descriptors representing the working drafts of the process models directly in a process model folder- Parameters:
folderId_
- ID of theProcessModelFolder
for which to retrieve all containedProcessModel
objectsstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inProcessModel.Descriptor
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- Returns a
ResultPage
which contains an array ofProcessModel.Descriptor
objects - Throws:
InvalidFolderException
- if theProcessModelFolder
does not existPrivilegeException
- if the current user does not have permission to access the folder
-
getChildFolders
ResultPage getChildFolders(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidFolderException, PrivilegeException Gets all the direct child folders of a process model folder- Parameters:
folderId_
- id of the folder for which to get child foldersstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. Negative numbers will result in the entire collection being returned, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inProcessModelFolder
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- Returns a
ResultPage
which contains an array ofProcessModelFolder
objects - Throws:
InvalidFolderException
- if theProcessModelFolder
specified byfolderId_
does not existPrivilegeException
- if the current user does not have access to theProcessModelFolder
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getTopLevelFolders
ResultPage getTopLevelFolders(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Returns the top level folders in the process application that the current user can see.- Parameters:
startIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. Negative numbers will result in the entire collection being returned, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted This is one of theSORT_BY_XXX
constants located inProcessModelFolder
sortOrder_
- the order in which the results will be sorted This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- a
ResultPage
ofProcessModelFolder
objects representing the top level folders - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getVersionsForProcessModel
ResultPage getVersionsForProcessModel(Long processModelId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessModelException, PrivilegeException Gets the versions for a process model- Parameters:
processModelId_
- the id of the process model to get versions forstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inProcessModel.Descriptor
sortOrder_
- The order in which to sort the results. This is eitherConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- A
ResultPage
containingProcessModel.Descriptor
objects representing the versions of the specified process model. - Throws:
InvalidProcessModelException
- if the process model does not existPrivilegeException
- if the user does not have permissions to view the process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setActorsInRolesForFolder
void setActorsInRolesForFolder(Long folderId_, String[] users_, String[][] userRoles_, Long[] groups_, String[][] groupRoles_) throws InvalidFolderException, PrivilegeException, InvalidUserException, InvalidRoleException Sets actors (users and groups) in roles for a process model folder. This method will only overwrite the roles for the users and groups specified in the parameters. All other roles will not be changed. To overwrite the roles for all users and groups usesetSecurityForFolder(Long, Security)
SeeProcessRoleMap
for valid roles.- Parameters:
folderId_
- the unique id of the process model folderusers_
- the list of users (user names) whose roles are to be added/modified This parameter can be null, as long asuserRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.userRoles_
- a 2-dimensional array of size [users_.length]. The String array userRoles_[i] represents the roles which users_[i] will have. (If this array is null or zero-length, the user has no explicit permissions in the process model folder's role map)groups_
- the list of groups whose roles are to be added/modified This parameter can be null, as long asgroupRoles_
is also null. If one is null and the other is not, a NullPointerException will be thrown.groupRoles_
- a 2-dimentional array of size [groups_.length]. The String array groupRoles_[i] represents the roles which groups_[i] will have. (If this array is null or zero-length, the group has no explicit permissions in the process model folder's role map)- Throws:
InvalidFolderException
- if the folder does not existPrivilegeException
- if the user does not have permission to perform the operationInvalidUserException
- if any of the users do not existInvalidRoleException
- if an invalid role is passed to the methodcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
unlockProcessModel
void unlockProcessModel(Long processModelId_, boolean override_) throws InvalidProcessModelException, PrivilegeException, LockException Unlocks the given process model- Parameters:
processModelId_
- the unique id of the process model to unlockoverride_
- whether or not to break a lock on the given process model, if it is currently locked by someone other than the current user- Throws:
InvalidProcessModelException
- if the process model does not existLockException
- if the process model is already locked and the user has not specified to override itPrivilegeException
- if the user does not have privileges to unlock the process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
unlockProcessModels
void unlockProcessModels()Unlocks all process models locked by the current user.- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getFolder
Retrieves aProcessModelFolder
.- Parameters:
folderId_
- ID of theProcessModelFolder
to retrieve- Returns:
- a
ProcessModelFolder
specified byfolderId_
- Throws:
InvalidFolderException
- if theProcessModelFolder
does not existPrivilegeException
- if the currentUser
does not have permission to access to the foldercom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getFolders
Retrieves multiple process model folders- Parameters:
folderIds_
- Unique IDs of the process model folders to retrieve.- Returns:
- A
ResultList
which contains an array ofProcessModelFolder
objects, and result codes. In the case where there is an exception (such as access restriction) the ResultList.getResultCodes() will have an entry for every id passed to it, but theResult.getResults()
will only have an entry for every valid result returned. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified folder does not exist - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
startProcessVersion
@Deprecated Long startProcessVersion(Long processModelId_, ProcessVariable[] variables_, String version_, Long priorityId_) throws InvalidProcessModelException, InvalidPriorityException, InvalidVersionException, PrivilegeException, InvalidStateException, StorageLimitException, InvalidUserException, IllegalArgumentException, Exception Deprecated.UseinitiateProcess(Long, ProcessStartConfig)
, which has better enforcement of required parameters (requires that their values not be null or empty)Starts an instance of the given process model version, using the given variables to initialize state.- Parameters:
processModelId_
- id of process model to startvariables_
- parameters for the process model. If using a process variable of an Appian type, do not set the value to that object but instead to the corresponding primitive. For instance, do not assign a User process variable aUser
object. Instead, assign that process variable aString
containing the username. Likewise, assign a process variable of type Group should be assigned aLong
, etc. The exception to this rule is the People type. Process variables of type People should be assigned aLocalObject
.version_
- version of the given process model to startpriorityId_
- priority of the process model to start,null
if the default priority is to be used- Returns:
- The id of the started process instance.
- Throws:
InvalidProcessModelException
- if the process model is invalidInvalidPriorityException
- if the priority is invalidInvalidVersionException
- if the version is invalidPrivilegeException
- if the user does not have privileges to perform thisInvalidStateException
- if the version does not existStorageLimitException
- if all execution servers are fullInvalidUserException
- if any of the users users referenced by aProcessVariable
does not existIllegalArgumentException
- if theProcessModel
requires process parameters to start, and thevariables_
parameter is null, an empty array, or does not contain all necessary process parameters.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursException
-
getProcessModelProperties
ProcessModelProperties getProcessModelProperties(Long modelId_) throws PrivilegeException, InvalidProcessModelException Retrieves theProcessModelProperties
representing the working draft of aProcessModel
.- Parameters:
modelId_
- ID of theProcessModel
for which to retrieve theProcessModelProperties
- Returns:
- A
ProcessModelProperties
object which contains the properties for theProcessModel
given bymodelId_
- Throws:
PrivilegeException
- if the current user does not have sufficient privileges to view theProcessModel
InvalidProcessModelException
- if theProcessModel
does not exista
- ServiceException if any system-level error occurs
-
getMaximumNumberOfNotes
Deprecated.since 23.2Returns the maximum number of notes that can be added to a process model or process node. This property can be configured in pc.properties- Returns:
- The maximum number of notes
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getMaximumNumberOfAttachments
int getMaximumNumberOfAttachments()Returns the maximum number of attachments that can be added to a process model or process node. This property can be configured in pc.properties- Returns:
- The maximum number of attachments
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getUnpublishedChildrenForProcessModel
ResultList getUnpublishedChildrenForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Returns the working draft of the unpublished children (sub process models) of the given process model- Parameters:
processModelId_
- the id of the process model to get unpublished children for- Returns:
- a ResultList containing
ProcessModel.Descriptor
objects of the process model's unpublished children The result codes are as follows:UNPUBLISHED_CHILDREN_VIEW_PERMISSIONS
= No permissions, cannot view process model;UNPUBLISHED_CHILDREN_INVALID
= Invalid Process Model (a process model that cannot be run);UNPUBLISHED_CHILDREN_PUBLISH_PERMISSIONS
= No permissions to publish the process model;UNPUBLISHED_CHILDREN_SUCCESS
= Success - Throws:
InvalidProcessModelException
- if the process model does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursPrivilegeException
-
getParentsForProcessModel
ResultList getParentsForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Retrieves the working drafts of the parents of aProcessModel
. If the process model is not a sub process model in any other process model, the returnedResultList
will have an empty result set.- Parameters:
processModelId_
- ID of theProcessModel
for which to get the parents.- Returns:
- a ResultList containing an array of
ProcessModel.Descriptor
objects which represent the parents of theProcessModel
specified byprocessModelId_
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
does not exist.PrivilegeException
- if the user does not have privileges to view the process model
-
getParentsOfUnpublishedChildrenForProcessModel
ResultList getParentsOfUnpublishedChildrenForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Returns the working drafts of the parents of the unpublished children (sub process models) of aProcessModel
. Does not return theProcessModel
itself or its parents.- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieve the parents of the unpublished children.- Returns:
- A ResultList containing an array of
ProcessModel.Descriptor
objects which represent the parents of the unpublished children of theProcessModel
specified byprocessModelId_
. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
InvalidProcessModelException
- if theProcessModel
does not existPrivilegeException
- if the user does not have privileges to view the process modelcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs.
-
publishProcessModel
@Deprecated ProcessModel publishProcessModel(ProcessModel processModel_) throws InvalidProcessModelException, PrivilegeException, LockException, InvalidStateException, InvalidUserException Deprecated.use saveAndPublishProcessModelPublishes a process model. Unpublished children of the process model will be published and owners of the affected process models will be notified- Parameters:
processModel_
- process model to publish- Returns:
- the published process model. The process model is transformed.
- Throws:
InvalidProcessModelException
- if the ID of the process model does not correspond to a valid IDPrivilegeException
- if the user does not have privileges to publish the process modelLockException
- if the process model is lockedInvalidStateException
- if the process model is in an invalid state (not validated)InvalidUserException
- if any of the users referenced by theProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
saveAndPublishProcessModel
ProcessModelWithErrors saveAndPublishProcessModel(ProcessModel processModel_, boolean overrideLock_) throws InvalidProcessModelException, PrivilegeException, LockException, InvalidStateException, InvalidUserException, InvalidUuidException, InvalidFolderException, InvalidPriorityException Attempts to lock, save, validate, and publish the given model. If the model is new, we try to create, lock, validate, and publish. The resulting data structure contains the model that was written to the database (published if everything worked, saved if only the save worked, and null if nothing worked), along with any validation errors or warnings that were detected. During the save portion, the method can throw any of the exceptions that would be thrown by createProcessModel or updateProcessModel. If the model contains any sub-processes that are unpublished, then theProcessModel.Descriptor
objects are returned for those models that were published and owners notified, those that cannot be published and those parents of unpublished children that were notified.- Parameters:
processModel_
- the model to save and publishoverrideLock_
- whether to lock the model if it is already locked- Returns:
- a
ProcessModelWithErrors
data structure holding the saved and/or published model and descriptions of any errors that occurred - Throws:
InvalidProcessModelException
- if the ID of the process model does not correspond to a valid IDPrivilegeException
- if the user does not have privileges to save or publish the process modelLockException
- if the process model is locked and we cannot overrideInvalidStateException
- if the process model is in an invalid state (not validated)InvalidUserException
- if any of the users referenced in theProcessModel
do not existInvalidUuidException
- if any of the UUIDs referenced do not existInvalidFolderException
- if folder ID where processModel is to be saved does not existInvalidPriorityException
- if priority for the processModel is invalid
-
getVisibleProcessVariablesForVersion
ProcessVariable[] getVisibleProcessVariablesForVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Retrieves all visible process variables associated with the given process model version, or the process variables that are reportable through analytics and can be mapped in a subprocess relationship- Parameters:
processModelId_
- the unique Id of the process model to retrieve variables forversion_
- version to get the parameters for- Returns:
- the visible process variables of the process model specified by the id and version given
- Throws:
InvalidProcessModelException
- if the process model does not existInvalidVersionException
- if the version does not exsitPrivilegeException
- if the user does not have sufficient privileges to perform the operationcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelParametersForVersion
ProcessVariable[] getProcessModelParametersForVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException, Exception Retrieves all of the process variables that are required to start an instance of the given process model version (ie. process parameters)- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieveProcessParameters
version_
- The version of theProcessModel
for which to retrieveProcessParameters
(usenull
to refer to a draft)- Returns:
ProcessVariable
objects which represent those variables which are required to start theProcessModel
version given byprocessModelId_
andversion_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existInvalidVersionException
- if theProcessModel
version does not existPrivilegeException
- if the currentUser
does not have permissions to view theProcessModel
Exception
-
getCountProcessModelParametersForVersion
int getCountProcessModelParametersForVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException, Exception Retrieves count of all of the process variables that are required to start an instance of the given process model version (ie. process parameters)- Parameters:
processModelId_
- ID of theProcessModel
for which to retrieveProcessParameters
version_
- The version of theProcessModel
for which to retrieveProcessParameters
(usenull
to refer to a draft)- Returns:
ProcessVariable
objects which represent those variables which are required to start theProcessModel
version given byprocessModelId_
andversion_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existInvalidVersionException
- if theProcessModel
version does not existPrivilegeException
- if the currentUser
does not have permissions to view theProcessModel
Exception
-
updateFolder
ProcessModelFolder updateFolder(ProcessModelFolder folder_) throws PrivilegeException, IllegalArgumentException, InvalidFolderException, RecursiveRelationshipException Updates a process model folder. The following fields must be populated in theProcessModelFolder
object:id
,name
,description
, andparentFolderId
- Parameters:
folder_
- aProcessModelFolder
object containing the properties of the folder to update. This methods will updatename
,description
andparentFolderId
. Other fields will not be updated.- Returns:
- a
ProcessModelFolder
object representing the updated folder - Throws:
PrivilegeException
- if the user does not have permissions to perform this actionIllegalArgumentException
- if thetype
of the folder is different from the previous type (not thrown if the newtype
isnull
, in which case the newtype
is ignored)InvalidFolderException
- if the ID of the folder does not correspond to a valid folder, or if the ID of the parent folder is invalidRecursiveRelationshipException
- if the update would result in a loop in the tree of parent folderscom.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
createFolder
ProcessModelFolder createFolder(ProcessModelFolder folder_) throws PrivilegeException, IllegalArgumentException, DuplicateUuidException Creates a folder for storing process models. The following fields are required for theProcessModelFolder
object:name
, andtype
- Parameters:
folder_
- TheProcessModelFolder
to create.- Returns:
- The created
ProcessModelFolder
- Throws:
PrivilegeException
- if the current user does not have permissions to create aProcessModelFolder
IllegalArgumentException
- if the type of folder is invalid. It must be one of two types:ProcessModelFolder.TYPE_COMMUNITY
orProcessModelFolder.TYPE_PRIVATE
. This exception will also be thrown if the parent folder is invalid (Top level folders must have anull
parent folder id).com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursDuplicateUuidException
- if the UUID of the folder already exists
-
disableProcessModel
void disableProcessModel(Long processModelId_, String version_) throws InvalidProcessModelException, PrivilegeException, InvalidVersionException Disables a version of aProcessModel
.- Parameters:
processModelId_
- ID of theProcessModel
on which to disable a version.version_
- The ID of the version to disable.- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not exist.PrivilegeException
- if the currentUser
does not have sufficient permissions to disable a versionInvalidVersionException
- if the given version does not exist for theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
enableProcessModel
void enableProcessModel(Long processModelId_, String version_) throws InvalidProcessModelException, PrivilegeException, InvalidVersionException Enables aProcessModel
version.- Parameters:
processModelId_
- The ID of theProcessModel
which has the version to enable.version_
- The name of the version to enable- Throws:
InvalidProcessModelException
- if theProcessModel
specified byprocessModelId_
does not exist.PrivilegeException
- if the current user does not have sufficient permissions to enable the version.InvalidVersionException
- if the given version does not exist for theProcessModel
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
deleteFolders
Deletes a list of folders- Parameters:
folders_
- TheProcessModelFolder
objects to delete.- Returns:
- a
ResultList
containing result codes for each deletion. Possible values are:ResultList.CODE_NO_PERMISSION
if the user does not have permission,ResultList.CODE_INVALID
if the folder does not exist or is not empty, andResultList.CODE_VALID
if the delete succeeded . - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
deleteFolder
void deleteFolder(Long folderId_) throws InvalidFolderException, PrivilegeException, InvalidStateException Deletes aProcessModelFolder
- Parameters:
folderId_
- id of theProcessModelFolder
to delete.- Throws:
InvalidFolderException
- if theProcessModelFolder
specified byfolderId_
does not exist.PrivilegeException
- if the current user does not have sufficient privileges to delete theProcessModelFolder
.InvalidStateException
- if theProcessModelFolder
is not empty (it must not contain sub-folders or process models)com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
updateFolders
ResultList updateFolders(ProcessModelFolder[] processModelFolders_) throws RecursiveRelationshipException Updates a list of process model folders. The following fields must be populated in eachProcessModelFolder
object:id
,name
,description
, andparentFolderId
- Parameters:
processModelFolders_
- an array ofProcessModelFolder
objects each containing the properties of the folders to update. This method will updatename
,description
,parentFolderId
. Other fields will not be updated.- Returns:
- a ResultList containing the updated
ProcessModeFolder
objects and result codes for the operations. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified folder does not exist or its parent folder does not exist - Throws:
RecursiveRelationshipException
- if the updates would result in a loop in the tree of parent folderscom.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
updateProcessModelsWithDescriptors
Updates process models in the database. In order to update aProcessModel.Descriptor
at least the following fields must be populated:id
andprocessName
- Parameters:
descriptors_
- theProcessModel.Descriptor
objects that represent the process models to update- Returns:
- A result list containing the updated
ProcessModel.Descriptor
objects and a list of result codes for the operations. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have permission, orResultList.CODE_INVALID
if the specified process model does not exist - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
getSecurityForFolder
Gets the security for a process model folder- Parameters:
folderId_
- the unique Id of the folder to retrieve security for- Returns:
- the
Security
object (with all fields populated) that contains that security settings for the folder. The role maps in theSecurity
object are beProcessRoleMap
objects - Throws:
InvalidFolderException
- if the folder doesn't existPrivilegeException
- if the user doesn't have privilegescom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setSecurityForFolder
void setSecurityForFolder(Long folderId_, Security security_) throws PrivilegeException, InvalidFolderException, InvalidUserException Sets the security for a process model folder. FieldscanInherit
andinheritable
will be ignored (doesInherit
is not ignored).- Parameters:
folderId_
- the unique id of the folder to set security forsecurity_
- aSecurity
object representing the security to set. The role maps in theSecurity
object must beProcessRoleMap
objects- Throws:
PrivilegeException
- if the user doesn't have privilegesInvalidFolderException
- if the folder doesn't existInvalidUserException
- if any of the users referenced by theSecurity
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelDescriptors
Retrieves multiple process model descriptors, representing the working drafts of the given process models- Parameters:
pmIds_
- Unique IDs of theProcessModel
objects for which to retrieve descriptors- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects and an array of result codes which correspond to each ID. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have viewer permission, orResultList.CODE_INVALID
if the specified process model does not exist
-
getProcessModelsLatestPublishedDescriptors
Retrieves multiple process model descriptors, representing the latest published version or a draft if there is no publish version. The list of results is the same length and in the same order as the input IDs. Invalid results will be represented by a null in the result list.- Parameters:
pmIds_
- Unique IDs of theProcessModel
objects for which to retrieve descriptors- Returns:
- A
ResultList
which contains an array ofProcessModel.Descriptor
objects and an array of result codes which correspond to each ID. The result codes can be:ResultList.CODE_VALID
if the action succeeded,ResultList.CODE_NO_PERMISSION
if the user does not have viewer permission, orResultList.CODE_INVALID
if the specified process model does not exist
-
getProcessModelVersionDescriptor
ProcessModel.Descriptor getProcessModelVersionDescriptor(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Retrieves the process model descriptor for a version of aProcessModel
. If null is given as a parameter for version, the returned value will be the descriptor of the draft.- Parameters:
processModelId_
- ID of theProcessModel
whose version will be retrievedversion_
- The version of theProcessModel
for which to get theProcessModel.Descriptor
- Returns:
ProcessModel.Descriptor
for theProcessModel
given byprocessModelId_
andversion_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existInvalidVersionException
- if the version of the process model does not existPrivilegeException
- if the current user does not have permissions to view theProcessModel
or version
-
moveProcessModel
void moveProcessModel(Long processModelId_, Long parentFolderId_) throws InvalidProcessModelException, InvalidFolderException, PrivilegeException Moves a process model to a new process model folder- Parameters:
processModelId_
- the unique id of process model to moveparentFolderId_
- the unique id of new parent folder- Throws:
InvalidProcessModelException
- if the process model does not existInvalidFolderException
- if the folder does not existPrivilegeException
- if the user does not have permissions to move the given process model to the given foldercom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
moveFolder
void moveFolder(Long folderId_, Long parentFolderId_) throws InvalidFolderException, PrivilegeException, RecursiveRelationshipException Moves a process model folder- Parameters:
folderId_
- the unique id of the process model folder to moveparentFolderId_
- the unique id of the new parent folder- Throws:
InvalidFolderException
- if the folder or the new parent folder does not existPrivilegeException
- if the user does not have permissions to perform this actionRecursiveRelationshipException
- if the move would result in a loop in the tree of parent folderscom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPermissionsForFolder
ProcessModelFolderPermissions getPermissionsForFolder(Long folderId_) throws InvalidFolderException, PrivilegeException RetrievesProcessModelFolderPermissions
for aProcessModelFolder
- Parameters:
folderId_
- ID ofProcessModelFolder
for which to getProcessModelFolderPermissions
- Returns:
- A
ProcessModelFolderPermissions
object which contains permissions for the folder. - Throws:
InvalidFolderException
- if theProcessModelFolder
does not existPrivilegeException
- if the current user does not have sufficient permissions to view theProcessModelFolderPermissions
for the foldercom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPermissionsForFolders
ProcessModelFolderPermissions[] getPermissionsForFolders(Long[] folderIds_) throws InvalidFolderException, PrivilegeException RetrievesProcessModelFolderPermissions
objects for multipleProcessModelFolder
objects.- Parameters:
folderIds_
- Unique IDs ofProcessModelFolder
objects for which to get permissions- Returns:
- An array of
ProcessModelFolderPermissions
objects which contain the permissions for the folders. - Throws:
InvalidFolderException
- if any of theProcessModelFolder
objects do not existPrivilegeException
- if the currentUser
does not have sufficient permissions to view theProcessModelFolderPermissions
for any of the folders
-
setInheritanceForFolder
void setInheritanceForFolder(Long folderId_, boolean inherits_) throws PrivilegeException, InvalidFolderException Sets the inheritance for a process model folder- Parameters:
folderId_
- the unique id of the folderinherits_
- if the folder inherits permissions from its parent- Throws:
PrivilegeException
- if the user does not have permission to perform this actionInvalidFolderException
- if the folder does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
deleteProcessModelVersion
ProcessModel.Descriptor deleteProcessModelVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Deletes a version of aProcessModel
.- Parameters:
processModelId_
- ID of theProcessModel
version_
- ID of the version to delete. Ifnull
, the process model will be deleted.- Returns:
- Descriptor from before the version is deleted
- Throws:
InvalidProcessModelException
- if theProcessModel
does not exist.InvalidVersionException
- if the version does not exist for theProcessModel
.PrivilegeException
- if the current user does not have sufficient permissions to delete theProcessModel
version.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getBusinessEntity
BusinessEntity getBusinessEntity()Retrieves theBusinessEntity
which has been created on the system.- Returns:
- The
BusinessEntity
in the system. Returnsnull
if noBusinessEntity
has been created.
-
createBusinessEntity
Creates aBusinessEntity
for use with Web Services.- Parameters:
business_
- TheBusinessEntity
to create. Minimum required fields are:uuid
,organizationName
, andcontactInformation
. All fields in thecontactInformation
bean are required (non-null and non-emptyStrings
).- Throws:
IllegalArgumentException
- if any of the required fields or any of the fields in thecontactInformation
bean is null or empty.com.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
updateBusinessEntity
Updates aBusinessEntity
.- Parameters:
business_
- aBusinessEntity
object. Minimum required fields are:uuid
,organizationName
, andcontactInformation
.- Throws:
NullPointerException
- if,- the required fields in the argument are
null
or empty. - the
contactInformation
field of the argument is a list and any entry of this list isnull
or empty. - the argument itself is
null
- the required fields in the argument are
com.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
getProcessModelWebServices
ResultPage getProcessModelWebServices(int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Retrieves allProcessModelWebService
objects on the server.- Parameters:
startIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants inProcessModelWebService
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- A
ResultPage
which contains an array ofProcessModelWebService
objects. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
createProcessModelWebService
void createProcessModelWebService(ProcessModelWebService pmws_) throws DuplicateWebServiceNameException, InvalidProcessModelException, Exception Create aProcessModelWebService
.- Parameters:
pmws_
- TheProcessModelWebService
to create. Minimum required fields are:serviceName
,serviceUuid
, andprocessModelId
.- Throws:
DuplicateWebServiceNameException
- if aProcessModelWebService
with theserviceName
already exists.InvalidProcessModelException
- if theProcessModel
specified byprocessModelId
does not exist.Exception
- if theProcessModelWebService
does not contain aserviceName
orserviceUuid
ServiceExeption
- if any system-level error occurs
-
deleteProcessModelWebService
Deletes aProcessModelWebService
based on the service name which it contains.- Parameters:
serviceName_
- The name of the service to delete. TheProcessModelWebService
itself will be deleted.- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessStartingInfo
Retrieves theProcessStartingInfo
for a service.- Parameters:
serviceName_
- The service for which to retrieve theProcessStartingInfo
- Returns:
- A
ProcessStartingInfo
object which contains the information necessary to start a service. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelByUuid
ProcessModel getProcessModelByUuid(@ConvertWith(com.appiancorp.kougar.mapper.parameters.UuidParameterConverter.class) String uuid_) throws InvalidProcessModelException, PrivilegeException Retrieves the working draft of theProcessModel
specified by a UUID (Universal Unique Identifier).- Parameters:
uuid_
- UUID which specifies theProcessModel
to retrieve.- Returns:
- The
ProcessModel
specified byuuid_
- Throws:
InvalidProcessModelException
- if theProcessModel
does not existPrivilegeException
- if the user is not allowed to access the model.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelIdByUuid
Long getProcessModelIdByUuid(@ConvertWith(com.appiancorp.kougar.mapper.parameters.UuidParameterConverter.class) String uuid_) throws InvalidProcessModelException, PrivilegeException Retrieves the ID of aProcessModel
by a UUID (Universal Unique Identifier).- Parameters:
uuid_
- UUID ofProcessModel
whose ID will be retrieved- Returns:
- ID of the
ProcessModel
specified byuuid_
, ornull
if no process model exists with that UUID - Throws:
InvalidProcessModelException
- if no process exists for the UUID providedPrivilegeException
- if the user is not allowed to access the model.com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelsAndDescendants
Retrieves multipleProcessModel
objects as well as the subProcessModel
objects which they contain. All process models returned represent the working drafts of the process models in question.- Parameters:
ids_
- Uniques IDs of theProcessModel
which will be retrieved. Their sub process models will be retrieved as well.- Returns:
- The
ProcessModel
objects specified byids_
, along with their sub process models - Throws:
InvalidProcessModelException
- if a specifiedProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelsForFolderStartableOnly
ResultPage getProcessModelsForFolderStartableOnly(Long folderId_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidFolderException, PrivilegeException Retrieve descriptors representing the working drafts of the startable process models directly in a process model folder. AProcessModel
is startable if it has a valid version or draft.- Parameters:
folderId_
- id of the folder to get all process models forstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inProcessModel.Descriptor
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- Returns a
ResultPage
ofProcessModel.Descriptor
objects which represent the startableProcessModel
objects in theProcessModelFolder
specified byfolderId_
- Throws:
InvalidFolderException
- if theProcessModelFolder
does not existPrivilegeException
- if the current user does not have permission to access the folder
-
validateProcessModel
Returns the results of validating a process model- Parameters:
pm_
- aProcessModel
object representing the process model to be validated- Returns:
- An array of strings relating to the errors in the process model.
The error strings contain the error name followed by "@"-separated field names in the
ProcessModel
bean to specify the location, followed by "@" and the reasons for the error Possible error names include "Invalid Expression" and "Invalid Subprocess". This name (prefix) is omitted from fatal invalidities. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.
-
validateProcessModelVersion
String[] validateProcessModelVersion(Long processModelId_, String version_) throws InvalidProcessModelException, InvalidVersionException, PrivilegeException Returns the results of validating a process model, same as getProcessModelVersion followed by validateProcessModel.- Parameters:
processModelId_
- ID of theProcessModel
whose version will be validatedversion_
- The version of theProcessModel
to retrieve- Returns:
- An array of strings relating to the errors in the process model.
The error strings contain the error name followed by "@"-separated field names in the
ProcessModel
bean to specify the location, followed by "@" and the reasons for the error Possible error names include "Invalid Expression" and "Invalid Subprocess". This name (prefix) is omitted from fatal invalidities. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if a system-level error occurs.InvalidProcessModelException
InvalidVersionException
PrivilegeException
-
isProcessModelLocked
boolean isProcessModelLocked(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Determines whether a process model is locked- Parameters:
processModelId_
- the ID of the process model- Returns:
true
, if the process model with the given ID is locked;false
otherwise.- Throws:
InvalidProcessModelException
- if the ID does not correspond to a valid process modelPrivilegeException
- if the current user cannot view the process model (ifProcessModelPermissions.isView()
would returnfalse
for this process model)
-
getProcessModelLatestPublishedVersion
ProcessModel getProcessModelLatestPublishedVersion(Long processModelId_) throws PrivilegeException, InvalidProcessModelException Retrieve the latest published version of aProcessModel
or the working draft if a published version does not exist.- Parameters:
processModelId_
- ID of theProcessModel
to retrieve- Returns:
- The
ProcessModel
specified byprocessModelId_
- Throws:
PrivilegeException
- if the currentUser
does not have sufficient privileges to view theProcessModel
InvalidProcessModelException
- if aProcessModel
specified byprocessModelId_
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getProcessModelLatestPublishedVersionDescriptor
ProcessModel.Descriptor getProcessModelLatestPublishedVersionDescriptor(Long processModelId_) throws PrivilegeException, InvalidProcessModelException Retrieve the latest published version of aProcessModel.Descriptor
or the working draft if a published version does not exist.- Parameters:
processModelId_
- ID of theDescriptor
to retrieve- Returns:
- The
Descriptor
specified byprocessModelId_
- Throws:
PrivilegeException
- if the currentUser
does not have sufficient privileges to view theProcessModel
InvalidProcessModelException
- if aProcessModel
specified byprocessModelId_
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getACInstanceIdsForLocalIds
Returns aResultList
containing the actual Id's in database corresponding to given localId's ofActivityClass
- Parameters:
localIds_
- localId's ofActivityClass
objects- Returns:
- a
ResultList
containing Long Id's ofActivityClass
in database
-
getACPInstanceIdsForLocalIds
Returns aResultList
containing the actual Id's in database forActivityClassParameter
corresponding to given aActivityClass
localId andActivityClassParameter
localId's. If the localIds array is empty, InvalidActivityClassSchemaException might be thrown.- Parameters:
activityClassLocalId_
- Id ofActivityClass>
whoseActivityClassParameter
Id's are requestedlocalIds_
- localId's ofActivityClassParameter
objects- Returns:
- a
ResultList
containingLong
Id's of givenActivityClassParameter
objects in database
-
notifyUserCreation
Deprecated.done automatically by UserService.createUserNotifies the server that a new user was created on the Personalization server- Parameters:
username_
- the name of the user that was added- Throws:
NullPointerException
- ifusername_
isnull
-
notifyUsersCreation
Notifies the server that new users were created on the Personalization server- Parameters:
usernames_
- the names of the users that were added- Throws:
NullPointerException
- if any of the usernames arenull
-
validateGroupMembership
boolean validateGroupMembership(Long[] memGroupIds_, Long[] admGroupIds_, Long userTypeId_, String username) throws InvalidAnonymousUserException, InvalidUserException Validates if the association of a user as 'Member' and as an 'Administrator has changed or not.- Parameters:
memGroupIds_
- Groups for which the User is a memberadmGroupIds_
- Groups for which the User is an administratoruserTypeId_
- this is one ofUserProfile.USER_TYPE_BASIC
orUserProfile.USER_TYPE_SYS_ADMIN
username
- the username of the user whose group membership is to be validated- Returns:
- true if there is not change in the membership of the user
- Throws:
InvalidAnonymousUserException
- if the user calling this method is anonymous, but anonymous access has not been enabledInvalidUserException
- if the user calling this method does not existNullPointerException
- if any of the input arrays arenull
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
updateUsernames
@Deprecated void updateUsernames(String[] oldUsernames_, String[] newUsernames_, long maxExpirationTimeInSeconds_) throws IllegalArgumentException, DuplicateNameException Deprecated.DEPRECATED: SeeUserService.renameUsersByUuid(java.lang.String[], java.lang.String[])
Updates a list of old usernames to new usernames.If successful, this method must be followed by
commitUpdateUsernames()
. AftercommitUpdateUsernames
has been called, the old usernames will still be active, but will expire after the interval specified bymaxExpirationTimeInSeconds_
; ifupdateUsernames
is successful butcommitUpdateUsernames
is not called, the new usernames will not become active.If unsuccessful, this method should be followed by
rollbackUpdateUsernames()
. This will simply free memory dedicated to mapping old usernames to new usernames.- Parameters:
oldUsernames_
- the usernames to be updatednewUsernames_
- the usernames to which the old usernames will be updatedmaxExpirationTimeInSeconds_
- the interval, in seconds, aftercommitUpdateUsernames
has been called, after which the old usernames will expire. If this parameter is zero or a negative value the old usernames will expire instantly. After expiration, the old usernames will no longer be valid.- Throws:
IllegalArgumentException
- if the length ofoldUsernames_
is not the same as the length ofnewUsernames_
.DuplicateNameException
- if anyoldUsernames_
ornewUsernames_
contain any duplicates, or if an old username is being updated to a username that already existscom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
commitUpdateUsernames
Deprecated.DEPRECATED: SeeUserService.renameUsersByUuid(java.lang.String[], java.lang.String[])
Commits an update of usernames.This method should be preceded by a call to
updateUsernames(String[], String[], long)
. After the commit, the old usernames will be temporarily active, and will expire after the interval specified bymaxExpirationTimeInSeconds_
; ifcommitUpdateUsernames
is not called, the new usernames will not become active.- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
rollbackUpdateUsernames
Deprecated.DEPRECATED: SeeUserService.renameUsersByUuid(java.lang.String[], java.lang.String[])
Rolls back an update of usernames.This method should be called if
updateUsernames(String[], String[], long)
is unsuccessful. The rollback will simply free memory dedicated to mapping old usernames to new usernames.- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setApplicationAdministratorGroup
Determines which group users need to be in to have the application administrator role.- Parameters:
groupId
- the id of the administrator group- Throws:
PrivilegeException
- if the current user does not have permission to perform this actioncom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
reloadProperties
Deprecated.reloading properties is now automatic, so this call is now unnecessary and does nothing.Reloads all database-level properties files (*.xml, *.properties) without interrupting API services- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
validate
String validate()Runs validation tests against the database to check whether it is corrupt, and returns a line-separated list of validation results- Returns:
- the validation results
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setSiteLocaleSettings
Registers the site locale settings on the process design server. UseGlobalizationService.setSiteLocaleSettings(SiteLocaleSettings)
if you need to update the site locale settings for all the product Servers.- Parameters:
settings_
- The site locale settings.
-
getEventsForProcessModelPaging
ResultPage getEventsForProcessModelPaging(Long pmId_, Long[] eventTypes_, Boolean includeStartEvents_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Returns the Events for a givenProcessModel
specified byeventTypes_
.- Parameters:
pmId_
- ID of theProcessModel
for which to retrieveEvent
objectseventTypes_
- types of events to retrieve. This is one ofXXX_EVENT_YYY
constants inEvent
includeStartEvents_
- whether start events should be includedstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inEvent
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- A
ResultPage
which contains an array of Events - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
findEventsPaging
ResultPage findEventsPaging(String searchString_, Long pmId_, Long[] eventTypes_, Boolean includeStartEvents_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) Searches for Events associated with the given Process Model that match the specified searchString.- Parameters:
searchString_
- search string to search the Events' names.pmId_
- ID of theProcessModel
for which to retrieveEvent
objects. If the ID is null, then events for all process models are searched.eventTypes_
- types of events to retrieve. This is one ofXXX_EVENT_YYY
constants inEvent
includeStartEvents_
- Whether or not events on start node should be returnedincludeConsuming_
- whether or not consuming events should be returnedincludeProducing_
- whether or not producing events should be returnedstartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. UseConstants.COUNT_ALL
to return the entire collection, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted. This is one of theSORT_BY_XXX
constants located inEvent
sortOrder_
- the order in which to sort the results. This is one ofConstants.SORT_ORDER_ASCENDING
orConstants.SORT_ORDER_DESCENDING
- Returns:
- A
ResultPage
which contains an array ofEvent
objects that match the search criteria - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getEventOrProcessModelNames
Returns the display names of processModels and Events for the providedProcessModel
Ids and Event Ids- Parameters:
pmIds_
- Ids of Process Models to get the display name ofeventPersistentIds_
- Persistent Ids of Events (EventTrigger)to get the display name for- Returns:
- displayNames of ProcessModels and Events. First part of the array
is ProcessModels depending on the
pmIds_
count and later part of array is Events depending on theeventIds_
count. - Throws:
NullPointerException
- ifpmIds_
array oreventIds_
array is null.
-
getProcessModelIdsByUuids
Long[] getProcessModelIdsByUuids(@ConvertWith(com.appiancorp.kougar.mapper.parameters.UuidParameterConverter[][].class) String[] pmUUIDs_) throws PrivilegeException Returns the IDs of ProcessModels that match the given UUID.- Parameters:
pmUUIDs_
- Array of UUID Strings.- Returns:
- an array of process model IDs that match the given UUIDs.
null
is returned for invalid UUID. - Throws:
PrivilegeException
-
getEmailAttachmentFolderIdForPm
Returns the Id of the folder where attachments will be stored when an email message is sent to either theProcessModel
or any event within theProcessModel
- Parameters:
pm_
- ID of process model- Returns:
- ID of the folder where attachments will be stored.
- Throws:
InvalidProcessModelException
- if the specifiedProcessModel
does not existcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getPmIdForEvent
Returns the ID of theProcessModel
that the Event by giveneventPersistentId
belongs to.- Parameters:
eventPersistentId_
- Persistent ID of the Event- Returns:
- ID of the Process Model
- Throws:
InvalidEventException
- If passed in event persistent ID is invalidcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
getEventsByPersistentId
Returns a ResultList containing Events that correspond to the passed in array of Event persistent IDs.- Parameters:
eventPersistentIds_
- Array of Event persistent IDs.- Returns:
- ResultList containing
Event
objects corresponding to the array of given persistent IDs. The result codes can be:ResultList.CODE_VALID
if the action succeeded, orResultList.CODE_INVALID
if the event persistent ID is invalid. - Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
setDashboardPageForProcessModel
void setDashboardPageForProcessModel(Long processModelId, Long pageId) throws InvalidProcessModelException, PrivilegeException Sets a page as the Dashboard page for the givenProcessModel
byprocessModelId
.- Parameters:
processModelId
- Id of theProcessModel
to associate the page withpageId
- the id of the page to set as the Process Model's Dashboard page- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have permission to associate the Dashboard page for theProcessModel
-
getDashboardPageForProcessModel
Returns the dashboard Id that is used for theProcessModel
by givenprocessModelId_
- Parameters:
processModelId_
- Id of the process model- Returns:
- Id of the dahsboard
- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not exist
-
removeDashboardPageForProcessModel
void removeDashboardPageForProcessModel(Long processModelId) throws InvalidProcessModelException, PrivilegeException Disassociates the current Dashboard page for the givenProcessModel
byprocessModelId
.- Parameters:
processModelId
- Id of theProcessModel
for which to remove its current Dashboard page- Throws:
InvalidProcessModelException
- if theProcesModel
specified does not existPrivilegeException
- if the current user does not have permission to disassociate the Dashboard page from theProcessModel
-
addProcessModelToFavorites
void addProcessModelToFavorites(Long modelId_) throws InvalidProcessModelException, PrivilegeException Associates thisProcessModel
by givenmodelId_
as one of the current user's favorites.- Parameters:
modelId_
- Id of theProcessModel
to be added as favorite.- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have permission to perform this action on the specifiedProcessModel
NullPointerException
- ifmodelId_
is nullcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
removeProcessModelFromFavorites
void removeProcessModelFromFavorites(Long modelId_) throws InvalidProcessModelException, PrivilegeException Removes thisProcessModel
by givenmodelId_
as one of the current user's favorites.- Parameters:
modelId_
- Id of theProcessModel
to be removed as favorite.- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have permission to perform this action on the specifiedProcessModel
NullPointerException
- ifmodelId_
is nullcom.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occurs
-
handleMessages
Sends the messages to the design server to be handled by the Events framework, and returns appropriate result codes. The result codes can be:Message.SUCCESS_CODE
if the messages are handled successfullyMessage.JMS_TYPE_NOT_PROVIDED_CODE
if the message does not provide a valid JMS typeMessage.INVALID_USERNAME_CODE
if the provided username is not valid. If a username is not provided, the result code will return as Message.SUCCESS_CODE because username may be anonymous.Message.DESTINATION_NOT_PROVIDED_CODE
if the message does not specify a valid destinationMessage.DUPLICATE_MESSAGE_CODE
if the message is a duplicate- Parameters:
messages_
- an array of InternalMessage objects to be processed by the Events framework- Returns:
- the result codes
- Throws:
com.appiancorp.asl3.servicefw.connect.ServiceException
- if any system-level error occursNullPointerException
- if any of the messages in themessages_
array are null or if the array itself is null
-
validateUsernames
Returns an array of Boolean values, Boolean.TRUE if the user given by the username exists and Boolean.FALSE otherwise.- Parameters:
usernames_
- An array of usernames to validate- Returns:
- An array of Boolean values
-
getProcessVariablesForModel
Returns the list of all process variables in a given process model. If the recursive flag is set to true, process variables for all sub-process models (that have the transparency flag set to true) will also be returned.- Parameters:
pmId_
- Id of theProcessModel
to retrieve the process variables ofrecursive_
- true if you want to retrieve process variables from the child process models (and their child models in turn).- Returns:
- An array of
ProcessVariable
objects. - Throws:
NullPointerException
- ifpmId_
is null.
-
getProcessVariablesForModel
ProcessVariable[] getProcessVariablesForModel(@ConvertWith(com.appiancorp.kougar.mapper.parameters.UuidParameterConverter.class) String uuid, boolean recursive) throws InvalidProcessModelException Returns the list of all process variables in a given process model. If the recursive flag is set to true, process variables for all sub-process models (that have the transparency flag set to true) will also be returned.- Parameters:
uuid_
- UUID which specifies theProcessModel
to retrieve the process variables of, as if by getProcessModelIdByUuidrecursive_
- true if you want to retrieve process variables from the child process models (and their child models in turn).- Returns:
- An array of
ProcessVariable
objects. - Throws:
NullPointerException
- ifpmId_
is null.InvalidProcessModelException
-
getCurrentNotePaths
Deprecated.since 23.2 -
setCurrentNotePaths
Deprecated.since 23.2- Throws:
PrivilegeException
-
getExpressionDependencies
Returns the expression dependencies for the givenexpressionText
. SeeExpressionDependency
- Parameters:
expressionText
- Expression for which the dependencies will be determinedparameterNames
- Parameters of the expression. Only apply when the expression is part of a rule definition; passnull
if it's not a rule definition.- Returns:
- The
ExpressionDependency
for the given expression
-
getExpressionDependencies
Returns an array of theExpressionDependency
objects for the given expressions.- Parameters:
expression
- Array of expressions for which the dependencies are to be determined.parameterNames
- Parameters of the expressions. Only apply when the expressions are part of a rule definition; passnull
if it's not a rule definition.- Returns:
- An array of
ExpressionDependency
objects for the given expressions.
-
evaluateExpressionInVariableContext
PartialResult evaluateExpressionInVariableContext(String expression, NamedTypedValue[] typedVariables, NamedTypedValue[] continueParams) -
evaluateExpression
TypedValue evaluateExpression(String expression) throws com.appiancorp.process.expression.ExpressionEvaluationException Evaluate the given expression (including java expression functions). The time zone used for the evaluation is the time zone in the service context used to acquire the service.- Parameters:
expression
- The expression to evaluate.- Returns:
- The result of the expression.
- Throws:
com.appiancorp.process.expression.ExpressionEvaluationException
- If an error occurs during the evaluation of the expression.
-
externalizeExpression
Replaces rule names with UUIDs within the given expression. Replaces type literals by id with type literals by name of exact type (including deactivated types).- Parameters:
expression
- expression with rule namesparameterNames
- parameter names in expressions. Used to resolve conflicts between unqualified variables, like unqualified rule inputs in rule definitions, and other rule names- Returns:
- expression with rule names replaced by UUIDs
-
internalizeExpression
Replaces UUIDs with rule names within the given expression. Replaces type literals by name with type literals by id.- Parameters:
expression
- expression with UUIDs- Returns:
- expression with UUIds replaced by rule names
-
getRuleIdReferences
Gets all the rule ids that the expressions within the process model withpmId
id contain, including nested rules referenced by all the expressions.- Parameters:
pmId
- process model id- Returns:
- collection of rule ids
- Throws:
InvalidProcessModelException
- if theProcessModel
specified bypmId
does not existPrivilegeException
- if the currentUser
does not have sufficient privileges to view theProcessModel
-
getRuleUuidReferences
Gets all the rule UUID references that the expressions within the process model bean (pm
) contain.- Parameters:
pm
- process model bean- Returns:
- collection of rule UUID references
-
evaluateExpression
TypedValue evaluateExpression(String expression, NamedTypedValue[] variableValues) throws com.appiancorp.process.expression.ExpressionEvaluationException Evaluate the given expression (including java expression functions). The given variable values are substituted into the expression during evaluation. For example, if the expression is a rule's definition, the variable values should hold values for all of the rule's parameters.- Parameters:
expression
- The expression to evaluate.variableValues
- Values for all the variables used in the given expression. The name, instance type, and value of each variable value must be set. For example, if the expression is: ="Hello "&!firstName The variableValues array should hold a single NamedTypedValue object with the name "firstName", instance type AppianTypeLong.STRING and a value such as "John".- Returns:
- The result of the expression.
- Throws:
com.appiancorp.process.expression.ExpressionEvaluationException
- If an error occurrs during the evaluation of the expression.
-
setProcessDashboardPageForProcessModel
void setProcessDashboardPageForProcessModel(Long processModelId_, Long pageId_) throws InvalidProcessModelException, PrivilegeException Sets a particular page as the dashboard for every instance of a givenProcessModel
byprocessModelId
.- Parameters:
processModelId_
- The ID of the process model whose processes will be nabbedpageId_
- The ID of the page that will serve as the dashboard for those processes.- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have permission to associate the Dashboard page for theProcessModel
-
getProcessDashboardPageForProcessModel
Long getProcessDashboardPageForProcessModel(Long processModelId_) throws InvalidProcessModelException Returns the dashboard Id that is used for all processes spawned from theProcessModel
by givenprocessModelId_
- Parameters:
processModelId_
- Id of the process model- Returns:
- Id of the dahsboard
- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not exist
-
removeProcessDashboardPageForProcessModel
void removeProcessDashboardPageForProcessModel(Long processModelId_) throws InvalidProcessModelException, PrivilegeException Removes any custom dashboards created for instances of a particular process model. Instances will use the system default dashboard page instead.- Parameters:
processModelId_
- The ID of the process model- Throws:
InvalidProcessModelException
- if theProcessModel
specified does not existPrivilegeException
- if the current user does not have permission to associate the Dashboard page for theProcessModel
-
getLingeringTasksForProcessModel
ResultPage getLingeringTasksForProcessModel(Long processModelId_, boolean recursive_, int startIndex_, int batchSize_, Integer sortProperty_, Integer sortOrder_) throws InvalidProcessException, PrivilegeException Returns all instances of lingering nodes in the specified process. Lingering nodes are those whose instances are known only to the execution server and are not notified externally as long as they are active. One example of such nodes is quick tasks.- Parameters:
processModelId_
- the id of the process model for which the lingering tasks should be retrievedrecursive
- whether to return the lingering tasks of the sub-process models of the given process model alsostartIndex_
- the index into the collection of total results at which to start. Negative numbers are treated as zeros.batchSize_
- the number of results to return. use ofConstants.COUNT_ALL
will result in the entire collection being returned, but this is STRONGLY discouraged.sortProperty_
- the property by which the results will be sorted This is one of theSORT_BY_XXX
constants inTaskDesignProperties
sortOrder_
-Constants.SORT_ORDER_ASCENDING
for sorting results in ascending order,Constants.SORT_ORDER_DESCENDING
for sorting results in descending order- Returns:
- a ResultPage of TaskDesignProperties objects
- Throws:
InvalidProcessException
- if the given process id is invalidPrivilegeException
- if the user doesn't have privileges to see the model
-
validateTypedValues
Validates given TypedValues. This method is free to throw an exception or to return false if any TypedValue passed is invalid for this engine. This engine supports: AppianType.PROCESS_MODEL- Parameters:
typedValues
-- Returns:
- true if valid, false if invalid
-
setTimeZone
Set a backend timezone.- Parameters:
tz
-
-
setTimeZoneSameAs
Set a backend timezone to have the same rules as another backend timezone the sameAsId.- Parameters:
tz
-sameAsId
-
-
UserService.renameUsersByUuid(java.lang.String[], java.lang.String[])