Eli Mesika has uploaded a new change for review. Change subject: core[DAO]: Adding external status to DAOs ......................................................................
core[DAO]: Adding external status to DAOs This patch adds external status handling to the DAOs Change-Id: I8124d0dc5fa1aa97dde67462d7807f2b3ba60411 Signed-off-by: emesika <emes...@redhat.com> --- M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StorageDomainDAODbFacadeImpl.java M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAO.java M backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAODbFacadeImpl.java M backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAOTest.java M backend/manager/modules/dal/src/test/resources/fixtures.xml 5 files changed, 34 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/34/42134/1 diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StorageDomainDAODbFacadeImpl.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StorageDomainDAODbFacadeImpl.java index 8afe7bd..2c7f2b1 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StorageDomainDAODbFacadeImpl.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StorageDomainDAODbFacadeImpl.java @@ -8,6 +8,7 @@ import javax.inject.Singleton; import org.ovirt.engine.core.common.businessentities.ActionGroup; +import org.ovirt.engine.core.common.businessentities.ExternalStatus; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.businessentities.StorageDomainSharedStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainStatus; @@ -173,6 +174,7 @@ entity.setActualImagesSize(rs.getInt("actual_images_size")); entity.setCommittedDiskSize(rs.getInt("commited_disk_size")); entity.setStatus(StorageDomainStatus.forValue(rs.getInt("status"))); + entity.setExternalStatus(ExternalStatus.forValue(rs.getInt("external_status"))); entity.setStorageDomainSharedStatus( StorageDomainSharedStatus.forValue(rs.getInt("storage_domain_shared_status"))); entity.setAutoRecoverable(rs.getBoolean("recoverable")); diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAO.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAO.java index 0409514..46e10e4 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAO.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAO.java @@ -2,6 +2,7 @@ import java.util.List; +import org.ovirt.engine.core.common.businessentities.ExternalStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainStatus; import org.ovirt.engine.core.common.businessentities.StoragePoolIsoMapId; import org.ovirt.engine.core.common.businessentities.StoragePoolIsoMap; @@ -12,7 +13,7 @@ * */ public interface StoragePoolIsoMapDAO extends GenericDao<StoragePoolIsoMap, StoragePoolIsoMapId>, - StatusAwareDao<StoragePoolIsoMapId, StorageDomainStatus> { + StatusAwareDao<StoragePoolIsoMapId, StorageDomainStatus>, ExternalStatusAwareDao<StoragePoolIsoMapId, ExternalStatus> { /** * Gets all maps for a given storage pool ID * diff --git a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAODbFacadeImpl.java b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAODbFacadeImpl.java index 417ad50..98214bd 100644 --- a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAODbFacadeImpl.java +++ b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAODbFacadeImpl.java @@ -7,6 +7,7 @@ import javax.inject.Named; import javax.inject.Singleton; +import org.ovirt.engine.core.common.businessentities.ExternalStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainStatus; import org.ovirt.engine.core.common.businessentities.StoragePoolIsoMap; import org.ovirt.engine.core.common.businessentities.StoragePoolIsoMapId; @@ -27,6 +28,7 @@ entity.setstorage_id(getGuidDefaultEmpty(rs, "storage_id")); entity.setstorage_pool_id(getGuid(rs, "storage_pool_id")); entity.setStatus(StorageDomainStatus.forValue(rs.getInt("status"))); + entity.setExternalStatus(ExternalStatus.forValue(rs.getInt("external_status"))); return entity; } } @@ -93,6 +95,10 @@ getCallsHandler().executeModification("Updatestorage_pool_iso_map_status", parameterSource); } - - + @Override + public void updateExternalStatus(StoragePoolIsoMapId id, ExternalStatus status) { + MapSqlParameterSource parameterSource = getCustomMapSqlParameterSource().addValue("storage_id", + id.getStorageId()).addValue("storage_pool_id", id.getStoragePoolId()).addValue("external_status", status); + getCallsHandler().executeModification("UpdateStorageDomainExternalStatus", parameterSource); + } } diff --git a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAOTest.java b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAOTest.java index 13bc067..dcc6072 100644 --- a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAOTest.java +++ b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/StoragePoolIsoMapDAOTest.java @@ -8,6 +8,7 @@ import java.util.List; import org.junit.Test; +import org.ovirt.engine.core.common.businessentities.ExternalStatus; import org.ovirt.engine.core.common.businessentities.StorageDomainStatus; import org.ovirt.engine.core.common.businessentities.StoragePool; import org.ovirt.engine.core.common.businessentities.StoragePoolIsoMap; @@ -74,6 +75,15 @@ } @Test + public void testUpdateStorageDomainExternalStatus() { + StoragePoolIsoMap before = dao.get(existingStoragePoolIsoMap.getId()); + before.setExternalStatus(ExternalStatus.Error); + dao.updateExternalStatus(before.getId(), before.getExternalStatus()); + StoragePoolIsoMap after = dao.get(existingStoragePoolIsoMap.getId()); + assertEquals(before.getExternalStatus(), after.getExternalStatus()); + } + + @Test public void testRemoveStoragePoolIsoMap() { dao.remove(new StoragePoolIsoMapId(existingStoragePoolIsoMap.getstorage_id(), existingStoragePoolIsoMap.getstorage_pool_id())); diff --git a/backend/manager/modules/dal/src/test/resources/fixtures.xml b/backend/manager/modules/dal/src/test/resources/fixtures.xml index 854951b..d7d917e 100644 --- a/backend/manager/modules/dal/src/test/resources/fixtures.xml +++ b/backend/manager/modules/dal/src/test/resources/fixtures.xml @@ -4748,60 +4748,72 @@ <column>storage_id</column> <column>storage_pool_id</column> <column>status</column> + <column>external_status</column> <row> <value>72e3a666-89e1-4005-a7ca-f7548004a9ab</value> <value>6d849ebf-755f-4552-ad09-9a090cda105d</value> + <value>3</value> <value>3</value> </row> <row> <value>17e7489d-d490-4681-a322-073ca19bd33d</value> <value>72b9e200-f48b-4687-83f2-62828f249a47</value> <value>3</value> + <value>0</value> </row> <row> <value>c2211b56-8869-41cd-84e1-78d7cb96f31d</value> <value>72b9e200-f48b-4687-83f2-62828f249a47</value> <value>3</value> + <value>1</value> </row> <row> <value>d9ede37f-e6c3-4bf9-a984-19174070aa31</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a0</value> + <value>0</value> <value>0</value> </row> <row> <value>d9ede37f-e6c3-4bf9-a984-19174070aa41</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a0</value> <value>6</value> + <value>2</value> </row> <row> <value>d034f3b2-fb9c-414a-b1be-1e642cfe57ae</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a0</value> <value>3</value> + <value>4</value> </row> <row> <value>d9ede37f-e6c3-4bf9-a984-19174070aa32</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a1</value> <value>3</value> + <value>0</value> </row> <row> <value>d034f3b2-fb9c-414a-b1be-1e642cfe57ae</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a1</value> <value>3</value> + <value>0</value> </row> <row> <value>a7957057-b5de-47bb-b8e0-2f8dbd9e63d8</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a0</value> <value>3</value> + <value>0</value> </row> <row> <value>bee623f3-9174-4ffd-aa30-4fb0dc0aa2f5</value> <value>386bffd1-e7ed-4b08-bce9-d7df10f8c9a0</value> <value>3</value> + <value>0</value> </row> <row> <value>72e3a666-89e1-4005-a7ca-f7548004a9aa</value> <value>6d849ebf-755f-4552-ad09-9a090cda105c</value> <value>4</value> + <value>0</value> </row> </table> -- To view, visit https://gerrit.ovirt.org/42134 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8124d0dc5fa1aa97dde67462d7807f2b3ba60411 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Eli Mesika <emes...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches