Interface DeploymentSetPlan

  • All Known Implementing Classes:
    DeploymentSetPlanImpl

    public interface DeploymentSetPlan
    Encapsulates a related set of actions a DomainDeploymentManager should take to change the content deployed in the servers associated with one or more server groups.
    Author:
    Brian Stansberry
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      List<DeploymentAction> getDeploymentActions()
      Gets the list of deploy, replace and undeploy actions that are part of the deployment plan.
      long getGracefulShutdownTimeout()
      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.
      UUID getId()
      Gets the unique id of the deployment set plan.
      List<Set<ServerGroupDeploymentPlan>> getServerGroupDeploymentPlans()
      Gets the configuration of how the deployment actions are to be applied to the server groups in the domain.
      boolean isGracefulShutdown()
      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.
      boolean isRollback()
      Gets whether all deploy, undeploy, replace or remove operations associated with the deployment set plan should be rolled back in case of a failure in any of them.
      boolean isShutdown()
      Gets whether the deployment set plan is organized around a shutdown of the server.
    • Method Detail

      • getId

        UUID getId()
        Gets the unique id of the deployment set plan.
        Returns:
        the id. Will not be null
      • getDeploymentActions

        List<DeploymentAction> getDeploymentActions()
        Gets the list of deploy, replace and undeploy actions that are part of the deployment plan.
        Returns:
        the actions. Will not be null
      • isRollback

        boolean isRollback()
        Gets whether all deploy, undeploy, replace or remove operations associated with the deployment set plan should be rolled back in case of a failure in any of them.
        Returns:
        true if all operations should be rolled back if any of them fail
      • isShutdown

        boolean isShutdown()
        Gets whether the deployment set plan is organized around a shutdown of the server.
        Returns:
        true if the plan will be organized around a shutdown, false otherwise
      • isGracefulShutdown

        boolean isGracefulShutdown()
        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.
        Returns:
        true if the plan will be organized around a graceful shutdown, false otherwise
      • getGracefulShutdownTimeout

        long getGracefulShutdownTimeout()
        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.
        Returns:
        the period in ms, or -1 if isGracefulShutdown() would return false
      • getServerGroupDeploymentPlans

        List<Set<ServerGroupDeploymentPlan>> getServerGroupDeploymentPlans()
        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.

        Returns:
        data structure representing how the deployment actions are to be applied to the server groups in the domain.