Mike Kolesnik has uploaded a new change for review.

Change subject: engine: Use AutoCloseableLock in MacPoolManagerRanges
......................................................................

engine: Use AutoCloseableLock in MacPoolManagerRanges

Refactored MacPoolManagerRanges to use the AutoCloseableLock to simplify
lock blocks.

Change-Id: I5fdb1cb8c302e88dbcbdc434313a6b11f7b15d5b
Signed-off-by: Mike Kolesnik <mkole...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/MacPoolManagerRanges.java
1 file changed, 10 insertions(+), 37 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/18/29618/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/MacPoolManagerRanges.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/MacPoolManagerRanges.java
index 243941e..1e8cf7d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/MacPoolManagerRanges.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/MacPoolManagerRanges.java
@@ -14,6 +14,7 @@
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector;
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogableBase;
 import org.ovirt.engine.core.utils.MacAddressRangeUtils;
+import org.ovirt.engine.core.utils.lock.AutoCloseableLock;
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
 
@@ -35,9 +36,7 @@
 
     @Override
     public void initialize() {
-        lockObj.writeLock().lock();
-
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             if (initialized) {
                 log.error("Trying to initialized " + getClass().getName() + " 
multiple times.");
                 return;
@@ -57,8 +56,6 @@
             log.infoFormat("Finished initializing. Available MACs in pool: 
{0}", macsStorage.getAvailableMacsCount());
         } catch (Exception ex) {
             log.errorFormat("Error in initializing MAC Addresses pool 
manager.", ex);
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
@@ -89,12 +86,9 @@
 
     @Override
     public String allocateNewMac() {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             return allocateNewMacsWithoutLocking(1).get(0);
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
@@ -108,51 +102,39 @@
 
     @Override
     public int getAvailableMacsCount() {
-        lockObj.readLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.readLock())) {
             checkIfInitialized();
             int availableMacsSize = macsStorage.getAvailableMacsCount();
             log.debugFormat("Number of available Mac addresses = {1}", 
availableMacsSize);
             return availableMacsSize;
-        } finally {
-            lockObj.readLock().unlock();
         }
     }
 
     @Override
     public void freeMac(String mac) {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             macsStorage.freeMac(MacAddressRangeUtils.macToLong(mac));
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
     @Override
     public boolean addMac(String mac) {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             boolean added = 
macsStorage.useMac(MacAddressRangeUtils.macToLong(mac));
             logWhenMacPoolIsEmpty();
             return added;
 
 
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
     @Override
     public void forceAddMac(String mac) {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             forceAddMacWithoutLocking(mac);
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
@@ -163,38 +145,29 @@
 
     @Override
     public boolean isMacInUse(String mac) {
-        lockObj.readLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.readLock())) {
             checkIfInitialized();
             return macsStorage.isMacInUse(MacAddressRangeUtils.macToLong(mac));
 
-        } finally {
-            lockObj.readLock().unlock();
         }
     }
 
     @Override
     public void freeMacs(List<String> macs) {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             for (String mac : macs) {
                 macsStorage.freeMac(MacAddressRangeUtils.macToLong(mac));
             }
 
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 
     @Override
     public List<String> allocateMacAddresses(int numberOfAddresses) {
-        lockObj.writeLock().lock();
-        try {
+        try (AutoCloseableLock l = new AutoCloseableLock(lockObj.writeLock())) 
{
             checkIfInitialized();
             return allocateNewMacsWithoutLocking(numberOfAddresses);
-        } finally {
-            lockObj.writeLock().unlock();
         }
     }
 


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5fdb1cb8c302e88dbcbdc434313a6b11f7b15d5b
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Mike Kolesnik <mkole...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to