Eldan Shachar has uploaded a new change for review.

Change subject: commit: <restapi>: Control\view Soundcard property
......................................................................

commit: <restapi>: Control\view Soundcard property

* Added 'soundcard_enabled' to REST VM/template resource
* Added support for property in:
  VM/Template/Instance - Add / Update
  Pool - Add
* Updated rsdl
* Updated tests

Change-Id: I598cf89b6a5fd4755958cf7b597484c225166460
Bug-Url: https://bugzilla.redhat.com/1021186
Signed-off-by: Eldan Shachar <[email protected]>
---
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplateResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/util/VmHelper.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplateBasedResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesBasedResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmResourceTest.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmsResourceTest.java
16 files changed, 131 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/35/30635/1

diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
index 5ff3af2..a0bf322 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
@@ -2631,6 +2631,7 @@
           <xs:element name="timezone" type="xs:string" minOccurs="0" 
maxOccurs="1"/>
           <xs:element ref="domain" minOccurs="0" maxOccurs="1"/>
           <xs:element ref="usb" minOccurs="0" maxOccurs="1"/>
+          <xs:element ref="soundcard_enabled" minOccurs="0" maxOccurs="1"/>
           <xs:element name="tunnel_migration" type="xs:boolean" minOccurs="0" 
maxOccurs="1"/>
           <xs:element name="migration_downtime" type="xs:int" minOccurs="0" 
maxOccurs="1" />
           <xs:element ref="virtio_scsi" minOccurs="0" maxOccurs="1"/>
@@ -3051,6 +3052,7 @@
           <xs:element name="guest_info" type="GuestInfo" minOccurs="0" 
maxOccurs="1"/>
           <xs:element ref="quota" minOccurs="0" maxOccurs="1"/>
           <xs:element ref="usb" minOccurs="0" maxOccurs="1"/>
+          <xs:element ref="soundcard_enabled" minOccurs="0" maxOccurs="1"/>
           <xs:element name="tunnel_migration" type="xs:boolean" minOccurs="0" 
maxOccurs="1"/>
           <xs:element name="migration_downtime" type="xs:int" minOccurs="0" 
maxOccurs="1" />
           <xs:element ref="virtio_scsi" minOccurs="0" maxOccurs="1"/>
@@ -3768,6 +3770,8 @@
     </xs:sequence>
   </xs:complexType>
 
+   <xs:element name="soundcard_enabled" type="xs:boolean"/>
+
   <xs:element name="quota" type="Quota"/>
 
   <xs:complexType name="Quota">
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
index 790b49d..af845e9 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
@@ -96,6 +96,7 @@
           vm.tunnel_migration: xs:boolean
           vm.migration_downtime: xs:int
           vm.virtio_scsi.enabled: xs:boolean
+          vm.soundcard_enabled: xs:boolean
           vm.use_latest_template_version: xs:boolean
           vm.payloads.payload--COLLECTION: {payload.type: 'xs:string', 
payload.volume_id: 'xs:string', payload.files.file--COLLECTION: {file.name: 
'xs:string', file.content: 'xs:string'}}
           vm.cpu.cpu_tune.vcpu_pin--COLLECTION: {vcpu_pin.vcpu: 'xs:int', 
vcpu_pin.cpu_set: 'xs:string'}
@@ -182,6 +183,7 @@
           vm.tunnel_migration: xs:boolean
           vm.migration_downtime: xs:int
           vm.virtio_scsi.enabled: xs:boolean
+          vm.soundcard_enabled: xs:boolean
           vm.payloads.payload--COLLECTION: {payload.type: 'xs:string', 
payload.volume_id: 'xs:string', payload.files.file--COLLECTION: {file.name: 
'xs:string', file.content: 'xs:string'}}
           vm.initialization.configuration.type: 'xs:string'
           vm.initialization.configuration.data: 'xs:string'
@@ -240,6 +242,7 @@
           vm.tunnel_migration: xs:boolean
           vm.migration_downtime: xs:int
           vm.virtio_scsi.enabled: xs:boolean
