Class Commands

java.lang.Object
org.hobbit.core.Commands

public final class Commands extends Object
  • Field Details

    • SYSTEM_READY_SIGNAL

      public static final byte SYSTEM_READY_SIGNAL
      The signal sent by the benchmarked system to indicate that the system is ready.
      See Also:
    • BENCHMARK_READY_SIGNAL

      public static final byte BENCHMARK_READY_SIGNAL
      The signal sent by the benchmark controller to indicate that the benchmark is ready.
      See Also:
    • DATA_GENERATOR_READY_SIGNAL

      public static final byte DATA_GENERATOR_READY_SIGNAL
      The signal sent by the data generator to indicate that it is ready.
      See Also:
    • TASK_GENERATOR_READY_SIGNAL

      public static final byte TASK_GENERATOR_READY_SIGNAL
      The signal sent by the task generator to indicate that it is ready.
      See Also:
    • EVAL_STORAGE_READY_SIGNAL

      public static final byte EVAL_STORAGE_READY_SIGNAL
      The signal sent by the evaluation storage to indicate that it is ready.
      See Also:
    • EVAL_MODULE_READY_SIGNAL

      public static final byte EVAL_MODULE_READY_SIGNAL
      The signal sent by the evaluation module to indicate that it is ready.
      See Also:
    • DATA_GENERATOR_START_SIGNAL

      public static final byte DATA_GENERATOR_START_SIGNAL
      See Also:
    • TASK_GENERATOR_START_SIGNAL

      public static final byte TASK_GENERATOR_START_SIGNAL
      See Also:
    • EVAL_MODULE_FINISHED_SIGNAL

      public static final byte EVAL_MODULE_FINISHED_SIGNAL
      See Also:
    • EVAL_STORAGE_TERMINATE

      public static final byte EVAL_STORAGE_TERMINATE
      See Also:
    • BENCHMARK_FINISHED_SIGNAL

      public static final byte BENCHMARK_FINISHED_SIGNAL
      See Also:
    • DOCKER_CONTAINER_START

      public static final byte DOCKER_CONTAINER_START
      Command used to ask a docker managing component to start a certain container.

      The command is followed by a String containing the following JSON data:
      {
      "image": "image-to-run",
      "type": "system|benchmark",
      "parent":"parent-container-id"
      }

      See Also:
    • DOCKER_CONTAINER_STOP

      public static final byte DOCKER_CONTAINER_STOP
      Command used to ask a docker managing component to stop a certain container.

      The command is followed by a String containing the following JSON data:
      {
      "containerId": "container-to-stop"
      }

      See Also:
    • DATA_GENERATION_FINISHED

      public static final byte DATA_GENERATION_FINISHED
      See Also:
    • TASK_GENERATION_FINISHED

      public static final byte TASK_GENERATION_FINISHED
      See Also:
    • DOCKER_CONTAINER_TERMINATED

      public static final byte DOCKER_CONTAINER_TERMINATED
      See Also:
    • START_BENCHMARK_SIGNAL

      public static final byte START_BENCHMARK_SIGNAL
      See Also:
    • REQUEST_SYSTEM_RESOURCES_USAGE

      public static final byte REQUEST_SYSTEM_RESOURCES_USAGE
      See Also:
    • REPORT_ERROR

      public static final byte REPORT_ERROR
      Command used to report an error that should be persisted as part of the experiment result data.

      The command is followed by a String containing the following JSON data:
      {
      "containerId": "container reporting the error",
      "errorType": "IRI of the error type (optional)",
      "label": "A string that can be used as short label of an error (optional, the error type label will be used as default)"
      "description": "A string that can be used as a short description of an error (optional, the error type description will be used as default)"
      "details": "A string that contains details about the error, e.g., a stack trace (optional)."
      }

      The ErrorData class can be used to represent this data as Java object.

      See Also:
    • ID_TO_COMMAND_NAME_MAP

      private static final com.google.common.collect.ImmutableMap<Byte,String> ID_TO_COMMAND_NAME_MAP
  • Constructor Details

    • Commands

      private Commands()
  • Method Details

    • generateMap

      private static com.google.common.collect.ImmutableMap<Byte,String> generateMap()
    • toString

      public static String toString(byte command)
      Returns the name of the command if it is defined inside the Commands class or its id as String.
      Parameters:
      command - the command that should be transformed into a String
      Returns:
      the name of the command or its id if the name is not known