Maor Lipchuk has posted comments on this change. Change subject: core: adding DAO support for unregistered VMs/Templates. ......................................................................
Patch Set 10: (13 comments) http://gerrit.ovirt.org/#/c/26480/10/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/OvfEntityData.java File backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/OvfEntityData.java: Line 5: import org.ovirt.engine.core.compat.Guid; Line 6: import org.ovirt.engine.core.compat.Version; Line 7: Line 8: public class OvfEntityData extends IVdcQueryable implements Serializable { Line 9: private static final long serialVersionUID = 3376648147702972152L; > add separator line done Line 10: private Guid vmId; Line 11: private String vmName; Line 12: private String entityType; Line 13: private Guid storageDomainId; http://gerrit.ovirt.org/#/c/26480/10/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/UnregisteredOVFDataDAO.java File backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/UnregisteredOVFDataDAO.java: Line 4: Line 5: import org.ovirt.engine.core.common.businessentities.OvfEntityData; Line 6: import org.ovirt.engine.core.compat.Guid; Line 7: Line 8: public interface UnregisteredOVFDataDAO extends DAO { > for next phases - consider using MassOperationsDao sure Line 9: Line 10: /** Line 11: * Retrieves the entity with the given VM id. Line 12: * http://gerrit.ovirt.org/#/c/26480/10/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/UnregisteredOVFDataDAOTest.java File backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/UnregisteredOVFDataDAOTest.java: Line 11: Line 12: public class UnregisteredOVFDataDAOTest extends BaseDAOTestCase { Line 13: private UnregisteredOVFDataDAO dao; Line 14: Line 15: /** > not sure this comment is needed, but please keep a consistent convention (i removed Line 16: * Ensures that get requires a valid id. Line 17: */ Line 18: @Test Line 19: public void testGetWithVMId() { http://gerrit.ovirt.org/#/c/26480/10/backend/manager/modules/dal/src/test/resources/fixtures.xml File backend/manager/modules/dal/src/test/resources/fixtures.xml: Line 1: > redundant done Line 2: Line 3: Line 4: <dataset> Line 5: <table name="vdc_options"> http://gerrit.ovirt.org/#/c/26480/10/packaging/dbscripts/unregistered_OVF_data_sp.sql File packaging/dbscripts/unregistered_OVF_data_sp.sql: Line 8: AS $procedure$ Line 9: BEGIN Line 10: INSERT INTO unregistered_ovf_of_entities(vm_guid, storage_domain_id, entity_type, vm_name, os_id, lowest_comp_version, ovf_data, ovf_extra_data) Line 11: SELECT v_vm_guid, v_storage_domain_id, entity_type, vm_name, os, compatibility_version, ovf_data, v_ovf_extra_data Line 12: FROM vm_static vs,vm_ovf_generations vog,vds_groups > formmat - sepearate comma for readability done Line 13: WHERE vs.vm_guid = vog.vm_guid Line 14: AND vs.vm_guid = v_vm_guid Line 15: AND vs.vds_group_id = vds_groups.vds_group_id; Line 16: END; $procedure$ Line 9: BEGIN Line 10: INSERT INTO unregistered_ovf_of_entities(vm_guid, storage_domain_id, entity_type, vm_name, os_id, lowest_comp_version, ovf_data, ovf_extra_data) Line 11: SELECT v_vm_guid, v_storage_domain_id, entity_type, vm_name, os, compatibility_version, ovf_data, v_ovf_extra_data Line 12: FROM vm_static vs,vm_ovf_generations vog,vds_groups Line 13: WHERE vs.vm_guid = vog.vm_guid > This "where" should be in the BLL level , a where in the insert is not stan moved to bll Line 14: AND vs.vm_guid = v_vm_guid Line 15: AND vs.vds_group_id = vds_groups.vds_group_id; Line 16: END; $procedure$ Line 17: LANGUAGE plpgsql; Line 16: END; $procedure$ Line 17: LANGUAGE plpgsql; Line 18: Line 19: Line 20: Create or replace FUNCTION removeEntityFromUnregistered(v_vm_guid UUID, v_storage_domain_id UUID) > =>RemoveEntityFromUnregistered done Line 21: RETURNS VOID Line 22: AS $procedure$ Line 23: DECLARE Line 24: v_val UUID; Line 29: END; $procedure$ Line 30: LANGUAGE plpgsql; Line 31: Line 32: Line 33: Create or replace FUNCTION getAllOVFEntitiesForStorageDomain(v_storage_domain_id UUID, v_entity_type VARCHAR(20)) > =>GetAllOVFEntitiesForStorageDomain done Line 34: RETURNS SETOF unregistered_ovf_of_entities STABLE Line 35: AS $procedure$ Line 36: BEGIN Line 37: RETURN QUERY SELECT unregistered_ovf_of_entities.* Line 33: Create or replace FUNCTION getAllOVFEntitiesForStorageDomain(v_storage_domain_id UUID, v_entity_type VARCHAR(20)) Line 34: RETURNS SETOF unregistered_ovf_of_entities STABLE Line 35: AS $procedure$ Line 36: BEGIN Line 37: RETURN QUERY SELECT unregistered_ovf_of_entities.* > '*' should be sufficient done Line 38: FROM unregistered_ovf_of_entities Line 39: WHERE storage_domain_id = v_storage_domain_id Line 40: AND entity_type = v_entity_type; Line 41: END; $procedure$ Line 41: END; $procedure$ Line 42: LANGUAGE plpgsql; Line 43: Line 44: Line 45: Create or replace FUNCTION getOVFDataByVmId(v_vm_guid UUID) > =>GetOVFDataByVmId done Line 46: RETURNS SETOF unregistered_ovf_of_entities STABLE Line 47: AS $procedure$ Line 48: BEGIN Line 49: RETURN QUERY SELECT unregistered_ovf_of_entities.* Line 45: Create or replace FUNCTION getOVFDataByVmId(v_vm_guid UUID) Line 46: RETURNS SETOF unregistered_ovf_of_entities STABLE Line 47: AS $procedure$ Line 48: BEGIN Line 49: RETURN QUERY SELECT unregistered_ovf_of_entities.* > '*' should be sufficient done Line 50: FROM unregistered_ovf_of_entities Line 51: WHERE vm_guid = v_vm_guid; Line 52: END; $procedure$ Line 53: LANGUAGE plpgsql; http://gerrit.ovirt.org/#/c/26480/10/packaging/dbscripts/upgrade/03_05_0410_unregistered_ovf_of_entities.sql File packaging/dbscripts/upgrade/03_05_0410_unregistered_ovf_of_entities.sql: Line 7: ovf_data text, Line 8: ovf_extra_data text, Line 9: os_id integer, Line 10: lowest_comp_version character varying(40), Line 11: CONSTRAINT pk_vm_guid_storage_domain_unregistered PRIMARY KEY(vm_guid, storage_domain_id) > It's not enough information for displaying in client (e.g. template/origin/ added all the other columns the same as in the export domain Line 12: ); Line 13: Line 10: lowest_comp_version character varying(40), Line 11: CONSTRAINT pk_vm_guid_storage_domain_unregistered PRIMARY KEY(vm_guid, storage_domain_id) Line 12: ); Line 13: Line 14: ALTER TABLE unregistered_ovf_of_entities add constraint "unregistered_ovf_of_entities_storage_domain" FOREIGN KEY (storage_domain_id) REFERENCES storage_domain_static(id) ON DELETE CASCADE; > unregistered_ovf_of_entities_storage_domain=>fk_unregistered_ovf_of_entitie done -- To view, visit http://gerrit.ovirt.org/26480 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I385fac757f46131ae0c0048b6cf39b78f037e852 Gerrit-PatchSet: 10 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Maor Lipchuk <[email protected]> Gerrit-Reviewer: Daniel Erez <[email protected]> Gerrit-Reviewer: Eli Mesika <[email protected]> Gerrit-Reviewer: Maor Lipchuk <[email protected]> Gerrit-Reviewer: Tal Nisan <[email protected]> Gerrit-Reviewer: [email protected] Gerrit-Reviewer: oVirt Jenkins CI Server Gerrit-HasComments: Yes _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
