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