+          vm.soundcard_enabled: xs:boolean
           vm.payloads.payload--COLLECTION: {payload.type: 'xs:string', 
payload.volume_id: 'xs:string', payload.files.file--COLLECTION: {file.name: 
'xs:string', file.content: 'xs:string'}}
           vm.cpu.cpu_tune.vcpu_pin--COLLECTION: {vcpu_pin.vcpu: 'xs:int', 
vcpu_pin.cpu_set: 'xs:string'}
           vm.serial_number.policy: xs:string
@@ -294,6 +297,7 @@
                 vm.tunnel_migration: xs:boolean
                 vm.migration_downtime: xs:int
                 vm.virtio_scsi.enabled: xs:boolean
+                vm.soundcard_enabled: xs:boolean
                 vm.payloads.payload--COLLECTION: {payload.type: 'xs:string', 
payload.volume_id: 'xs:string', payload.files.file--COLLECTION: {file.name: 
'xs:string', file.content: 'xs:string'}}
                 vm.initialization.configuration.type: 'xs:string'
                 vm.initialization.configuration.data: 'xs:string'
@@ -3664,6 +3668,7 @@
           template.tunnel_migration: xs:boolean
           template.migration_downtime: xs:int
           template.virtio_scsi.enabled: xs:boolean
+          template.soundcard_enabled: xs:boolean
           template.version.version_name: xs:string
           template.serial_number.policy: xs:string
           template.serial_number.value: xs:string
@@ -3722,6 +3727,7 @@
           template.tunnel_migration: xs:boolean
           template.migration_downtime: xs:int
           template.virtio_scsi.enabled: xs:boolean
+          template.soundcard_enabled: xs:boolean
           template.vm.disks.disk--COLLECTION: {disk.id: 'xs:string', 
storage_domains.storage_domain--COLLECTION: {storage_domain.id: 'xs:string'}}
           template.permissions.clone: xs:boolean
           template.version.version_name: xs:string
@@ -5096,6 +5102,7 @@
           instance_type.usb.type: xs:string
           instance_type.migration_downtime: xs:int
           instance_type.virtio_scsi.enabled: xs:boolean
+          instance_type.soundcard_enabled: xs:boolean
         description: add a new instance type to the system
     urlparams: {}
     headers:
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java
index 08b9285..fa5ca37 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java
@@ -59,6 +59,7 @@
             model.setVirtioScsi(new VirtIOSCSI());
         }
         
model.getVirtioScsi().setEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(entity.getId()).isEmpty());
+        
model.setSoundcardEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(entity.getId()).isEmpty());
         setRngDevice(model);
         return model;
     }
@@ -109,6 +110,7 @@
                 updateParams.setUpdateRngDevice(true);
                 
updateParams.setRngDevice(RngDeviceMapper.map(incoming.getRngDevice(), null));
             }
+            
updateParams.setSoundDeviceEnabled(incoming.isSetSoundcardEnabled() && 
incoming.isSoundcardEnabled());
 
             return getMapper(modelType, 
UpdateVmTemplateParameters.class).map(incoming, updateParams);
         }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java
index 8afcdb0..2fa1bf50 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java
@@ -74,6 +74,8 @@
         
addInstanceTypeParameters.setVirtioScsiEnabled(instanceType.isSetVirtioScsi() 
&& instanceType.getVirtioScsi().isSetEnabled() ?
                 instanceType.getVirtioScsi().isEnabled() : null);
 
+        
addInstanceTypeParameters.setSoundDeviceEnabled(instanceType.isSetSoundcardEnabled()
 && instanceType.isSoundcardEnabled());
+
 
         return performCreate(VdcActionType.AddVmTemplate,
                                addInstanceTypeParameters,
@@ -110,7 +112,7 @@
             model.setVirtioScsi(new VirtIOSCSI());
         }
         
