Roy Golan has uploaded a new change for review.

Change subject: core: Use OsRepository interface instead explicit impl
......................................................................

core: Use OsRepository interface instead explicit impl

Change-Id: I00533ea628613b3f2872e76d05c8bb024b238867
Signed-off-by: Roy Golan <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AttachUserToVmFromPoolAndRunCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommonVmPoolWithVmsCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OsRepositoryQuery.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolCommandBase.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SysprepHandler.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmOldInfoBuilder.java
10 files changed, 54 insertions(+), 30 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/16/17716/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AttachUserToVmFromPoolAndRunCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AttachUserToVmFromPoolAndRunCommand.java
index 56e4e31..74cc394 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AttachUserToVmFromPoolAndRunCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AttachUserToVmFromPoolAndRunCommand.java
@@ -31,8 +31,10 @@
 import org.ovirt.engine.core.common.job.Step;
 import org.ovirt.engine.core.common.job.StepEnum;
 import org.ovirt.engine.core.common.locks.LockingGroup;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
 import org.ovirt.engine.core.common.utils.Pair;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.compat.TransactionScopeOption;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
@@ -42,6 +44,7 @@
 public class AttachUserToVmFromPoolAndRunCommand<T extends 
VmPoolUserParameters> extends
 VmPoolUserCommandBase<T> implements QuotaVdsDependent {
     private Guid vmToAttach = null;
+    private OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     protected AttachUserToVmFromPoolAndRunCommand(Guid commandId) {
         super(commandId);
@@ -214,7 +217,7 @@
             // if reinitialize needed, select sysprep for windows and 
cloud-init for linux
             // sysprep / cloud-init info will be taken from vm
             runVmParams.setInitializationType(getParameters().isReinitialize() 
?
-                    OsRepositoryImpl.INSTANCE.isWindows(getVm().getVmOsId()) ?
+                    osRepository.isWindows(getVm().getVmOsId()) ?
                             InitializationType.Sysprep : 
InitializationType.CloudInit
                     : InitializationType.None);
             
runVmParams.setParentCommand(VdcActionType.AttachUserToVmFromPoolAndRun);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommonVmPoolWithVmsCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommonVmPoolWithVmsCommand.java
index 4758cd4..d5743ce 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommonVmPoolWithVmsCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommonVmPoolWithVmsCommand.java
@@ -31,7 +31,8 @@
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
 import org.ovirt.engine.core.common.job.Step;
 import org.ovirt.engine.core.common.job.StepEnum;
-import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.compat.Version;
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector;
@@ -56,6 +57,7 @@
     protected Map<Guid, List<DiskImage>> storageToDisksMap;
     protected Map<Guid, StorageDomain> destStorages = new HashMap<Guid, 
StorageDomain>();
     private boolean _addVmsSucceded = true;
+    private OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     /**
      * Constructor for command creation when compensation is applied on startup
@@ -357,7 +359,7 @@
         int maxVmNameLengthWindows = Config.<Integer> 
GetValue(ConfigValues.MaxVmNameLengthWindows);
         int maxVmNameLengthNonWindows = Config.<Integer> 
GetValue(ConfigValues.MaxVmNameLengthNonWindows);
 
-        int maxLength = OsRepositoryImpl.INSTANCE.isWindows(osId) ? 
maxVmNameLengthWindows : maxVmNameLengthNonWindows;
+        int maxLength = osRepository.isWindows(osId) ? maxVmNameLengthWindows 
: maxVmNameLengthNonWindows;
         Integer maxVmsInPool = Config.GetValue(ConfigValues.MaxVmsInPool);
         maxLength -= (String.valueOf(maxVmsInPool).length() + 1);
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OsRepositoryQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OsRepositoryQuery.java
index b137297..424ba0f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OsRepositoryQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/OsRepositoryQuery.java
@@ -1,9 +1,12 @@
 package org.ovirt.engine.core.bll;
 
-import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.queries.OsQueryParameters;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 
 public class OsRepositoryQuery<P extends OsQueryParameters> extends 
QueriesCommandBase<P> {
+
+    private OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     public OsRepositoryQuery(P parameters) {
         super(parameters);
@@ -13,31 +16,31 @@
     protected void executeQueryCommand() {
         switch (getParameters().getOsRepositoryVerb()) {
             case GetOsNames:
-                setReturnValue(OsRepositoryImpl.INSTANCE.getOsNames());
+                setReturnValue(osRepository.getOsNames());
                 break;
             case GetUniqueOsNames:
-                setReturnValue(OsRepositoryImpl.INSTANCE.getUniqueOsNames());
+                setReturnValue(osRepository.getUniqueOsNames());
                 break;
             case GetOsIds:
-                setReturnValue(OsRepositoryImpl.INSTANCE.getOsIds());
+                setReturnValue(osRepository.getOsIds());
                 break;
             case GetLinuxOss:
-                setReturnValue(OsRepositoryImpl.INSTANCE.getLinuxOss());
+                setReturnValue(osRepository.getLinuxOss());
                 break;
             case GetWindowsOss:
-                setReturnValue(OsRepositoryImpl.INSTANCE.getWindowsOss());
+                setReturnValue(osRepository.getWindowsOss());
                 break;
             case GetMaxOsRam:
-                
setReturnValue(OsRepositoryImpl.INSTANCE.getMaximumRam(getParameters().getOsId(),
 getParameters().getVersion()));
+                
setReturnValue(osRepository.getMaximumRam(getParameters().getOsId(), 
getParameters().getVersion()));
                 break;
             case GetMinimumOsRam:
-                
setReturnValue(OsRepositoryImpl.INSTANCE.getMinimumRam(getParameters().getOsId(),
 getParameters().getVersion()));
+                
setReturnValue(osRepository.getMinimumRam(getParameters().getOsId(), 
getParameters().getVersion()));
                 break;
             case HasSpiceSupport:
-                
setReturnValue(OsRepositoryImpl.INSTANCE.hasSpiceSupport(getParameters().getOsId(),
 getParameters().getVersion()));
+                
setReturnValue(osRepository.hasSpiceSupport(getParameters().getOsId(), 
getParameters().getVersion()));
                 break;
             case GetNetworkDevices:
-                
setReturnValue(OsRepositoryImpl.INSTANCE.getNetworkDevices(getParameters().getOsId(),
 getParameters().getVersion()));
+                
setReturnValue(osRepository.getNetworkDevices(getParameters().getOsId(), 
getParameters().getVersion()));
                 break;
         }
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
index 4153d8e..1051f9d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
@@ -64,7 +64,8 @@
 import org.ovirt.engine.core.common.job.Job;
 import org.ovirt.engine.core.common.job.Step;
 import org.ovirt.engine.core.common.job.StepEnum;
-import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.common.utils.VmDeviceType;
 import org.ovirt.engine.core.common.vdscommands.CreateVmVDSCommandParameters;
 import org.ovirt.engine.core.common.vdscommands.IrsBaseVDSCommandParameters;
@@ -103,6 +104,7 @@
     /** This flag is used to indicate that the disks might be dirty since the 
memory
      *  from the active snapshot was restored so the memory should not be used 
*/
     private boolean memoryFromSnapshotIrrelevant;
+    private OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     protected RunVmCommand(Guid commandId) {
         super(commandId);
@@ -677,7 +679,7 @@
         String selectedToolsVersion = "";
         String selectedToolsClusterVersion = "";
         StorageDomain isoDomain = null;
-        if (OsRepositoryImpl.INSTANCE.isWindows(getVm().getVmOsId())
+        if (osRepository.isWindows(getVm().getVmOsId())
                 && (null != (isoDomain =
                         
LinqUtils.firstOrNull(getStorageDomainDAO().getAllForStoragePool(getVm().getStoragePoolId()),
                                 new Predicate<StorageDomain>() {
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
index bb3002d..57cb6ba 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
@@ -35,8 +35,10 @@
 import org.ovirt.engine.core.common.errors.VdcBLLException;
 import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
 import org.ovirt.engine.core.common.utils.Pair;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.common.utils.VmDeviceCommonUtils;
 import org.ovirt.engine.core.common.utils.VmDeviceType;
 import 
org.ovirt.engine.core.common.vdscommands.SetVmStatusVDSCommandParameters;
@@ -56,7 +58,7 @@
 public class VmHandler {
 
     private static ObjectIdentityChecker mUpdateVmsStatic;
-
+    private static OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
     private static final Log log = LogFactory.getLog(VmHandler.class);
 
     /**
@@ -292,7 +294,7 @@
                 final Map<String, String> spiceDriversInGuest =
                         Config.<Map<String, String>> 
GetValue(ConfigValues.SpiceDriverNameInGuest);
                 final String spiceDriverInGuest =
-                        
spiceDriversInGuest.get(OsRepositoryImpl.INSTANCE.getOsFamily(vm.getOs()).toLowerCase());
+                        
spiceDriversInGuest.get(osRepository.getOsFamily(vm.getOs()).toLowerCase());
 
                 for (final String part : parts) {
                     for (String agentName : possibleAgentAppNames) {
@@ -399,7 +401,7 @@
             
reasons.add(VdcBllMessages.ACTION_TYPE_FAILED_ILLEGAL_SINGLE_DEVICE_DISPLAY_TYPE.toString());
             return false;
         }
-        if (!OsRepositoryImpl.INSTANCE.isSingleQxlDeviceEnabled(osId)) {
+        if (!osRepository.isSingleQxlDeviceEnabled(osId)) {
             
reasons.add(VdcBllMessages.ACTION_TYPE_FAILED_ILLEGAL_SINGLE_DEVICE_OS_TYPE.toString());
             return false;
         }
@@ -448,7 +450,7 @@
                 retVal = false;
             }
         } else if (UsbPolicy.ENABLED_LEGACY.equals(usbPolicy)) {
-            if (OsRepositoryImpl.INSTANCE.isLinux(osId)) {
+            if (osRepository.isLinux(osId)) {
                 
messages.add(VdcBllMessages.USB_LEGACY_NOT_SUPPORTED_ON_LINUX_VMS.toString());
                 retVal = false;
             }
@@ -458,7 +460,7 @@
 
     public static void updateImportedVmUsbPolicy(VmBase vmBase) {
         // Enforce disabled USB policy for Linux OS with legacy policy.
-        if (OsRepositoryImpl.INSTANCE.isLinux(vmBase.getOsId()) && 
vmBase.getUsbPolicy().equals(UsbPolicy.ENABLED_LEGACY)) {
+        if (osRepository.isLinux(vmBase.getOsId()) && 
vmBase.getUsbPolicy().equals(UsbPolicy.ENABLED_LEGACY)) {
             vmBase.setUsbPolicy(UsbPolicy.DISABLED);
         }
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolCommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolCommandBase.java
index 48dcc22..21edf5b 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolCommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolCommandBase.java
@@ -26,7 +26,9 @@
 import org.ovirt.engine.core.common.businessentities.VmType;
 import org.ovirt.engine.core.common.businessentities.tags;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 import org.ovirt.engine.core.dao.DiskDao;
@@ -34,6 +36,7 @@
 
 public abstract class VmPoolCommandBase<T extends VmPoolParametersBase> 
extends CommandBase<T> {
     private static final RunVmValidator runVmValidator = new RunVmValidator();
+    private static OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
     private VmPool mVmPool;
 
     protected VmPool getVmPool() {
@@ -224,7 +227,7 @@
         VmHandler.updateNetworkInterfacesFromDb(vm);
 
         RunVmParams runVmParams = new RunVmParams(vmId);
-        
runVmParams.setUseVnc(OsRepositoryImpl.INSTANCE.isLinux(vm.getVmOsId()) || 
vm.getVmType() == VmType.Server);
+        runVmParams.setUseVnc(osRepository.isLinux(vm.getVmOsId()) || 
vm.getVmType() == VmType.Server);
 
         return getRunVmValidator().canRunVm(vm,
                 messages,
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java
index afdb532..71d0888 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/utils/VmDeviceUtils.java
@@ -30,7 +30,9 @@
 import 
org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface;
 import org.ovirt.engine.core.common.config.Config;
 import org.ovirt.engine.core.common.config.ConfigValues;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.common.utils.VmDeviceCommonUtils;
 import org.ovirt.engine.core.common.utils.VmDeviceType;
 import org.ovirt.engine.core.compat.Guid;
@@ -47,6 +49,7 @@
     private final static String UHCI_MODEL = "ich9-uhci";
     private final static int SLOTS_PER_CONTROLLER = 6;
     private final static int COMPANION_USB_CONTROLLERS = 3;
+    private static OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     /**
      * Update the vm devices according to changes made in vm static for 
existing VM
@@ -200,7 +203,7 @@
         }
         if (createDevice) {
             String soundDevice =
-                    
OsRepositoryImpl.INSTANCE.getSoundDevice(newVmBase.getOsId(), 
compatibilityVersion);
+                    osRepository.getSoundDevice(newVmBase.getOsId(), 
compatibilityVersion);
             addManagedDevice(new VmDeviceId(Guid.newGuid(), vmId),
                     VmDeviceGeneralType.SOUND,
                     VmDeviceType.getSoundDeviceType(soundDevice),
@@ -363,7 +366,7 @@
     }
 
     private static void addSoundCard(VmBase vmBase, Version 
vdsGroupCompatibilityVersion) {
-        String soundDevice = 
OsRepositoryImpl.INSTANCE.getSoundDevice(vmBase.getOsId(), 
vdsGroupCompatibilityVersion);
+        String soundDevice = osRepository.getSoundDevice(vmBase.getOsId(), 
vdsGroupCompatibilityVersion);
         addManagedDevice(new VmDeviceId(Guid.newGuid(), vmBase.getId()),
                 VmDeviceGeneralType.SOUND,
                 VmDeviceType.getSoundDeviceType(soundDevice),
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SysprepHandler.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SysprepHandler.java
index fab08a4..03d65c4 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SysprepHandler.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SysprepHandler.java
@@ -12,7 +12,9 @@
 import org.ovirt.engine.core.common.config.Config;
 import org.ovirt.engine.core.common.config.ConfigUtil;
 import org.ovirt.engine.core.common.config.ConfigValues;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.dal.dbbroker.generic.DomainsPasswordMap;
 import org.ovirt.engine.core.utils.FileUtil;
 import org.ovirt.engine.core.utils.log.Log;
@@ -22,6 +24,7 @@
     private static final Map<String, String> userPerDomain = new 
HashMap<String, String>();
     private static Map<String, String> passwordPerDomain = new HashMap<String, 
String>();
     public static final Map<String, Integer> timeZoneIndex = new 
HashMap<String, Integer>();
+    private static OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     // we get a string like "(GMT-04:30) Afghanistan Standard Time"
     // we use regex to extract the time only and replace it to number
@@ -65,8 +68,8 @@
 
     public static String GetSysPrep(VM vm, String hostName, String domain, 
SysPrepParams sysPrepParams) {
         String sysPrepContent = "";
-        sysPrepContent = 
LoadFile(OsRepositoryImpl.INSTANCE.getSysprepPath(vm.getVmOsId(), null));
-        sysPrepContent = replace(sysPrepContent, "$ProductKey$", 
OsRepositoryImpl.INSTANCE.getProductKey(vm.getVmOsId(), null));
+        sysPrepContent = LoadFile(osRepository.getSysprepPath(vm.getVmOsId(), 
null));
+        sysPrepContent = replace(sysPrepContent, "$ProductKey$", 
osRepository.getProductKey(vm.getVmOsId(), null));
 
         if (sysPrepContent.length() > 0) {
 
@@ -137,7 +140,7 @@
             vm.setTimeZone(Config.<String> 
GetValue(ConfigValues.DefaultWindowsTimeZone));
         }
 
-        if 
(OsRepositoryImpl.INSTANCE.isTimezoneValueInteger(vm.getStaticData().getOsId(),null))
 {
+        if 
(osRepository.isTimezoneValueInteger(vm.getStaticData().getOsId(),null)) {
             // send correct time zone as sysprep expect to get it (a wierd 
number)
             timeZone = getTimezoneIndexByKey(vm.getTimeZone());
         } else {
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
index 35e97ad..545880d 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilderBase.java
@@ -19,7 +19,9 @@
 import org.ovirt.engine.core.common.businessentities.network.NetworkCluster;
 import org.ovirt.engine.core.common.config.Config;
 import org.ovirt.engine.core.common.config.ConfigValues;
+import org.ovirt.engine.core.common.osinfo.OsRepository;
 import org.ovirt.engine.core.common.osinfo.OsRepositoryImpl;
+import org.ovirt.engine.core.common.utils.SimpleDependecyInjector;
 import org.ovirt.engine.core.compat.WindowsJavaTimezoneMapping;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 import org.ovirt.engine.core.utils.customprop.VmPropertiesUtils;
@@ -33,6 +35,7 @@
     protected VM vm;
     // IDE supports only 4 slots , slot 2 is preserved by VDSM to the CDROM
     protected int[] ideIndexSlots = new int[] { 0, 1, 3 };
+    protected OsRepository osRepository = 
SimpleDependecyInjector.getInstance().get(OsRepository.class);
 
     private static class DiskImageByBootComparator implements 
Comparator<Disk>, Serializable {
         private static final long serialVersionUID = 4732164571328497830L;
@@ -103,7 +106,7 @@
             keyboardLayout = Config.<String> 
GetValue(ConfigValues.VncKeyboardLayout);
         }
         createInfo.put(VdsProperties.KeyboardLayout, keyboardLayout);
-        if (OsRepositoryImpl.INSTANCE.isLinux(vm.getVmOsId())) {
+        if (osRepository.isLinux(vm.getVmOsId())) {
             createInfo.put(VdsProperties.PitReinjection, "false");
         }
 
@@ -181,7 +184,7 @@
             int offset = 0;
             String javaZoneId = null;
 
-            if (OsRepositoryImpl.INSTANCE.isWindows(vm.getOs())) {
+            if (osRepository.isWindows(vm.getOs())) {
                 // convert to java & calculate offset
                 javaZoneId = 
WindowsJavaTimezoneMapping.windowsToJava.get(timeZone);
             } else {
@@ -202,7 +205,7 @@
         }
 
         // else fallback to engine config default for given OS type
-        if (OsRepositoryImpl.INSTANCE.isWindows(vm.getOs())) {
+        if (osRepository.isWindows(vm.getOs())) {
             return Config.<String> 
GetValue(ConfigValues.DefaultWindowsTimeZone);
         } else {
             return "Etc/GMT";
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmOldInfoBuilder.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmOldInfoBuilder.java
index 3f8c5ab..5368ff2 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmOldInfoBuilder.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmOldInfoBuilder.java
@@ -185,7 +185,7 @@
         List<VmDevice> vmSoundDevices = 
DbFacade.getInstance().getVmDeviceDao().getVmDeviceByVmIdAndType(vm.getId(), 
VmDeviceGeneralType.SOUND);
         if (!vmSoundDevices.isEmpty()) {
             createInfo.put(VdsProperties.soundDevice,
-                    
OsRepositoryImpl.INSTANCE.getSoundDevice(vm.getStaticData().getOsId(),
+                    osRepository.getSoundDevice(vm.getStaticData().getOsId(),
                             vm.getVdsGroupCompatibilityVersion()));
         }
     }


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

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

Reply via email to