Class DeploymentPlanImpl

java.lang.Object
org.jboss.as.controller.client.helpers.domain.impl.DeploymentPlanImpl
All Implemented Interfaces:
Serializable, DeploymentPlan

public class DeploymentPlanImpl extends Object implements DeploymentPlan, Serializable
Describes a set of actions to take to change the deployment content available to deployed in a server group or set of server groups.
Author:
Brian Stansberry
See Also:
  • Method Details

    • getId

      public UUID getId()
      Description copied from interface: DeploymentPlan
      Gets the unique id of the plan.
      Specified by:
      getId in interface DeploymentPlan
      Returns:
      the id. Will not be null
    • getLastAction

      public DeploymentAction getLastAction()
    • getDeploymentActions

      public List<DeploymentAction> getDeploymentActions()
      Description copied from interface: DeploymentPlan
      Gets the list of deploy, replace and undeploy actions that are part of the deployment plan.
      Specified by:
      getDeploymentActions in interface DeploymentPlan
      Returns:
      the actions. Will not be null
    • isSingleServerRollback

      public boolean isSingleServerRollback()
      Description copied from interface: DeploymentPlan
      Indicates that on a given server all deploy, undeploy or replace operations associated with the deployment set should be rolled back in case of a failure in any of them.

      Note: This directive does not span across servers, i.e. a rollback on one server will not trigger rollback on others. Use ServerGroupDeploymentPlanBuilder.withRollback() to trigger rollback across servers.

      Specified by:
      isSingleServerRollback in interface DeploymentPlan
      Returns:
      a builder that can continue building the overall deployment plan
    • isRollbackAcrossGroups

      public boolean isRollbackAcrossGroups()
      Specified by:
      isRollbackAcrossGroups in interface DeploymentPlan
    • getGracefulShutdownTimeout

      public long getGracefulShutdownTimeout()
      Description copied from interface: DeploymentPlan
      Gets the maximum period, in ms, the deployment set plan is configured to wait for potentially long-running in-process work ito complete before shutdown proceeds.
      Specified by:
      getGracefulShutdownTimeout in interface DeploymentPlan
      Returns:
      the period in ms, or -1 if DeploymentPlan.isGracefulShutdown() would return false
    • isGracefulShutdown

      public boolean isGracefulShutdown()
      Description copied from interface: DeploymentPlan
      Gets whether the deployment set plan is organized around a graceful shutdown of the server, where potentially long-running in-process work is given time to complete before shutdown proceeds.
      Specified by:
      isGracefulShutdown in interface DeploymentPlan
      Returns:
      true if the plan will be organized around a graceful shutdown, false otherwise
    • isShutdown

      public boolean isShutdown()
      Description copied from interface: DeploymentPlan
      Gets whether the deployment set plan is organized around a shutdown of the server.
      Specified by:
      isShutdown in interface DeploymentPlan
      Returns:
      true if the plan will be organized around a shutdown, false otherwise
    • getServerGroupDeploymentPlans

      public List<Set<ServerGroupDeploymentPlan>> getServerGroupDeploymentPlans()
      Description copied from interface: DeploymentPlan
      Gets the configuration of how the deployment actions are to be applied to the server groups in the domain. Each ServerGroupDeploymentPlan in the returned data structure specifies how the actions are to be applied to the servers within a particular server group. The data structure itself is a list of sets of ServerGroupDeploymentPlans. Each set indicates a collection of server groups to which actions can be applied concurrently. Each element in the overall list delineates actions should be applied in series.

      So, for example, assume we the overall deployment set plan is intended to apply deployments to 3 server groups: A, B and C. Assume elements within curly braces represent and set and elements within brackets represent an item in a list:

      • [{A,B}],[{C}] would describe a plan to concurrently execute the deployment actions on server groups A and B and then when A and B are complete, continue on to server group C.
      • [{A}],[{B}],[{C}] would describe a plan to execute the deployment actions on server group A, and then when A is complete, continue on to server group B and then to C.
      • [{A,B,C}] would describe a plan to concurrently execute the deployment actions on server groups A and B and C.

      Specified by:
      getServerGroupDeploymentPlans in interface DeploymentPlan
      Returns:
      data structure representing how the deployment actions are to be applied to the server groups in the domain.