Interface ServerSetupTask

All Known Implementing Classes:
ConfigureLoggingSetupTask, ReloadServerSetupTask, SnapshotServerSetupTask, SystemPropertyServerSetupTask

public interface ServerSetupTask
A task which is run before deployment that allows the client to customize the server config.
Author:
Stuart Douglas
  • Method Summary

    Modifier and Type
    Method
    Description
    default org.jboss.dmr.ModelNode
    executeOperation(ManagementClient client, org.jboss.as.controller.client.Operation op)
    Executes an operation failing with a RuntimeException if the operation was not successful.
    default org.jboss.dmr.ModelNode
    executeOperation(ManagementClient client, org.jboss.as.controller.client.Operation op, Function<org.jboss.dmr.ModelNode,String> errorMessage)
    Executes an operation failing with a RuntimeException if the operation was not successful.
    default org.jboss.dmr.ModelNode
    executeOperation(ManagementClient client, org.jboss.dmr.ModelNode op)
    Executes an operation failing with a RuntimeException if the operation was not successful.
    default org.jboss.dmr.ModelNode
    executeOperation(ManagementClient client, org.jboss.dmr.ModelNode op, Function<org.jboss.dmr.ModelNode,String> errorMessage)
    Executes an operation failing with a RuntimeException if the operation was not successful.
    void
    setup(ManagementClient managementClient, String containerId)
    Execute any necessary setup work that needs to happen before the first deployment to the given container.
    void
    tearDown(ManagementClient managementClient, String containerId)
    Execute any tear down work that needs to happen after the last deployment associated with the given container has been undeployed.
  • Method Details

    • setup

      void setup(ManagementClient managementClient, String containerId) throws Exception
      Execute any necessary setup work that needs to happen before the first deployment to the given container.

      Note on exception handling: If an implementation of this method throws any exception, the implementation can assume the following:

      1. Any subsequent ServerSetupTasks associated with test class will not be executed.
      2. The deployment event that triggered the call to this method will be skipped.
      3. The tearDown method of the instance that threw the exception will not be invoked. Therefore, implementations that throw AssumptionViolatedException, or any other exception, should do so before altering any system state.
      4. The tearDown method for any previously executed ServerSetupTasks associated with test class will be invoked.

      If any other exception is thrown, the tearDown(ManagementClient, String) will be executed, including this implementations tearDown(), re-throwing the original exception. The original exception will have any other exceptions thrown in the tearDown() methods add as suppressed messages.

      Parameters:
      managementClient - management client to use to interact with the container
      containerId - id of the container to which the deployment will be deployed
      Throws:
      Exception - if a failure occurs
    • tearDown

      void tearDown(ManagementClient managementClient, String containerId) throws Exception
      Execute any tear down work that needs to happen after the last deployment associated with the given container has been undeployed.
      Parameters:
      managementClient - management client to use to interact with the container
      containerId - id of the container to which the deployment will be deployed
      Throws:
      Exception - if a failure occurs
    • executeOperation

      default org.jboss.dmr.ModelNode executeOperation(ManagementClient client, org.jboss.dmr.ModelNode op) throws IOException
      Executes an operation failing with a RuntimeException if the operation was not successful.
      Parameters:
      client - the client used to communicate with the server
      op - the operation to execute
      Returns:
      the result from the operation
      Throws:
      org.wildfly.plugin.tools.OperationExecutionException - if the operation failed
      IOException - if an error occurs communicating with the server
    • executeOperation

      default org.jboss.dmr.ModelNode executeOperation(ManagementClient client, org.jboss.dmr.ModelNode op, Function<org.jboss.dmr.ModelNode,String> errorMessage) throws IOException
      Executes an operation failing with a RuntimeException if the operation was not successful.
      Parameters:
      client - the client used to communicate with the server
      op - the operation to execute
      errorMessage - a function which accepts the result as the argument and returns an error message for an unsuccessful operation
      Returns:
      the result from the operation
      Throws:
      org.wildfly.plugin.tools.OperationExecutionException - if the operation failed
      IOException - if an error occurs communicating with the server
    • executeOperation

      default org.jboss.dmr.ModelNode executeOperation(ManagementClient client, org.jboss.as.controller.client.Operation op) throws IOException
      Executes an operation failing with a RuntimeException if the operation was not successful.
      Parameters:
      client - the client used to communicate with the server
      op - the operation to execute
      Returns:
      the result from the operation
      Throws:
      org.wildfly.plugin.tools.OperationExecutionException - if the operation failed
      IOException - if an error occurs communicating with the server
    • executeOperation

      default org.jboss.dmr.ModelNode executeOperation(ManagementClient client, org.jboss.as.controller.client.Operation op, Function<org.jboss.dmr.ModelNode,String> errorMessage) throws IOException
      Executes an operation failing with a RuntimeException if the operation was not successful.
      Parameters:
      client - the client used to communicate with the server
      op - the operation to execute
      errorMessage - a function which accepts the result as the argument and returns an error message for an unsuccessful operation
      Returns:
      the result from the operation
      Throws:
      org.wildfly.plugin.tools.OperationExecutionException - if the operation failed
      IOException - if an error occurs communicating with the server