public Response flexUp()

in myriad-scheduler/src/main/java/org/apache/myriad/api/ClustersResource.java [76:97]


  public Response flexUp(FlexUpClusterRequest request) {
    Preconditions.checkNotNull(request, "request object cannot be null or empty");

    Integer instances = request.getInstances();
    String profile = request.getProfile();
    List<String> constraints = request.getConstraints();
    LOGGER.info("Received flexup request. Profile: {}, Instances: {}, Constraints: {}", profile, instances, constraints);

    Response.ResponseBuilder response = Response.status(Response.Status.ACCEPTED);
    boolean isValidRequest = validateProfile(profile, response);
    isValidRequest = isValidRequest && validateInstances(instances, response);
    isValidRequest = isValidRequest && validateConstraints(constraints, response);

    Response returnResponse = response.build();
    if (returnResponse.getStatus() == Response.Status.ACCEPTED.getStatusCode()) {
      String constraint = constraints != null && !constraints.isEmpty() ? constraints.get(0) : null;
      this.myriadOperations.flexUpCluster(this.profileManager.get(profile), instances, ConstraintFactory.createConstraint(
          constraint));
    }

    return returnResponse;
  }