Class Operations

java.lang.Object
org.jboss.as.controller.client.helpers.Operations

public class Operations extends Object
A helper class for various operation tasks. Includes helpers to create standard operations, check whether the operation was executed successfully, get the failure description if unsuccessful, etc.

Example: Read the server state

     

          final ModelControllerClient client = ModelControllerClient.Factory.create(hostname, port);
          final ModelNode address = new ModelNode().setEmptyList();
          // Read the server state
          final ModelNode op = Operations.createReadAttributeOperation(address, "server-state");
          final ModelNode result = client.execute(op);
          if (Operations.isSuccessfulOutcome(result)) {
              System.out.printf("Server state: %s%n", Operations.readResult(result));
          } else {
              System.out.printf("Failure! %s%n", Operations.getFailureDescription(result));
          }
     
 
Author:
James R. Perkins
  • Constructor Details

    • Operations

      public Operations()
  • Method Details

    • isSuccessfulOutcome

      public static boolean isSuccessfulOutcome(ModelNode outcome)
      Checks the result for a successful operation outcome.
      Parameters:
      outcome - the result of executing an operation
      Returns:
      true if the operation was successful, otherwise false
    • getFailureDescription

      public static ModelNode getFailureDescription(ModelNode result)
      Parses the result and returns the failure description.
      Parameters:
      result - the result of executing an operation
      Returns:
      the failure description if defined, otherwise a new undefined model node
      Throws:
      IllegalArgumentException - if the outcome of the operation was successful
    • createAddress

      public static ModelNode createAddress(String... pairs)
      Creates an address that can be used as the address for an operation. The address is simply a ModelNode of type ModelType.LIST.

      The string is split into key/value pairs. If the final key does not have a value an * is used to indicate a wildcard for the address.

      Parameters:
      pairs - the key/value pairs to use
      Returns:
      an address for the key/value pairs
    • createAddress

      public static ModelNode createAddress(Iterable<String> pairs)
      Creates an address that can be used as the address for an operation. The address is simply a ModelNode of type ModelType.LIST.

      The string is split into key/value pairs. If the final key does not have a value an * is used to indicate a wildcard for the address.

      Parameters:
      pairs - the key/value pairs to use
      Returns:
      an address for the key/value pairs
    • getOperationAddress

      public static ModelNode getOperationAddress(ModelNode op)
      Returns the address for the operation.
      Parameters:
      op - the operation
      Returns:
      the operation address or a new undefined model node
    • getOperationName

      public static String getOperationName(ModelNode op)
      Returns the name of the operation.
      Parameters:
      op - the operation
      Returns:
      the name of the operation
      Throws:
      IllegalArgumentException - if the operation was not defined.
    • createAddOperation

      public static ModelNode createAddOperation(ModelNode address)
      Creates an add operation.
      Parameters:
      address - the address for the operation
      Returns:
      the operation
    • createRemoveOperation

      public static ModelNode createRemoveOperation(ModelNode address)
      Creates a remove operation.
      Parameters:
      address - the address for the operation
      Returns:
      the operation
    • createCompositeOperation

      public static ModelNode createCompositeOperation()
      Creates a composite operation with an empty address and empty steps that will rollback on a runtime failure.

      By default the ClientConstants.ROLLBACK_ON_RUNTIME_FAILURE is set to true to rollback all operations if one fails.

      Returns:
      the operation
    • createReadAttributeOperation

      public static ModelNode createReadAttributeOperation(ModelNode address, String attributeName)
      Creates an operation to read the attribute represented by the attributeName parameter.
      Parameters:
      address - the address to create the read attribute for
      attributeName - the name of the parameter to read
      Returns:
      the operation
    • createReadResourceOperation

      public static ModelNode createReadResourceOperation(ModelNode address)
      Creates a non-recursive operation to read a resource.
      Parameters:
      address - the address to create the read for
      Returns:
      the operation
    • createReadResourceOperation

      public static ModelNode createReadResourceOperation(ModelNode address, boolean recursive)
      Creates an operation to read a resource.
      Parameters:
      address - the address to create the read for
      recursive - whether to search recursively or not
      Returns:
      the operation
    • createUndefineAttributeOperation

      public static ModelNode createUndefineAttributeOperation(ModelNode address, String attributeName)
      Creates an operation to undefine an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name attribute to undefine
      Returns:
      the operation
    • createWriteAttributeOperation

      public static ModelNode createWriteAttributeOperation(ModelNode address, String attributeName, boolean value)
      Creates an operation to write an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name of the attribute to write
      value - the value to set the attribute to
      Returns:
      the operation
    • createWriteAttributeOperation

      public static ModelNode createWriteAttributeOperation(ModelNode address, String attributeName, int value)
      Creates an operation to write an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name of the attribute to write
      value - the value to set the attribute to
      Returns:
      the operation
    • createWriteAttributeOperation

      public static ModelNode createWriteAttributeOperation(ModelNode address, String attributeName, long value)
      Creates an operation to write an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name of the attribute to write
      value - the value to set the attribute to
      Returns:
      the operation
    • createWriteAttributeOperation

      public static ModelNode createWriteAttributeOperation(ModelNode address, String attributeName, String value)
      Creates an operation to write an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name of the attribute to write
      value - the value to set the attribute to
      Returns:
      the operation
    • createWriteAttributeOperation

      public static ModelNode createWriteAttributeOperation(ModelNode address, String attributeName, ModelNode value)
      Creates an operation to write an attribute value represented by the attributeName parameter.
      Parameters:
      address - the address to create the write attribute for
      attributeName - the name of the attribute to write
      value - the value to set the attribute to
      Returns:
      the operation
    • createOperation

      public static ModelNode createOperation(String operation)
      Creates a generic operation with an empty (root) address.
      Parameters:
      operation - the operation to create
      Returns:
      the operation
    • createOperation

      public static ModelNode createOperation(String operation, ModelNode address)
      Creates an operation.
      Parameters:
      operation - the operation name
      address - the address for the operation
      Returns:
      the operation
      Throws:
      IllegalArgumentException - if the address is not of type ModelType.LIST
    • readResult

      public static ModelNode readResult(ModelNode result)
      Reads the result of an operation and returns the result. If the operation does not have a ClientConstants.RESULT attribute, a new undefined ModelNode is returned.
      Parameters:
      result - the result of executing an operation
      Returns:
      the result of the operation or a new undefined model node