model.getVirtioScsi().setEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(entity.getId()).isEmpty());
-
+        
model.setSoundcardEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(entity.getId()).isEmpty());
         List<VmRngDevice> rngDevices = getRngDevices(entity.getId());
         if (rngDevices != null && !rngDevices.isEmpty()) {
             model.setRngDevice(RngDeviceMapper.map(rngDevices.get(0), null));
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplateResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplateResource.java
index b174f04..36924c1 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplateResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplateResource.java
@@ -127,12 +127,12 @@
             VmTemplate updated = getMapper(modelType, 
VmTemplate.class).map(incoming, entity);
             
updated.setUsbPolicy(VmMapper.getUsbPolicyOnUpdate(incoming.getUsb(), 
entity.getUsbPolicy(),
                     
lookupCluster(updated.getVdsGroupId()).getcompatibility_version()));
-
             UpdateVmTemplateParameters params = new 
UpdateVmTemplateParameters(updated);
             if (incoming.isSetRngDevice()) {
                 params.setUpdateRngDevice(true);
                 
params.setRngDevice(RngDeviceMapper.map(incoming.getRngDevice(), null));
             }
+            params.setSoundDeviceEnabled(incoming.isSetSoundcardEnabled() && 
incoming.isSoundcardEnabled());
             return getMapper(modelType, 
UpdateVmTemplateParameters.class).map(incoming, params);
         }
     }
@@ -151,6 +151,7 @@
             model.setVirtioScsi(new VirtIOSCSI());
         }
         
model.getVirtioScsi().setEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(entity.getId()).isEmpty());
+        
model.setSoundcardEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(entity.getId()).isEmpty());
         setRngDevice(model);
         return model;
     }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResource.java
index 337012b..9062459 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResource.java
@@ -98,7 +98,7 @@
                         
!getConsoleDevicesForEntity(staticVm.getId()).isEmpty());
         params.setVirtioScsiEnabled(template.isSetVirtioScsi() && 
template.getVirtioScsi().isSetEnabled() ?
                 template.getVirtioScsi().isEnabled() : null);
-
+        params.setSoundDeviceEnabled(template.isSetSoundcardEnabled() && 
template.isSoundcardEnabled());
         if (template.isSetRngDevice()) {
             params.setUpdateRngDevice(true);
             params.setRngDevice(RngDeviceMapper.map(template.getRngDevice(), 
null));
@@ -221,6 +221,7 @@
             model.setVirtioScsi(new VirtIOSCSI());
         }
         
