Interface HvlBpmnProcessService

All Known Implementing Classes:
HvlBpmnProcessServiceImpl

@Validated public interface HvlBpmnProcessService
This service provides operational and retrieve methods for bpmn processes.
  • Method Details

    • save

      Long save(@Valid @Valid HvlBpmnProcessModel processModel, Long sourceProcessId)
      Adds provided object.
      Parameters:
      processModel - the process model
      sourceProcessId - the source process's id if cloning is wanted
      Returns:
      the long
    • update

      Long update(@Valid @Valid HvlBpmnProcessModel processModel, boolean newVersion, HvlBpmnProcessUpdateType updateType)
      Edits object associated provided object.
      Parameters:
      processModel - the process model
      newVersion - the new version
      updateType - the update type
      Returns:
      the long
    • delete

      void delete(@NotNull @NotNull Long id)
      Removes object according to provided parameter.
      Parameters:
      id - the id
    • deployProcess

      void deployProcess(@NotNull @NotNull Long id)
      Deploy process.
      Parameters:
      id - the id
    • importProcess

      HvlProcessDefinitionImportResultModel importProcess(byte[] xmlBytes, boolean isSystemProcess)
      Imports a bpmn xml.
      Parameters:
      xmlBytes - the xml bytes
      isSystemProcess - the is system process
      Returns:
      the HvlProcessDefinitionImportResultModel
    • importAll

      List<HvlBpmnProcessModel> importAll(byte[] zipBytes) throws IOException
      Imports all bpmn xml files from a zip file.
      Parameters:
      zipBytes - the zip bytes
      Returns:
      the list
      Throws:
      IOException - the io exception
    • exportProcess

      Map<String,byte[]> exportProcess(@NotNull @NotNull Long id)
      Exports process as bpmn xml.
      Parameters:
      id - the id
      Returns:
      the map
    • exportAll

      byte[] exportAll(@NotEmpty @NotEmpty List<Long> idList) throws IOException
      Exports all processes as zip file.
      Parameters:
      idList - the id list
      Returns:
      the byte [ ]
      Throws:
      IOException - the io exception
    • queryList

      List<HvlBpmnProcessModel> queryList(@NotNull @NotNull HvlBpmnProcessQueryModel processQueryModel)
      Query as list.
      Parameters:
      processQueryModel - the process query model
      Returns:
      the list
    • queryPage

      tr.com.havelsan.javarch.data.commons.pageable.HvlPage<HvlBpmnProcessModel> queryPage(@NotNull @NotNull HvlBpmnProcessQueryModel processQueryModel)
      Query as page.
      Parameters:
      processQueryModel - the process query model
      Returns:
      the hvl page
    • queryCategoryList

      List<String> queryCategoryList(@NotBlank @Size(min=3,max=64) @NotBlank @Size(min=3,max=64) String namespace)
      Query as list.
      Parameters:
      namespace - the namespace
      Returns:
      the list
    • lock

      void lock(@NotNull @NotNull Long id)
      Lock the process.
      Parameters:
      id - the id
    • unlock

      void unlock(@NotNull @NotNull Long id)
      Unlock the process.
      Parameters:
      id - the id
    • isLocked

      boolean isLocked(@NotNull @NotNull Long id)
      Check the process is locked.
      Parameters:
      id - the id
      Returns:
      the boolean
    • getProcessById

      HvlBpmnProcessModel getProcessById(@NotNull @NotNull Long id)
      Gets process by id.
      Parameters:
      id - the id
      Returns:
      the process by id
    • getProcessByKey

      HvlBpmnProcessModel getProcessByKey(@NotNull @NotNull String key)
      Gets process by key.
      Parameters:
      key - the key
      Returns:
      the process model
    • isSystemProcess

      boolean isSystemProcess(@NotNull @NotNull String processUuid)
      Check the process is system process
      Parameters:
      processUuid - the process uuid
      Returns:
      the boolean
    • getProcessModelNode

      com.fasterxml.jackson.databind.node.ObjectNode getProcessModelNode(@NotNull @NotNull Long modelId)
      Gets process model node.
      Parameters:
      modelId - the model id
      Returns:
      the process model node
    • saveProcessModelNode

      void saveProcessModelNode(@NotNull @NotNull Long modelId, @NotEmpty @NotEmpty org.springframework.util.MultiValueMap<String,String> values)
      Saves process model node.
      Parameters:
      modelId - the model id
      values - the values
    • getNamespaceList

      List<String> getNamespaceList()
      Gets namespace list.
      Returns:
      the namespace list
    • upgradeVersion

      void upgradeVersion(@NotNull @NotNull String processDefinitionKey, byte[] upgradedProcessDefinitionXmlFile)
      Upgrade existing process definition.
      Parameters:
      processDefinitionKey - the process definition key
      upgradedProcessDefinitionXmlFile - the upgraded process definition xml file
    • isProcessDeploymentExist

      boolean isProcessDeploymentExist(@NotBlank @NotBlank String key)
      Checks if there is any deployed process exists with given key.
      Parameters:
      key - process definition key
      Returns:
      boolean boolean
    • isProcessInstanceExist

      boolean isProcessInstanceExist(@NotBlank @NotBlank String key, @NotNull @NotNull Integer version)
      Checks if there is any process instance exists with given key and version
      Parameters:
      key - process definition key
      version - process definition version
      Returns:
      boolean boolean