package org.ovirt.engine.core.bll.validator.storage; import org.ovirt.engine.core.bll.ValidationResult; import org.ovirt.engine.core.common.businessentities.VDS; import org.ovirt.engine.core.common.businessentities.storage.StorageServerConnectionExtension; import org.ovirt.engine.core.common.errors.EngineMessage; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.dbbroker.DbFacade; public class StorageServerConnectionExtensionValidator { public ValidationResult isConnectionExtensionExists(Guid connExtId) { StorageServerConnectionExtension connExt = getDbFacade().getStorageServerConnectionExtensionDao().get(connExtId); if (connExt == null) { return new ValidationResult(EngineMessage.ACTION_TYPE_FAILED_STORAGE_CONNECTION_EXTENSION_DOES_NOT_EXIST, String.format("$%1$s %2$s", "connExtId", connExtId.toString())); } return ValidationResult.VALID; } public ValidationResult isConnectionDoesNotExistForHostAndTarget(StorageServerConnectionExtension connExt) { StorageServerConnectionExtension existingConnExt = getDbFacade().getStorageServerConnectionExtensionDao().getByHostIdAndTarget( connExt.getHostId(), connExt.getIqn()); if (existingConnExt != null && !existingConnExt.getId().equals(connExt.getId())) { VDS host = getDbFacade().getVdsDao().get(connExt.getHostId()); return new ValidationResult(EngineMessage.ACTION_TYPE_FAILED_STORAGE_CONNECTION_EXTENSION_ALREADY_EXISTS, String.format("$target %s", connExt.getIqn()), String.format("$vdsName %s", host.getName())); } return ValidationResult.VALID; } protected DbFacade getDbFacade() { return DbFacade.getInstance(); } }