model.getVirtioScsi().setEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(entity.getId()).isEmpty());
+        
model.setSoundcardEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(entity.getId()).isEmpty());
         List<VmRngDevice> rngDevices = getRngDevices(entity.getId());
         if (rngDevices != null && !rngDevices.isEmpty()) {
             model.setRngDevice(RngDeviceMapper.map(rngDevices.get(0), null));
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResource.java
index b9f84fa..66ffab3 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResource.java
@@ -73,6 +73,7 @@
         AddVmPoolWithVmsParameters params = new 
AddVmPoolWithVmsParameters(entity, vm, size, -1);
         
params.setConsoleEnabled(!getConsoleDevicesForEntity(template.getId()).isEmpty());
         
params.setVirtioScsiEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(template.getId()).isEmpty());
+        
params.setSoundDeviceEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(template.getId()).isEmpty());
 
         return performCreate(VdcActionType.AddVmPoolWithVms,
                                params,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java
index fd4bfa6..81a37b3 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java
@@ -473,6 +473,7 @@
     protected VM doPopulate(VM model, 
org.ovirt.engine.core.common.businessentities.VM entity) {
         parent.setConsoleDevice(model);
         parent.setVirtioScsiController(model);
+        parent.setSoundcard(model);
         parent.setVmOvfConfiguration(model, entity);
         parent.setRngDevice(model);
         return model;
@@ -530,9 +531,15 @@
             if (incoming.isSetConsole() && 
incoming.getConsole().isSetEnabled()) {
                 params.setConsoleEnabled(incoming.getConsole().isEnabled());
             }
+            if(incoming.isSetSoundcardEnabled()) {
+                params.setSoundDeviceEnabled(incoming.isSoundcardEnabled());
+            }
             if (incoming.isSetVirtioScsi()) {
                 
params.setVirtioScsiEnabled(incoming.getVirtioScsi().isEnabled());
             }
+            if (incoming.isSetSoundcardEnabled()) {
+                params.setSoundDeviceEnabled(incoming.isSoundcardEnabled());
+            }
             if (incoming.isSetRngDevice()) {
                 params.setUpdateRngDevice(true);
                 
params.setRngDevice(RngDeviceMapper.map(incoming.getRngDevice(), null));
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
index d37afe2..8e5051d 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
@@ -287,6 +287,7 @@
         params.setMakeCreatorExplicitOwner(shouldMakeCreatorExplicitOwner());
         params.setVirtioScsiEnabled(vm.isSetVirtioScsi() && 
vm.getVirtioScsi().isSetEnabled() ?
                 vm.getVirtioScsi().isEnabled() : null);
+        params.setSoundDeviceEnabled(vm.isSetSoundcardEnabled() && 
vm.isSoundcardEnabled());
 
         params.setConsoleEnabled(vm.isSetConsole() && 
vm.getConsole().isSetEnabled()
                 ? vm.getConsole().isEnabled()
@@ -307,6 +308,7 @@
         params.setVmPayload(getPayload(vm));
         params.setVirtioScsiEnabled(vm.isSetVirtioScsi() && 
vm.getVirtioScsi().isSetEnabled() ?
                 vm.getVirtioScsi().isEnabled() : null);
+        params.setSoundDeviceEnabled(vm.isSetSoundcardEnabled() && 
vm.isSoundcardEnabled());
         params.setBalloonEnabled(vm.isSetMemoryPolicy() && 
vm.getMemoryPolicy().isSetBallooning() ?
                 vm.getMemoryPolicy().isBallooning() : null);
 
@@ -376,6 +378,7 @@
 
         params.setVirtioScsiEnabled(vm.isSetVirtioScsi() && 
vm.getVirtioScsi().isSetEnabled() ?
                 vm.getVirtioScsi().isEnabled() : null);
+        params.setSoundDeviceEnabled(vm.isSetSoundcardEnabled() && 
vm.isSoundcardEnabled());
 
         if (vm.isSetRngDevice()) {
             params.setUpdateRngDevice(true);
@@ -403,6 +406,7 @@
         params.setStorageDomainId(storageDomainId);
         params.setVirtioScsiEnabled(vm.isSetVirtioScsi() && 
vm.getVirtioScsi().isSetEnabled() ?
                 vm.getVirtioScsi().isEnabled() : null);
+        params.setSoundDeviceEnabled(vm.isSetSoundcardEnabled() && 
vm.isSoundcardEnabled());
 
         if (vm.isSetConsole() && vm.getConsole().isSetEnabled()) {
             params.setConsoleEnabled(vm.getConsole().isEnabled());
@@ -621,6 +625,10 @@
         
model.getVirtioScsi().setEnabled(!VmHelper.getInstance().getVirtioScsiControllersForEntity(new
 Guid(model.getId())).isEmpty());
     }
 
+    protected void setSoundcard(VM model) {
+        
model.setSoundcardEnabled(!VmHelper.getInstance().getSoundDevicesForEntity(new 
Guid(model.getId())).isEmpty());
+    }
+
     public void setCertificateInfo(VM model) {
         VdcQueryReturnValue result =
                 runQuery(VdcQueryType.GetVdsCertificateSubjectByVmId,
@@ -651,6 +659,7 @@
         setBallooning(model);
         setConsoleDevice(model);
         setVirtioScsiController(model);
+        setSoundcard(model);
         setCertificateInfo(model);
         setVmOvfConfiguration(model, entity);
         setRngDevice(model);
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/util/VmHelper.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/util/VmHelper.java
index 33d7901..1f3242a 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/util/VmHelper.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/util/VmHelper.java
@@ -24,4 +24,11 @@
                 new IdQueryParameters(id),
                 "GetVirtioScsiControllers", true);
     }
+
+    public List<String> getSoundDevicesForEntity(Guid id) {
+        return getEntity(List.class,
+                VdcQueryType.GetSoundDevices,
+                new IdQueryParameters(id),
+                "GetSoundDevices", true);
+    }
 }
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplateBasedResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplateBasedResourceTest.java
index 6f641a1..8b35a00 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplateBasedResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplateBasedResourceTest.java
@@ -100,6 +100,7 @@
             
expect(httpHeaders.getRequestHeader(BackendResource.POPULATE)).andReturn(populates).anyTimes();
             setUpGetConsoleExpectations(new int[]{0});
             setUpGetVirtioScsiExpectations(new int[]{0});
+            setUpGetSoundcardExpectations(new int[]{0});
             setUpGetRngDeviceExpectations(new int [] {0});
         }
         control.replay();
@@ -115,6 +116,16 @@
     protected void setUpGetVirtioScsiExpectations(int ... idxs) throws 
Exception {
         for (int i = 0; i < idxs.length; i++) {
             setUpGetEntityExpectations(VdcQueryType.GetVirtioScsiControllers,
+                    IdQueryParameters.class,
+                    new String[] { "Id" },
+                    new Object[] { GUIDS[idxs[i]] },
+                    new ArrayList<>());
+        }
+    }
+
+    protected void setUpGetSoundcardExpectations(int ... idxs) throws 
Exception {
+        for (int i = 0; i < idxs.length; i++) {
+            setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
                     IdQueryParameters.class,
                     new String[] { "Id" },
                     new Object[] { GUIDS[idxs[i]] },
@@ -140,6 +151,7 @@
         setUpGetEntityExpectations(2);
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[]{0});
+        setUpGetSoundcardExpectations(new int[]{0});
         setUpGetRngDeviceExpectations(new int[]{0});
 
         setUriInfo(setUpActionExpectations(VdcActionType.UpdateVmTemplate,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesBasedResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesBasedResourceTest.java
index 2388f51..c547be6 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesBasedResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesBasedResourceTest.java
@@ -98,6 +98,7 @@
         setUpHttpHeaderExpectations("Expect", "201-created");
 
         setUpGetVirtioScsiExpectations(new int[]{0, 0});
+        setUpGetSoundcardExpectations(new int[]{0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
         setUpGetEntityExpectations(0);
 
@@ -165,6 +166,7 @@
             
expect(httpHeaders.getRequestHeader(BackendResource.POPULATE)).andReturn(populates).anyTimes();
             setUpGetConsoleExpectations(new int[]{0, 1, 2});
             setUpGetVirtioScsiExpectations(new int[] {0, 1, 2});
+            setUpGetSoundcardExpectations(new int[] {0, 1, 2});
             setUpGetRngDeviceExpectations(new int[] {0, 1, 2});
         }
 
@@ -195,6 +197,16 @@
         }
     }
 
+    protected void setUpGetSoundcardExpectations(int ... idxs) throws 
Exception {
+        for (int i = 0; i < idxs.length; i++) {
+            setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
+                    IdQueryParameters.class,
+                    new String[] { "Id" },
+                    new Object[] { GUIDS[idxs[i]] },
+                    new ArrayList<>());
+        }
+    }
+
     protected void setUpGetEntityExpectations(int index) throws Exception {
         setUpGetEntityExpectations(VdcQueryType.GetVmTemplate,
                 GetVmTemplateParameters.class,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResourceTest.java
index 09a581d..433cfb4 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendTemplatesResourceTest.java
@@ -68,6 +68,7 @@
         setUpGetEntityExpectations(0);
         setUpGetConsoleExpectations(new int[]{0, 0, 0});
         setUpGetVirtioScsiExpectations(new int[]{0, 0});
+        setUpGetSoundcardExpectations(new int[]{0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
         setUpEntityQueryExpectations(VdcQueryType.GetVdsGroupByVdsGroupId,
                 IdQueryParameters.class,
@@ -127,6 +128,7 @@
 
         setUpGetConsoleExpectations(new int[]{0, 0});
         setUpGetVirtioScsiExpectations(new int[]{0});
+        setUpGetSoundcardExpectations(new int[]{0});
         setUpGetRngDeviceExpectations(new int[]{0});
         setUpGetEntityExpectations(VdcQueryType.GetVmByVmId,
                                    IdQueryParameters.class,
@@ -209,6 +211,7 @@
 
             setUpGetConsoleExpectations(new int[]{2, 0, 2});
             setUpGetVirtioScsiExpectations(new int[]{2, 2});
+            setUpGetSoundcardExpectations(new int[]{2, 2});
             setUpGetRngDeviceExpectations(new int[]{2, 2});
             setUpGetEntityExpectations(VdcQueryType.GetVmByVmId,
                                        IdQueryParameters.class,
@@ -265,6 +268,7 @@
         setUpGetEntityExpectations(0);
         setUpGetConsoleExpectations(new int[] {0, 0, 0});
         setUpGetVirtioScsiExpectations(new int[] {0, 0});
+        setUpGetSoundcardExpectations(new int[] {0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
 
         setUpCreationExpectations(VdcActionType.AddVmTemplate,
@@ -314,6 +318,7 @@
         setUpGetEntityExpectations(0);
         setUpGetConsoleExpectations(new int[] {0, 0, 0});
         setUpGetVirtioScsiExpectations(new int[] {0, 0});
+        setUpGetSoundcardExpectations(new int[] {0, 0});
         setUpGetRngDeviceExpectations(new int[] {0, 0});
 
         setUpCreationExpectations(VdcActionType.AddVmTemplate,
@@ -361,6 +366,7 @@
 
         setUpGetConsoleExpectations(new int[] {0, 0, 0});
         setUpGetVirtioScsiExpectations(new int[] {0, 0});
+        setUpGetSoundcardExpectations(new int[] {0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
 
         setUpCreationExpectations(VdcActionType.AddVmTemplate,
@@ -408,6 +414,7 @@
 
         setUpGetConsoleExpectations(new int[] {0, 0, 0});
         setUpGetVirtioScsiExpectations(new int[] {0, 0});
+        setUpGetSoundcardExpectations(new int[] {0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
 
         setUpGetEntityExpectations(VdcQueryType.GetVdsGroupByName,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResourceTest.java
index e88770d..e7235bd 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmPoolsResourceTest.java
@@ -98,6 +98,12 @@
                 new Object[] { GUIDS[1] },
                 new ArrayList<>());
 
+        setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
+                IdQueryParameters.class,
+                new String[] { "Id" },
+                new Object[] { GUIDS[1] },
+                new ArrayList<>());
+
         setUpGetRngDeviceExpectations(new int[] {0});
 
         setUpCreationExpectations(VdcActionType.AddVmPoolWithVms,
@@ -138,6 +144,12 @@
                 new Object[] { GUIDS[1] },
                 new ArrayList<>());
 
+        setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
+                IdQueryParameters.class,
+                new String[] { "Id" },
+                new Object[] { GUIDS[1] },
+                new ArrayList<>());
+
         setUpCreationExpectations(VdcActionType.AddVmPoolWithVms,
                 VmPoolParametersBase.class,
                 new String[] { "StorageDomainId" },
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmResourceTest.java
index b3a28b5..f25199f 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmResourceTest.java
@@ -192,6 +192,7 @@
             
expect(httpHeaders.getRequestHeader(BackendResource.POPULATE)).andReturn(populates).anyTimes();
             setUpGetConsoleExpectations(new int[]{0});
             setUpGetVirtioScsiExpectations(new int[]{0});
+            setUpGetSoundcardExpectations(new int[]{0});
             setUpGetRngDeviceExpectations(new int[]{0});
             setUpGetVmOvfExpectations(new int[]{0});
         }
@@ -237,6 +238,7 @@
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVmOvfExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[] {0});
+        setUpGetSoundcardExpectations(new int[] {0});
         setUpGetRngDeviceExpectations(new int[]{0});
         setUriInfo(setUpActionExpectations(VdcActionType.UpdateVm,
                                            VmManagementParametersBase.class,
@@ -265,6 +267,7 @@
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVmOvfExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[] {0});
+        setUpGetSoundcardExpectations(new int[] {0});
         setUpGetRngDeviceExpectations(new int[]{0});
 
         setUriInfo(setUpActionExpectations(VdcActionType.UpdateVm,
@@ -308,6 +311,7 @@
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVmOvfExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[] {0});
+        setUpGetSoundcardExpectations(new int[] {0});
         setUpGetRngDeviceExpectations(new int[]{0});
         setUpEntityQueryExpectations(VdcQueryType.GetVdsStaticByName,
                 NameQueryParameters.class,
@@ -349,6 +353,7 @@
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVmOvfExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[] {0});
+        setUpGetSoundcardExpectations(new int[] {0});
         setUpGetRngDeviceExpectations(new int[]{0});
         setUriInfo(setUpActionExpectations(VdcActionType.ChangeVMCluster,
                                            ChangeVMClusterParameters.class,
@@ -1117,6 +1122,16 @@
         }
     }
 
+    private void setUpGetSoundcardExpectations(int ... idxs) throws Exception {
+        for (int i = 0; i < idxs.length; i++) {
+            setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
+                    IdQueryParameters.class,
+                    new String[] { "Id" },
+                    new Object[] { GUIDS[idxs[i]] },
+                    new ArrayList<>());
+        }
+    }
+
     private void setUpGetVmOvfExpectations(int ... idxs) throws Exception {
         for (int i = 0; i < idxs.length; i++) {
             setUpGetEntityExpectations(VdcQueryType.GetVmOvfByVmId,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmsResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmsResourceTest.java
index cc1f692..3532838 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmsResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendVmsResourceTest.java
@@ -241,6 +241,7 @@
         setUpGetBallooningExpectations(1, 0);
         setUpGetConsoleExpectations(new int[]{0});
         setUpGetVirtioScsiExpectations(new int[]{0});
+        setUpGetSoundcardExpectations(new int[]{0});
         setUpGetRngDeviceExpectations(new int[]{0});
         setUpGetVmOvfExpectations(new int[]{0});
         setUpGetCertuficateExpectations(1, 0);
@@ -292,6 +293,7 @@
         setUpGetConsoleExpectations(new int[]{0, 0});
         setUpGetVmOvfExpectations(new int[]{0, 0});
         setUpGetVirtioScsiExpectations(new int[]{0, 0});
+        setUpGetSoundcardExpectations(new int[]{0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
         setUpGetBallooningExpectations(2, 0);
         setUpGetCertuficateExpectations(2, 0);
@@ -350,6 +352,7 @@
         setUpGetConsoleExpectations(new int[]{0, 0});
         setUpGetVmOvfExpectations(new int[]{0, 0});
         setUpGetVirtioScsiExpectations(new int[]{0, 0});
+        setUpGetSoundcardExpectations(new int[]{0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
         setUpGetCertuficateExpectations(2, 0);
         setUpEntityQueryExpectations(VdcQueryType.GetVmByVmId,
@@ -403,6 +406,7 @@
         setUpGetConsoleExpectations(new int[]{0, 0});
         setUpGetVmOvfExpectations(new int[]{0, 0});
         setUpGetVirtioScsiExpectations(new int[]{0, 0});
+        setUpGetSoundcardExpectations(new int[]{0, 0});
         setUpGetRngDeviceExpectations(new int[]{0, 0});
         setUpGetCertuficateExpectations(2, 0);
         setUpHttpHeaderExpectations("Expect", "201-created");
@@ -506,6 +510,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetCertuficateExpectations(1, 2);
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
@@ -556,6 +561,7 @@
         setUpGetConsoleExpectations(new int[]{0, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpEntityQueryExpectations(VdcQueryType.GetVmConfigurationBySnapshot,
                 IdQueryParameters.class,
@@ -592,6 +598,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetCertuficateExpectations(1, 2);
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
@@ -632,6 +639,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
                                      GetVmTemplateParameters.class,
@@ -679,6 +687,7 @@
         setUpGetCertuficateExpectations(1, 2);
         setUpGetConsoleExpectations(new int[] { 1, 2 });
         setUpGetVirtioScsiExpectations(new int[] { 2 });
+        setUpGetSoundcardExpectations(new int[] { 2 });
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetVmOvfExpectations(new int[] { 2 });
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
@@ -718,6 +727,7 @@
         setUpGetConsoleExpectations(new int[] { 3 });
         setUpGetVmOvfExpectations(new int[] { 3 });
         setUpGetVirtioScsiExpectations(new int[] { 3 });
+        setUpGetSoundcardExpectations(new int[] { 3 });
         setUpGetRngDeviceExpectations(new int[]{3});
         VM model = createModel(null);
         org.ovirt.engine.core.common.businessentities.VM returnedVM = 
getEntity(2);
@@ -762,6 +772,7 @@
         setUpGetConsoleExpectations(new int[]{2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         VM model = createModel(null);
         org.ovirt.engine.core.common.businessentities.VM returnedVM = 
getEntity(2);
@@ -801,6 +812,7 @@
         setUpGetConsoleExpectations(new int[]{2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         VM model = createModel(null);
         org.ovirt.engine.core.common.businessentities.VM returnedVM = 
getEntity(2);
@@ -899,6 +911,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetCertuficateExpectations(1, 2);
         setUpEntityQueryExpectations(VdcQueryType.GetVdsStaticByName,
@@ -954,6 +967,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetCertuficateExpectations(1, 2);
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
@@ -996,6 +1010,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpGetCertuficateExpectations(1, 2);
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
@@ -1061,6 +1076,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
                                      GetVmTemplateParameters.class,
@@ -1114,6 +1130,7 @@
         setUpGetConsoleExpectations(new int[]{1, 2});
         setUpGetVmOvfExpectations(new int[]{2});
         setUpGetVirtioScsiExpectations(new int[]{2});
+        setUpGetSoundcardExpectations(new int[]{2});
         setUpGetRngDeviceExpectations(new int[]{2});
         setUpEntityQueryExpectations(VdcQueryType.GetVmTemplate,
                                      GetVmTemplateParameters.class,
@@ -1186,6 +1203,7 @@
             setUpGetConsoleExpectations(new int[]{0, 1, 2});
             setUpGetVmOvfExpectations(new int[]{0, 1, 2});
             setUpGetVirtioScsiExpectations(new int[]{0, 1, 2});
+            setUpGetSoundcardExpectations(new int[]{0, 1, 2});
             setUpGetRngDeviceExpectations(new int[]{0, 1, 2});
             setUpGetCertuficateExpectations(3);
         }
@@ -1206,6 +1224,7 @@
         setUpGetConsoleExpectations(new int[]{0, 1, 2});
         setUpGetVmOvfExpectations(new int[]{0, 1, 2});
         setUpGetVirtioScsiExpectations(new int[]{0, 1, 2});
+        setUpGetSoundcardExpectations(new int[]{0, 1, 2});
         setUpGetRngDeviceExpectations(new int[]{0, 1, 2});
         setUpGetCertuficateExpectations(3);
         setUpQueryExpectations("");
@@ -1568,6 +1587,16 @@
         }
     }
 
+    private void setUpGetSoundcardExpectations(int ... idxs) throws Exception {
+        for (int i = 0; i < idxs.length; i++) {
+            setUpGetEntityExpectations(VdcQueryType.GetSoundDevices,
+                    IdQueryParameters.class,
+                    new String[] { "Id" },
+                    new Object[] { GUIDS[idxs[i]] },
+                    new ArrayList<>());
+        }
+    }
+
     private void setUpGetVmOvfExpectations(int ... idxs) throws Exception {
         for (int i = 0; i < idxs.length; i++) {
             setUpGetEntityExpectations(VdcQueryType.GetVmOvfByVmId,


-- 
To view, visit http://gerrit.ovirt.org/30635
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I598cf89b6a5fd4755958cf7b597484c225166460
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Eldan Shachar <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to