Class 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 Detail

      • name

        protected final String name
        the name of this composite operation
      • 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
    • Method Detail

      • 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)
      • execute

        public void execute()
      • rollbackOperation

        protected void rollbackOperation()
      • getInstalledServices

        public List<String> getInstalledServices()