Class ExecutionController<S extends Solution<S,I>, I extends Instance>

java.lang.Object
es.urjc.etsii.grafo.autoconfig.controller.ExecutionController<S,I>
Type Parameters:
S - Solution class
I - Instance class

@RestController public class ExecutionController<S extends Solution<S,I>, I extends Instance> extends Object
API endpoints related to experiment and run execution. Currently, used for IRACE integration using the middleware.sh
  • Constructor Details

    • ExecutionController

      public ExecutionController(IraceOrchestrator<S,I> orchestrator, IraceTargetEvaluator<S,I> targetEvaluator)
      Create a new execution controller
      Parameters:
      orchestrator - Irace orchestrator
      targetEvaluator - IRACE target evaluator
  • Method Details

    • batchExecute

      @PostMapping("/internal/autoconfig/irace/evaluations") public org.springframework.http.ResponseEntity<List<ExecuteResponse>> batchExecute(@RequestBody MultiExecuteRequest request)
      Execute and return the results for the given IRACE configuration
      Parameters:
      request - integration key and run configuration
      Returns:
      run result
    • progress

      @PostMapping("/internal/autoconfig/irace/progress") public org.springframework.http.ResponseEntity<Void> progress(@RequestBody AutoconfigProgressRequest request)
      Receive the elite set and progress counters produced after an IRACE iteration.
      Parameters:
      request - authenticated progress snapshot
      Returns:
      empty successful response