package org.ovirt.engine.ui.uicommonweb.validation; import org.ovirt.engine.core.compat.Version; import org.ovirt.engine.ui.uicompat.ConstantsManager; public class ClusterVersionChangeValidation implements IValidation { private boolean hasActiveVm; private Version oldClusterVersion; public ClusterVersionChangeValidation(boolean hasActiveVm, Version oldClusterVersion) { this.hasActiveVm = hasActiveVm; this.oldClusterVersion = oldClusterVersion; } @Override public ValidationResult validate(Object value) { ValidationResult result = new ValidationResult(); Version newClusterVersion = (Version) value; if (value == null || (hasActiveVm && !newClusterVersion.equals(oldClusterVersion))) { result.setSuccess(false); result.getReasons().add(ConstantsManager.getInstance().getConstants().cannotClusterVersionChangeWithActiveVm()); } return result; } }