package com.sequenceiq.cloudbreak.controller.validation.stack;
import java.util.List;
import javax.inject.Inject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import com.sequenceiq.cloudbreak.api.model.StackRequest;
import com.sequenceiq.cloudbreak.cloud.model.StackParamValidation;
import com.sequenceiq.cloudbreak.service.stack.StackParameterService;
@Component
public class StackValidator {
private static final Logger LOGGER = LoggerFactory.getLogger(StackValidator.class);
@Inject
private List<ParameterValidator> parameterValidators;
@Inject
private StackParameterService stackParameterService;
public void validate(StackRequest stackRequest) {
List<StackParamValidation> stackParamValidations = stackParameterService.getStackParams(stackRequest);
for (ParameterValidator parameterValidator : parameterValidators) {
parameterValidator.validate(stackRequest.getParameters(), stackParamValidations);
}
}
}