Martin Mucha has uploaded a new change for review.

Change subject: core: DI for MAC Pools.
......................................................................

core: DI for MAC Pools.

removed MacPoolPerDcSingleton singleton, replaced with @Singleton
annotation and let inject dependency where MacPoolPerDcSingleton was
formerly used.

Change-Id: I04cd600132251d7cc4931507e20b40b1fa8d7355
Signed-off-by: Martin Mucha <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDc.java
D 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDcSingleton.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/SnapshotsManager.java
8 files changed, 46 insertions(+), 24 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/05/30505/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
index cb53338e..612a8f8 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
@@ -3,7 +3,9 @@
 import java.util.Collections;
 import java.util.List;
 
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import javax.inject.Inject;
+
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
@@ -14,6 +16,9 @@
 import org.ovirt.engine.core.compat.Guid;
 
 public class AddMacPoolCommand extends MacPoolCommandBase<MacPoolParameters> {
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
     public AddMacPoolCommand(MacPoolParameters parameters) {
         super(parameters);
@@ -61,7 +66,7 @@
         getMacPoolDao().save(getMacPoolEntity());
         addPermission(getCurrentUser().getId(), getMacPoolEntity().getId());
 
-        MacPoolPerDcSingleton.getInstance().createPool(getMacPoolEntity());
+        poolPerDc.createPool(getMacPoolEntity());
         setSucceeded(true);
         getReturnValue().setActionReturnValue(getMacPoolId());
     }
@@ -79,7 +84,7 @@
     @Override
     public void rollback() {
         super.rollback();
-        MacPoolPerDcSingleton.getInstance().removePool(getMacPoolId());
+        poolPerDc.removePool(getMacPoolId());
     }
 
     private void addPermission(Guid userId, Guid macPoolId) {
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
index 44498ba..4a6222f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
@@ -14,6 +14,7 @@
 import java.util.Set;
 
 import javax.ejb.TransactionRolledbackLocalException;
+import javax.inject.Inject;
 import javax.transaction.Status;
 import javax.transaction.SystemException;
 import javax.transaction.Transaction;
@@ -29,7 +30,7 @@
 import org.ovirt.engine.core.bll.job.ExecutionContext;
 import org.ovirt.engine.core.bll.job.ExecutionHandler;
 import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolManagerStrategy;
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.quota.InvalidQuotaParametersException;
 import org.ovirt.engine.core.bll.quota.QuotaConsumptionParameter;
 import org.ovirt.engine.core.bll.quota.QuotaConsumptionParametersWrapper;
@@ -107,6 +108,9 @@
 
 public abstract class CommandBase<T extends VdcActionParametersBase> extends 
AuditLogableBase implements
         RollbackHandler, TransactionMethod<Object>, Command<T> {
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
     /* Multiplier used to convert GB to bytes or vice versa. */
     protected static final long BYTES_IN_GB = 1024 * 1024 * 1024;
@@ -2218,6 +2222,6 @@
     }
 
     protected MacPoolManagerStrategy getMacPool() {
-        return 
MacPoolPerDcSingleton.getInstance().poolForDataCenter(getStoragePoolId());
+        return poolPerDc.poolForDataCenter(getStoragePoolId());
     }
 }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
index b87ac14..ede9033 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java
@@ -7,11 +7,12 @@
 import javax.ejb.DependsOn;
 import javax.ejb.Singleton;
 import javax.ejb.Startup;
+import javax.inject.Inject;
 
 import org.ovirt.engine.core.bll.dwh.DwhHeartBeat;
 import org.ovirt.engine.core.bll.gluster.GlusterJobsManager;
 import org.ovirt.engine.core.bll.job.ExecutionHandler;
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.pm.PmHealthCheckManager;
 import org.ovirt.engine.core.bll.provider.ExternalTrustStoreInitializer;
 import org.ovirt.engine.core.bll.scheduling.MigrationHandler;
@@ -41,6 +42,9 @@
 public class InitBackendServicesOnStartupBean implements 
InitBackendServicesOnStartup{
 
     private static final Logger log = 
LoggerFactory.getLogger(InitBackendServicesOnStartupBean.class);
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
      /**
      * This method is called upon the bean creation as part
@@ -79,7 +83,7 @@
             ThreadPoolUtil.execute(new Runnable() {
                 @Override
                 public void run() {
-                    MacPoolPerDcSingleton.getInstance().initialize();
+                    poolPerDc.initialize();
                 }
             });
             StoragePoolStatusHandler.init();
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
index 5b55b01..ef1b712 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
@@ -3,7 +3,9 @@
 import java.util.Collections;
 import java.util.List;
 
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import javax.inject.Inject;
+
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
@@ -16,6 +18,9 @@
 public class RemoveMacPoolCommand extends 
MacPoolCommandBase<RemoveMacPoolByIdParameters> {
 
     private MacPool oldMacPool;
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
     public RemoveMacPoolCommand(RemoveMacPoolByIdParameters parameters) {
         super(parameters);
@@ -40,7 +45,7 @@
     protected void executeCommand() {
 
         getMacPoolDao().remove(getMacPoolId());
-        MacPoolPerDcSingleton.getInstance().removePool(getMacPoolId());
+        poolPerDc.removePool(getMacPoolId());
 
         getReturnValue().setSucceeded(true);
     }
@@ -79,7 +84,7 @@
     @Override
     public void rollback() {
         super.rollback();
-        MacPoolPerDcSingleton.getInstance().createPool(getOldMacPool());
+        poolPerDc.createPool(getOldMacPool());
     }
 
     private MacPool getOldMacPool() {
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
index 0ede689..d186f37 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
@@ -3,7 +3,9 @@
 import java.util.Collections;
 import java.util.List;
 
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import javax.inject.Inject;
+
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
@@ -16,6 +18,9 @@
 public class UpdateMacPoolCommand extends 
MacPoolCommandBase<MacPoolParameters> {
 
     private MacPool oldMacPool;
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
     public UpdateMacPoolCommand(MacPoolParameters parameters) {
         super(parameters);
@@ -66,7 +71,7 @@
     protected void executeCommand() {
 
         getMacPoolDao().update(getMacPoolEntity());
-        MacPoolPerDcSingleton.getInstance().modifyPool(getMacPoolEntity());
+        poolPerDc.modifyPool(getMacPoolEntity());
 
         setSucceeded(true);
         getReturnValue().setActionReturnValue(getMacPoolId());
@@ -84,6 +89,6 @@
     @Override
     public void rollback() {
         super.rollback();
-        MacPoolPerDcSingleton.getInstance().modifyPool(oldMacPool);
+        poolPerDc.modifyPool(oldMacPool);
     }
 }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDc.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDc.java
index 10e9d6d..139c8b1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDc.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDc.java
@@ -6,6 +6,8 @@
 import java.util.Map;
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 
+import javax.inject.Singleton;
+
 import org.apache.commons.lang.math.LongRange;
 import org.ovirt.engine.core.common.businessentities.MacPool;
 import org.ovirt.engine.core.common.businessentities.MacRange;
@@ -19,6 +21,7 @@
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
 
+@Singleton
 public class MacPoolPerDc {
 
     static final String UNABLE_TO_CREATE_MAC_POOL_IT_ALREADY_EXIST = "This MAC 
Pool already exist";
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDcSingleton.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDcSingleton.java
deleted file mode 100644
index 08962d5..0000000
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/macpoolmanager/MacPoolPerDcSingleton.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package org.ovirt.engine.core.bll.network.macpoolmanager;
-
-public class MacPoolPerDcSingleton {
-    private static MacPoolPerDc INSTANCE = new MacPoolPerDc();
-
-    public static MacPoolPerDc getInstance() {
-        return INSTANCE;
-    }
-}
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/SnapshotsManager.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/SnapshotsManager.java
index 4a8b868..6bc0899 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/SnapshotsManager.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/SnapshotsManager.java
@@ -7,13 +7,15 @@
 import java.util.Map;
 import java.util.Set;
 
+import javax.inject.Inject;
+
 import org.apache.commons.lang.StringUtils;
 import org.ovirt.engine.core.bll.ImagesHandler;
 import org.ovirt.engine.core.bll.context.CompensationContext;
 import org.ovirt.engine.core.bll.memory.MemoryUtils;
 import org.ovirt.engine.core.bll.network.VmInterfaceManager;
 import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolManagerStrategy;
-import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDcSingleton;
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDc;
 import org.ovirt.engine.core.bll.network.vm.VnicProfileHelper;
 import org.ovirt.engine.core.bll.utils.ClusterUtils;
 import org.ovirt.engine.core.bll.utils.VmDeviceUtils;
@@ -60,6 +62,9 @@
  */
 public class SnapshotsManager {
     private final static Log log = LogFactory.getLog(SnapshotsManager.class);
+
+    @Inject
+    private MacPoolPerDc poolPerDc;
 
     /**
      * Save an active snapshot for the VM, without saving the 
configuration.<br>
@@ -591,7 +596,7 @@
     }
 
     private MacPoolManagerStrategy getMacPool(Guid storagePoolId) {
-        return 
MacPoolPerDcSingleton.getInstance().poolForDataCenter(storagePoolId);
+        return poolPerDc.poolForDataCenter(storagePoolId);
     }
 
     /**


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

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

Reply via email to