Class DeploymentOperation

java.lang.Object
org.camunda.bpm.container.impl.spi.DeploymentOperation

public class DeploymentOperation extends Object

A DeploymentOperation allows bundling multiple deployment steps into a composite operation that succeeds or fails atomically.

The DeploymentOperation is composed of a list of individual steps ( DeploymentOperationStep). Each step may or may not install new services into the container. If one of the steps fails, the operation makes sure that

Author:
Daniel Meyer
  • Field Details

    • name

      protected final String name
      the name of this composite operation
    • serviceContainer

      protected final PlatformServiceContainer serviceContainer
      the service container
    • steps

      protected final List<DeploymentOperationStep> steps
      the list of steps that make up this composite operation
    • successfulSteps

      protected final List<DeploymentOperationStep> successfulSteps
      a list of steps that completed successfully
    • installedServices

      protected List<String> installedServices
      the list of services installed by this operation. The rollbackOperation() must make sure all these services are removed if the operation fails.
    • attachments

      protected Map<String,Object> attachments
      a list of attachments allows to pass state from one operation to another
    • isRollbackOnFailure

      protected boolean isRollbackOnFailure
    • currentStep

      protected DeploymentOperationStep currentStep
  • Constructor Details

  • Method Details

    • getAttachment

      public <S> S getAttachment(String name)
    • addAttachment

      public void addAttachment(String name, Object value)
    • addStep

      public void addStep(DeploymentOperationStep step)
      Add a new atomic step to the composite operation. If the operation is currently executing a step, the step is added after the current step.
    • serviceAdded

      public void serviceAdded(String serviceName)
    • getServiceContainer

      public PlatformServiceContainer getServiceContainer()
    • execute

      public void execute()
    • rollbackOperation

      protected void rollbackOperation()
    • getInstalledServices

      public List<String> getInstalledServices()