You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2015/05/26 12:14:06 UTC

[2/3] git commit: updated refs/heads/master to 7546335

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/75463356/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
index 182c67c..6c22ded 100644
--- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -37,7 +37,6 @@ import javax.ejb.Local;
 import javax.inject.Inject;
 import javax.naming.ConfigurationException;
 
-import org.apache.log4j.Logger;
 import org.apache.cloudstack.acl.SecurityChecker;
 import org.apache.cloudstack.affinity.AffinityGroup;
 import org.apache.cloudstack.affinity.AffinityGroupService;
@@ -86,6 +85,7 @@ import org.apache.cloudstack.region.dao.RegionDao;
 import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao;
 import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao;
 import org.apache.cloudstack.storage.datastore.db.StoragePoolVO;
+import org.apache.log4j.Logger;
 
 import com.cloud.alert.AlertManager;
 import com.cloud.api.ApiDBUtils;
@@ -340,10 +340,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
-        String maxVolumeSizeInGbString = _configDao.getValue(Config.MaxVolumeSize.key());
+        final String maxVolumeSizeInGbString = _configDao.getValue(Config.MaxVolumeSize.key());
         _maxVolumeSizeInGb = NumbersUtil.parseInt(maxVolumeSizeInGbString, Integer.parseInt(Config.MaxVolumeSize.getDefaultValue()));
 
-        String defaultPageSizeString = _configDao.getValue(Config.DefaultPageSize.key());
+        final String defaultPageSizeString = _configDao.getValue(Config.DefaultPageSize.key());
         _defaultPageSize = NumbersUtil.parseLong(defaultPageSizeString, Long.parseLong(Config.DefaultPageSize.getDefaultValue()));
 
         populateConfigValuesForValidationSet();
@@ -416,10 +416,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         // As it is so common for people to forget about configuring
         // management.network.cidr,
-        String mgtCidr = _configDao.getValue(Config.ManagementNetwork.key());
+        final String mgtCidr = _configDao.getValue(Config.ManagementNetwork.key());
         if (mgtCidr == null || mgtCidr.trim().isEmpty()) {
-            String[] localCidrs = NetUtils.getLocalCidrs();
-            if (localCidrs != null && (localCidrs.length > 0)) {
+            final String[] localCidrs = NetUtils.getLocalCidrs();
+            if (localCidrs != null && localCidrs.length > 0) {
                 s_logger.warn("Management network CIDR is not configured originally. Set it default to " + localCidrs[0]);
 
                 _alertMgr.sendAlert(AlertManager.AlertType.ALERT_TYPE_MANAGMENT_NODE, 0, new Long(0), "Management network CIDR is not configured originally. Set it default to "
@@ -442,8 +442,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @DB
-    public String updateConfiguration(long userId, String name, String category, String value, String scope, Long resourceId) {
-        String validationMsg = validateConfigurationValue(name, value, scope);
+    public String updateConfiguration(final long userId, final String name, final String category, final String value, final String scope, final Long resourceId) {
+        final String validationMsg = validateConfigurationValue(name, value, scope);
 
         if (validationMsg != null) {
             s_logger.error("Invalid configuration option, name: " + name + ", value:" + value);
@@ -457,14 +457,14 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         if (scope != null && !scope.isEmpty() && !ConfigKey.Scope.Global.toString().equalsIgnoreCase(scope)) {
             switch (ConfigKey.Scope.valueOf(scope)) {
             case Zone:
-                DataCenterVO zone = _zoneDao.findById(resourceId);
+                final DataCenterVO zone = _zoneDao.findById(resourceId);
                 if (zone == null) {
                     throw new InvalidParameterValueException("unable to find zone by id " + resourceId);
                 }
                 _dcDetailsDao.addDetail(resourceId, name, value, true);
                 break;
             case Cluster:
-                ClusterVO cluster = _clusterDao.findById(resourceId);
+                final ClusterVO cluster = _clusterDao.findById(resourceId);
                 if (cluster == null) {
                     throw new InvalidParameterValueException("unable to find cluster by id " + resourceId);
                 }
@@ -479,7 +479,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 break;
 
             case StoragePool:
-                StoragePoolVO pool = _storagePoolDao.findById(resourceId);
+                final StoragePoolVO pool = _storagePoolDao.findById(resourceId);
                 if (pool == null) {
                     throw new InvalidParameterValueException("unable to find storage pool by id " + resourceId);
                 }
@@ -494,7 +494,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 break;
 
             case Account:
-                AccountVO account = _accountDao.findById(resourceId);
+                final AccountVO account = _accountDao.findById(resourceId);
                 if (account == null) {
                     throw new InvalidParameterValueException("unable to find account by id " + resourceId);
                 }
@@ -514,7 +514,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         }
 
         // Execute all updates in a single transaction
-        TransactionLegacy txn = TransactionLegacy.currentTxn();
+        final TransactionLegacy txn = TransactionLegacy.currentTxn();
         txn.start();
 
         if (!_configDao.update(name, category, value)) {
@@ -524,65 +524,65 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         PreparedStatement pstmt = null;
         if (Config.XenServerGuestNetwork.key().equalsIgnoreCase(name)) {
-            String sql = "update host_details set value=? where name=?";
+            final String sql = "update host_details set value=? where name=?";
             try {
                 pstmt = txn.prepareAutoCloseStatement(sql);
                 pstmt.setString(1, value);
                 pstmt.setString(2, "guest.network.device");
 
                 pstmt.executeUpdate();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to update guest.network.device in host_details due to exception ", e);
             }
         } else if (Config.XenServerPrivateNetwork.key().equalsIgnoreCase(name)) {
-            String sql = "update host_details set value=? where name=?";
+            final String sql = "update host_details set value=? where name=?";
             try {
                 pstmt = txn.prepareAutoCloseStatement(sql);
                 pstmt.setString(1, value);
                 pstmt.setString(2, "private.network.device");
 
                 pstmt.executeUpdate();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to update private.network.device in host_details due to exception ", e);
             }
         } else if (Config.XenServerPublicNetwork.key().equalsIgnoreCase(name)) {
-            String sql = "update host_details set value=? where name=?";
+            final String sql = "update host_details set value=? where name=?";
             try {
                 pstmt = txn.prepareAutoCloseStatement(sql);
                 pstmt.setString(1, value);
                 pstmt.setString(2, "public.network.device");
 
                 pstmt.executeUpdate();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to update public.network.device in host_details due to exception ", e);
             }
         } else if (Config.XenServerStorageNetwork1.key().equalsIgnoreCase(name)) {
-            String sql = "update host_details set value=? where name=?";
+            final String sql = "update host_details set value=? where name=?";
             try {
                 pstmt = txn.prepareAutoCloseStatement(sql);
                 pstmt.setString(1, value);
                 pstmt.setString(2, "storage.network.device1");
 
                 pstmt.executeUpdate();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to update storage.network.device1 in host_details due to exception ", e);
             }
         } else if (Config.XenServerStorageNetwork2.key().equals(name)) {
-            String sql = "update host_details set value=? where name=?";
+            final String sql = "update host_details set value=? where name=?";
             try {
                 pstmt = txn.prepareAutoCloseStatement(sql);
                 pstmt.setString(1, value);
                 pstmt.setString(2, "storage.network.device2");
 
                 pstmt.executeUpdate();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to update storage.network.device2 in host_details due to exception ", e);
             }
         } else if (Config.SecStorageSecureCopyCert.key().equalsIgnoreCase(name)) {
             //FIXME - Ideally there should be a listener model to listen to global config changes and be able to take action gracefully.
             //Expire the download urls
-            String sqlTemplate = "update template_store_ref set download_url_created=?";
-            String sqlVolume = "update volume_store_ref set download_url_created=?";
+            final String sqlTemplate = "update template_store_ref set download_url_created=?";
+            final String sqlVolume = "update volume_store_ref set download_url_created=?";
             try {
                 // Change for templates
                 pstmt = txn.prepareAutoCloseStatement(sqlTemplate);
@@ -594,7 +594,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 pstmt.executeUpdate();
                 // Cleanup the download urls
                 _storageManager.cleanupDownloadUrls();
-            } catch (Throwable e) {
+            } catch (final Throwable e) {
                 throw new CloudRuntimeException("Failed to clean up download URLs in template_store_ref or volume_store_ref due to exception ", e);
             }
         }
@@ -605,25 +605,25 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @ActionEvent(eventType = EventTypes.EVENT_CONFIGURATION_VALUE_EDIT, eventDescription = "updating configuration")
-    public Configuration updateConfiguration(UpdateCfgCmd cmd) throws InvalidParameterValueException {
-        Long userId = CallContext.current().getCallingUserId();
-        String name = cmd.getCfgName();
+    public Configuration updateConfiguration(final UpdateCfgCmd cmd) throws InvalidParameterValueException {
+        final Long userId = CallContext.current().getCallingUserId();
+        final String name = cmd.getCfgName();
         String value = cmd.getValue();
-        Long zoneId = cmd.getZoneId();
-        Long clusterId = cmd.getClusterId();
-        Long storagepoolId = cmd.getStoragepoolId();
-        Long accountId = cmd.getAccountId();
-        CallContext.current().setEventDetails(" Name: " + name + " New Value: " + (((name.toLowerCase()).contains("password")) ? "*****" : (((value == null) ? "" : value))));
+        final Long zoneId = cmd.getZoneId();
+        final Long clusterId = cmd.getClusterId();
+        final Long storagepoolId = cmd.getStoragepoolId();
+        final Long accountId = cmd.getAccountId();
+        CallContext.current().setEventDetails(" Name: " + name + " New Value: " + (name.toLowerCase().contains("password") ? "*****" : value == null ? "" : value));
         // check if config value exists
-        ConfigurationVO config = _configDao.findByName(name);
+        final ConfigurationVO config = _configDao.findByName(name);
         String catergory = null;
 
         // FIX ME - All configuration parameters are not moved from config.java to configKey
         if (config == null) {
             if (_configDepot.get(name) == null) {
                 s_logger.warn("Probably the component manager where configuration variable " + name + " is defined needs to implement Configurable interface");
-            throw new InvalidParameterValueException("Config parameter with name " + name + " doesn't exist");
-        }
+                throw new InvalidParameterValueException("Config parameter with name " + name + " doesn't exist");
+            }
             catergory = _configDepot.get(name).category();
         } else {
             catergory = config.getCategory();
@@ -668,23 +668,23 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("cannot handle multiple IDs, provide only one ID corresponding to the scope");
         }
 
-        String updatedValue = updateConfiguration(userId, name, catergory, value, scope, id);
-        if ((value == null && updatedValue == null) || updatedValue.equalsIgnoreCase(value)) {
+        final String updatedValue = updateConfiguration(userId, name, catergory, value, scope, id);
+        if (value == null && updatedValue == null || updatedValue.equalsIgnoreCase(value)) {
             return _configDao.findByName(name);
         } else {
             throw new CloudRuntimeException("Unable to update configuration parameter " + name);
         }
     }
 
-    private String validateConfigurationValue(String name, String value, String scope) {
+    private String validateConfigurationValue(final String name, String value, final String scope) {
 
-        ConfigurationVO cfg = _configDao.findByName(name);
+        final ConfigurationVO cfg = _configDao.findByName(name);
         if (cfg == null) {
             s_logger.error("Missing configuration variable " + name + " in configuration table");
             return "Invalid configuration variable.";
         }
 
-        String configScope = cfg.getScope();
+        final String configScope = cfg.getScope();
         if (scope != null) {
             if (!configScope.contains(scope)) {
                 s_logger.error("Invalid scope id provided for the parameter " + name);
@@ -692,10 +692,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             }
         }
         Class<?> type = null;
-        Config c = Config.getConfig(name);
+        final Config c = Config.getConfig(name);
         if (c == null) {
             s_logger.warn("Did not find configuration " + name + " in Config.java. Perhaps moved to ConfigDepot");
-            ConfigKey<?> configKey = _configDepot.get(name);
+            final ConfigKey<?> configKey = _configDepot.get(name);
             if(configKey == null) {
                 s_logger.warn("Did not find configuration " + name + " in ConfigDepot too.");
                 return null;
@@ -714,7 +714,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 errMsg = "There was error in trying to parse value: " + value + ". Please enter a valid float value for parameter " + name;
                 Float.parseFloat(value);
             }
-        } catch (Exception e) {
+        } catch (final Exception e) {
             // catching generic exception as some throws NullPointerException and some throws NumberFormatExcpeion
             s_logger.error(errMsg);
             return errMsg;
@@ -725,7 +725,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 return "Please enter either 'true' or 'false'.";
             }
             if (overprovisioningFactorsForValidation.contains(name)) {
-                String msg = "value cannot be null for the parameter " + name;
+                final String msg = "value cannot be null for the parameter " + name;
                 s_logger.error(msg);
                 return msg;
             }
@@ -734,13 +734,13 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         value = value.trim();
         try {
-            if (overprovisioningFactorsForValidation.contains(name) && (Float.parseFloat(value) < 1f)) {
-                String msg = name + " should be greater than or equal to 1";
+            if (overprovisioningFactorsForValidation.contains(name) && Float.parseFloat(value) < 1f) {
+                final String msg = name + " should be greater than or equal to 1";
                 s_logger.error(msg);
                 throw new InvalidParameterValueException(msg);
             }
-        } catch (NumberFormatException e) {
-            String msg = "There was an error trying to parse the float value for: " + name;
+        } catch (final NumberFormatException e) {
+            final String msg = "There was an error trying to parse the float value for: " + name;
             s_logger.error(msg);
             throw new InvalidParameterValueException(msg);
         }
@@ -755,7 +755,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         if (type.equals(Integer.class) && configValuesForValidation.contains(name)) {
             try {
-                int val = Integer.parseInt(value);
+                final int val = Integer.parseInt(value);
                 if (val <= 0) {
                     throw new InvalidParameterValueException("Please enter a positive value for the configuration parameter:" + name);
                 }
@@ -763,7 +763,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 if ("vm.password.length".equalsIgnoreCase(name) && val < 6) {
                     throw new InvalidParameterValueException("Please enter a value greater than 6 for the configuration parameter:" + name);
                 }
-            } catch (NumberFormatException e) {
+            } catch (final NumberFormatException e) {
                 s_logger.error("There was an error trying to parse the integer value for:" + name);
                 throw new InvalidParameterValueException("There was an error trying to parse the integer value for:" + name);
             }
@@ -771,11 +771,11 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         if (type.equals(Float.class)) {
             try {
-                Float val = Float.parseFloat(value);
+                final Float val = Float.parseFloat(value);
                 if (weightBasedParametersForValidation.contains(name) && (val < 0f || val > 1f)) {
                     throw new InvalidParameterValueException("Please enter a value between 0 and 1 for the configuration parameter: " + name);
                 }
-            } catch (NumberFormatException e) {
+            } catch (final NumberFormatException e) {
                 s_logger.error("There was an error trying to parse the float value for:" + name);
                 throw new InvalidParameterValueException("There was an error trying to parse the float value for:" + name);
             }
@@ -787,7 +787,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             return null;
         }
 
-        String range = c.getRange();
+        final String range = c.getRange();
         if (range == null) {
             return null;
         }
@@ -799,7 +799,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                         s_logger.error("privateip range " + value + " is not a site local address for configuration variable " + name);
                         return "Please enter a site local IP address.";
                     }
-                } catch (NullPointerException e) {
+                } catch (final NullPointerException e) {
                     s_logger.error("Error parsing ip address for " + name);
                     throw new InvalidParameterValueException("Error parsing ip address");
                 }
@@ -809,11 +809,11 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     return "Please enter a valid netmask.";
                 }
             } else if (range.equals("hypervisorList")) {
-                String[] hypervisors = value.split(",");
+                final String[] hypervisors = value.split(",");
                 if (hypervisors == null) {
                     return "Please enter hypervisor list, separated by comma";
                 }
-                for (String hypervisor : hypervisors) {
+                for (final String hypervisor : hypervisors) {
                     if (HypervisorType.getType(hypervisor) == HypervisorType.Any || HypervisorType.getType(hypervisor) == HypervisorType.None) {
                         return "Please enter a valid hypervisor type";
                     }
@@ -832,10 +832,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     return "Please enter a valid string for domain name, prefixed with '*.' if applicable";
                 }
             } else if (range.equals("routes")) {
-                String[] routes = value.split(",");
-                for (String route : routes) {
+                final String[] routes = value.split(",");
+                for (final String route : routes) {
                     if (route != null) {
-                        String routeToVerify = route.trim();
+                        final String routeToVerify = route.trim();
                         if (!NetUtils.isValidCIDR(routeToVerify)) {
                             throw new InvalidParameterValueException("Invalid value for blacklisted route: " + route + ". Valid format is list"
                                     + " of cidrs separated by coma. Example: 10.1.1.0/24,192.168.0.0/24");
@@ -843,8 +843,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     }
                 }
             } else {
-                String[] options = range.split(",");
-                for (String option : options) {
+                final String[] options = range.split(",");
+                for (final String option : options) {
                     if (option.trim().equalsIgnoreCase(value)) {
                         return null;
                     }
@@ -854,15 +854,15 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
             }
         } else if (type.equals(Integer.class)) {
-            String[] options = range.split("-");
+            final String[] options = range.split("-");
             if (options.length != 2) {
-                String msg = "configuration range " + range + " for " + name + " is invalid";
+                final String msg = "configuration range " + range + " for " + name + " is invalid";
                 s_logger.error(msg);
                 return msg;
             }
-            int min = Integer.parseInt(options[0]);
-            int max = Integer.parseInt(options[1]);
-            int val = Integer.parseInt(value);
+            final int min = Integer.parseInt(options[0]);
+            final int max = Integer.parseInt(options[1]);
+            final int val = Integer.parseInt(value);
             if (val < min || val > max) {
                 s_logger.error("configuration value for " + name + " is invalid");
                 return "Please enter : " + range;
@@ -871,51 +871,51 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         return null;
     }
 
-    private boolean podHasAllocatedPrivateIPs(long podId) {
-        HostPodVO pod = _podDao.findById(podId);
-        int count = _privateIpAddressDao.countIPs(podId, pod.getDataCenterId(), true);
-        return (count > 0);
+    private boolean podHasAllocatedPrivateIPs(final long podId) {
+        final HostPodVO pod = _podDao.findById(podId);
+        final int count = _privateIpAddressDao.countIPs(podId, pod.getDataCenterId(), true);
+        return count > 0;
     }
 
     @DB
-    protected void checkIfPodIsDeletable(long podId) {
-        List<List<String>> tablesToCheck = new ArrayList<List<String>>();
+    protected void checkIfPodIsDeletable(final long podId) {
+        final List<List<String>> tablesToCheck = new ArrayList<List<String>>();
 
-        HostPodVO pod = _podDao.findById(podId);
+        final HostPodVO pod = _podDao.findById(podId);
 
         // Check if there are allocated private IP addresses in the pod
         if (_privateIpAddressDao.countIPs(podId, pod.getDataCenterId(), true) != 0) {
             throw new CloudRuntimeException("There are private IP addresses allocated for this pod");
         }
 
-        List<String> volumes = new ArrayList<String>();
+        final List<String> volumes = new ArrayList<String>();
         volumes.add(0, "volumes");
         volumes.add(1, "pod_id");
         volumes.add(2, "there are storage volumes for this pod");
         tablesToCheck.add(volumes);
 
-        List<String> host = new ArrayList<String>();
+        final List<String> host = new ArrayList<String>();
         host.add(0, "host");
         host.add(1, "pod_id");
         host.add(2, "there are servers running in this pod");
         tablesToCheck.add(host);
 
-        List<String> vmInstance = new ArrayList<String>();
+        final List<String> vmInstance = new ArrayList<String>();
         vmInstance.add(0, "vm_instance");
         vmInstance.add(1, "pod_id");
         vmInstance.add(2, "there are virtual machines running in this pod");
         tablesToCheck.add(vmInstance);
 
-        List<String> cluster = new ArrayList<String>();
+        final List<String> cluster = new ArrayList<String>();
         cluster.add(0, "cluster");
         cluster.add(1, "pod_id");
         cluster.add(2, "there are clusters in this pod");
         tablesToCheck.add(cluster);
 
-        for (List<String> table : tablesToCheck) {
-            String tableName = table.get(0);
-            String column = table.get(1);
-            String errorMsg = table.get(2);
+        for (final List<String> table : tablesToCheck) {
+            final String tableName = table.get(0);
+            final String column = table.get(1);
+            final String errorMsg = table.get(2);
 
             String dbName;
             if (tableName.equals("event") || tableName.equals("cloud_usage") || tableName.equals("usage_vm_instance") || tableName.equals("usage_ip_address")
@@ -935,22 +935,22 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 selectSql += " and removed IS NULL";
             }
 
-            TransactionLegacy txn = TransactionLegacy.currentTxn();
+            final TransactionLegacy txn = TransactionLegacy.currentTxn();
             try {
-                PreparedStatement stmt = txn.prepareAutoCloseStatement(selectSql);
+                final PreparedStatement stmt = txn.prepareAutoCloseStatement(selectSql);
                 stmt.setLong(1, podId);
-                ResultSet rs = stmt.executeQuery();
+                final ResultSet rs = stmt.executeQuery();
                 if (rs != null && rs.next()) {
                     throw new CloudRuntimeException("The pod cannot be deleted because " + errorMsg);
                 }
-            } catch (SQLException ex) {
+            } catch (final SQLException ex) {
                 throw new CloudRuntimeException("The Management Server failed to detect if pod is deletable. Please contact Cloud Support.");
             }
         }
     }
 
-    private void checkPodAttributes(long podId, String podName, long zoneId, String gateway, String cidr, String startIp, String endIp, String allocationStateStr,
-            boolean checkForDuplicates, boolean skipGatewayOverlapCheck) {
+    private void checkPodAttributes(final long podId, final String podName, final long zoneId, final String gateway, final String cidr, final String startIp, final String endIp, final String allocationStateStr,
+            final boolean checkForDuplicates, final boolean skipGatewayOverlapCheck) {
         if (checkForDuplicates) {
             // Check if the pod already exists
             if (validPod(podName, zoneId)) {
@@ -992,7 +992,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             }
         }
 
-        String checkPodCIDRs = _configDao.getValue("check.pod.cidrs");
+        final String checkPodCIDRs = _configDao.getValue("check.pod.cidrs");
         if (checkPodCIDRs == null || checkPodCIDRs.trim().isEmpty() || Boolean.parseBoolean(checkPodCIDRs)) {
             checkPodCidrSubnets(zoneId, podId, cidr);
             /*
@@ -1006,7 +1006,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
             try {
                 Grouping.AllocationState.valueOf(allocationStateStr);
-            } catch (IllegalArgumentException ex) {
+            } catch (final IllegalArgumentException ex) {
                 throw new InvalidParameterValueException("Unable to resolve Allocation State '" + allocationStateStr + "' to a supported state");
             }
         }
@@ -1014,7 +1014,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @DB
-    public boolean deletePod(DeletePodCmd cmd) {
+    public boolean deletePod(final DeletePodCmd cmd) {
         final Long podId = cmd.getId();
 
         // Make sure the pod exists
@@ -1028,44 +1028,44 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         Transaction.execute(new TransactionCallbackNoReturn() {
             @Override
-            public void doInTransactionWithoutResult(TransactionStatus status) {
-        // Delete private ip addresses for the pod if there are any
-                List<DataCenterIpAddressVO> privateIps = _privateIpAddressDao.listByPodIdDcId(podId, pod.getDataCenterId());
-        if (!privateIps.isEmpty()) {
-            if (!(_privateIpAddressDao.deleteIpAddressByPod(podId))) {
-                throw new CloudRuntimeException("Failed to cleanup private ip addresses for pod " + podId);
-            }
-        }
+            public void doInTransactionWithoutResult(final TransactionStatus status) {
+                // Delete private ip addresses for the pod if there are any
+                final List<DataCenterIpAddressVO> privateIps = _privateIpAddressDao.listByPodIdDcId(podId, pod.getDataCenterId());
+                if (!privateIps.isEmpty()) {
+                    if (!_privateIpAddressDao.deleteIpAddressByPod(podId)) {
+                        throw new CloudRuntimeException("Failed to cleanup private ip addresses for pod " + podId);
+                    }
+                }
 
-        // Delete link local ip addresses for the pod
-                List<DataCenterLinkLocalIpAddressVO> localIps = _linkLocalIpAllocDao.listByPodIdDcId(podId, pod.getDataCenterId());
-        if (!localIps.isEmpty()) {
-                    if (!(_linkLocalIpAllocDao.deleteIpAddressByPod(podId))) {
-                throw new CloudRuntimeException("Failed to cleanup private ip addresses for pod " + podId);
-            }
-        }
+                // Delete link local ip addresses for the pod
+                final List<DataCenterLinkLocalIpAddressVO> localIps = _linkLocalIpAllocDao.listByPodIdDcId(podId, pod.getDataCenterId());
+                if (!localIps.isEmpty()) {
+                    if (!_linkLocalIpAllocDao.deleteIpAddressByPod(podId)) {
+                        throw new CloudRuntimeException("Failed to cleanup private ip addresses for pod " + podId);
+                    }
+                }
 
-        // Delete vlans associated with the pod
-        List<? extends Vlan> vlans = _networkModel.listPodVlans(podId);
-        if (vlans != null && !vlans.isEmpty()) {
-            for (Vlan vlan : vlans) {
-                _vlanDao.remove(vlan.getId());
-            }
-        }
+                // Delete vlans associated with the pod
+                final List<? extends Vlan> vlans = _networkModel.listPodVlans(podId);
+                if (vlans != null && !vlans.isEmpty()) {
+                    for (final Vlan vlan : vlans) {
+                        _vlanDao.remove(vlan.getId());
+                    }
+                }
 
-        // Delete corresponding capacity records
-        _capacityDao.removeBy(null, null, podId, null, null);
+                // Delete corresponding capacity records
+                _capacityDao.removeBy(null, null, podId, null, null);
 
-        // Delete the pod
-        if (!(_podDao.remove(podId))) {
-            throw new CloudRuntimeException("Failed to delete pod " + podId);
-        }
+                // Delete the pod
+                if (!_podDao.remove(podId)) {
+                    throw new CloudRuntimeException("Failed to delete pod " + podId);
+                }
 
-        // remove from dedicated resources
-        DedicatedResourceVO dr = _dedicatedDao.findByPodId(podId);
-        if (dr != null) {
-            _dedicatedDao.remove(dr.getId());
-        }
+                // remove from dedicated resources
+                final DedicatedResourceVO dr = _dedicatedDao.findByPodId(podId);
+                if (dr != null) {
+                    _dedicatedDao.remove(dr.getId());
+                }
             }
         });
 
@@ -1073,7 +1073,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
     }
 
     @Override
-    public Pod editPod(UpdatePodCmd cmd) {
+    public Pod editPod(final UpdatePodCmd cmd) {
         return editPod(cmd.getId(), cmd.getPodName(), cmd.getStartIp(), cmd.getEndIp(), cmd.getGateway(), cmd.getNetmask(), cmd.getAllocationState());
     }
 
@@ -1088,7 +1088,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("Unable to find pod by id " + id);
         }
 
-        String[] existingPodIpRange = pod.getDescription().split("-");
+        final String[] existingPodIpRange = pod.getDescription().split("-");
         String[] leftRangeToAdd = null;
         String[] rightRangeToAdd = null;
         boolean allowToDownsize = false;
@@ -1098,8 +1098,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         if (podHasAllocatedPrivateIPs(id)) {
 
             if (netmask != null) {
-                long newCidr = NetUtils.getCidrSize(netmask);
-                long oldCidr = pod.getCidrSize();
+                final long newCidr = NetUtils.getCidrSize(netmask);
+                final long oldCidr = pod.getCidrSize();
 
                 if (newCidr > oldCidr) {
                     throw new CloudRuntimeException("The specified pod has allocated private IP addresses, so its IP address range can be extended only");
@@ -1111,7 +1111,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     throw new CloudRuntimeException("The specified pod has allocated private IP addresses, so its IP address range can be extended only");
                 } else {
                     leftRangeToAdd = new String[2];
-                    long endIpForUpdate = NetUtils.ip2Long(existingPodIpRange[0]) - 1;
+                    final long endIpForUpdate = NetUtils.ip2Long(existingPodIpRange[0]) - 1;
                     leftRangeToAdd[0] = startIp;
                     leftRangeToAdd[1] = NetUtils.long2Ip(endIpForUpdate);
                 }
@@ -1122,7 +1122,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     throw new CloudRuntimeException("The specified pod has allocated private IP addresses, so its IP address range can be extended only");
                 } else {
                     rightRangeToAdd = new String[2];
-                    long startIpForUpdate = NetUtils.ip2Long(existingPodIpRange[1]) + 1;
+                    final long startIpForUpdate = NetUtils.ip2Long(existingPodIpRange[1]) + 1;
                     rightRangeToAdd[0] = NetUtils.long2Ip(startIpForUpdate);
                     rightRangeToAdd[1] = endIp;
                 }
@@ -1140,7 +1140,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             netmask = NetUtils.getCidrNetmask(pod.getCidrSize());
         }
 
-        String oldPodName = pod.getName();
+        final String oldPodName = pod.getName();
         if (name == null) {
             name = oldPodName;
         }
@@ -1163,7 +1163,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         // Verify pod's attributes
         final String cidr = NetUtils.ipAndNetMaskToCidr(gateway, netmask);
-        boolean checkForDuplicates = !oldPodName.equals(name);
+        final boolean checkForDuplicates = !oldPodName.equals(name);
         checkPodAttributes(id, name, pod.getDataCenterId(), gateway, cidr, startIp, endIp, allocationStateStr, checkForDuplicates, false);
 
         try {
@@ -1179,8 +1179,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             final String gatewayFinal = gateway;
             Transaction.execute(new TransactionCallbackNoReturn() {
                 @Override
-                public void doInTransactionWithoutResult(TransactionStatus status) {
-            long zoneId = pod.getDataCenterId();
+                public void doInTransactionWithoutResult(final TransactionStatus status) {
+                    final long zoneId = pod.getDataCenterId();
 
                     String startIp = startIpFinal;
                     String endIp = endIpFinal;
@@ -1188,46 +1188,46 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                     if (!allowToDownsizeFinal) {
                         if (leftRangeToAddFinal != null) {
                             _zoneDao.addPrivateIpAddress(zoneId, pod.getId(), leftRangeToAddFinal[0], leftRangeToAddFinal[1]);
-                }
+                        }
 
                         if (rightRangeToAddFinal != null) {
                             _zoneDao.addPrivateIpAddress(zoneId, pod.getId(), rightRangeToAddFinal[0], rightRangeToAddFinal[1]);
-                }
+                        }
 
-            } else {
-                // delete the old range
-                _zoneDao.deletePrivateIpAddressByPod(pod.getId());
+                    } else {
+                        // delete the old range
+                        _zoneDao.deletePrivateIpAddressByPod(pod.getId());
 
-                // add the new one
-                if (startIp == null) {
+                        // add the new one
+                        if (startIp == null) {
                             startIp = existingPodIpRangeFinal[0];
-                }
+                        }
 
-                if (endIp == null) {
+                        if (endIp == null) {
                             endIp = existingPodIpRangeFinal[1];
-                }
+                        }
 
-                _zoneDao.addPrivateIpAddress(zoneId, pod.getId(), startIp, endIp);
-            }
+                        _zoneDao.addPrivateIpAddress(zoneId, pod.getId(), startIp, endIp);
+                    }
 
                     pod.setName(nameFinal);
-            pod.setDataCenterId(zoneId);
+                    pod.setDataCenterId(zoneId);
                     pod.setGateway(gatewayFinal);
-            pod.setCidrAddress(getCidrAddress(cidr));
-            pod.setCidrSize(getCidrSize(cidr));
-
-            String ipRange = startIp + "-" + endIp;
-            pod.setDescription(ipRange);
-            Grouping.AllocationState allocationState = null;
-            if (allocationStateStrFinal != null && !allocationStateStrFinal.isEmpty()) {
-                allocationState = Grouping.AllocationState.valueOf(allocationStateStrFinal);
-                pod.setAllocationState(allocationState);
-            }
+                    pod.setCidrAddress(getCidrAddress(cidr));
+                    pod.setCidrSize(getCidrSize(cidr));
+
+                    final String ipRange = startIp + "-" + endIp;
+                    pod.setDescription(ipRange);
+                    Grouping.AllocationState allocationState = null;
+                    if (allocationStateStrFinal != null && !allocationStateStrFinal.isEmpty()) {
+                        allocationState = Grouping.AllocationState.valueOf(allocationStateStrFinal);
+                        pod.setAllocationState(allocationState);
+                    }
 
-            _podDao.update(id, pod);
+                    _podDao.update(id, pod);
                 }
             });
-        } catch (Exception e) {
+        } catch (final Exception e) {
             s_logger.error("Unable to edit pod due to " + e.getMessage(), e);
             throw new CloudRuntimeException("Failed to edit pod. Please contact Cloud Support.");
         }
@@ -1236,7 +1236,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
     }
 
     @Override
-    public Pod createPod(long zoneId, String name, String startIp, String endIp, String gateway, String netmask, String allocationState) {
+    public Pod createPod(final long zoneId, final String name, final String startIp, final String endIp, final String gateway, final String netmask, String allocationState) {
         // Check if the gateway is a valid IP address
         if (!NetUtils.isValidIp(gateway)) {
             throw new InvalidParameterValueException("The gateway is invalid");
@@ -1246,9 +1246,9 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("The netmask is invalid");
         }
 
-        String cidr = NetUtils.ipAndNetMaskToCidr(gateway, netmask);
+        final String cidr = NetUtils.ipAndNetMaskToCidr(gateway, netmask);
 
-        Long userId = CallContext.current().getCallingUserId();
+        final Long userId = CallContext.current().getCallingUserId();
 
         if (allocationState == null) {
             allocationState = Grouping.AllocationState.Enabled.toString();
@@ -1258,8 +1258,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @DB
-    public HostPodVO createPod(long userId, String podName, final long zoneId, String gateway, String cidr, final String startIp, String endIp, String allocationStateStr,
-            boolean skipGatewayOverlapCheck) {
+    public HostPodVO createPod(final long userId, final String podName, final long zoneId, final String gateway, final String cidr, final String startIp, String endIp, final String allocationStateStr,
+            final boolean skipGatewayOverlapCheck) {
 
         // Check if the zone is valid
         if (!validZone(zoneId)) {
@@ -1267,15 +1267,15 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         }
 
         // Check if zone is disabled
-        DataCenterVO zone = _zoneDao.findById(zoneId);
-        Account account = CallContext.current().getCallingAccount();
+        final DataCenterVO zone = _zoneDao.findById(zoneId);
+        final Account account = CallContext.current().getCallingAccount();
         if (Grouping.AllocationState.Disabled == zone.getAllocationState()
                 && !_accountMgr.isRootAdmin(account.getId())) {
             throw new PermissionDeniedException("Cannot perform this operation, Zone is currently disabled: " + zoneId);
         }
 
-        String cidrAddress = getCidrAddress(cidr);
-        int cidrSize = getCidrSize(cidr);
+        final String cidrAddress = getCidrAddress(cidr);
+        final int cidrSize = getCidrSize(cidr);
 
         // endIp is an optional parameter; if not specified - default it to the
         // end ip of the pod's cidr
@@ -1307,82 +1307,82 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         final String endIpFinal = endIp;
         return Transaction.execute(new TransactionCallback<HostPodVO>() {
             @Override
-            public HostPodVO doInTransaction(TransactionStatus status) {
+            public HostPodVO doInTransaction(final TransactionStatus status) {
 
-                HostPodVO pod = _podDao.persist(podFinal);
+                final HostPodVO pod = _podDao.persist(podFinal);
 
-        if (startIp != null) {
+                if (startIp != null) {
                     _zoneDao.addPrivateIpAddress(zoneId, pod.getId(), startIp, endIpFinal);
-        }
+                }
 
-        String[] linkLocalIpRanges = getLinkLocalIPRange();
-        if (linkLocalIpRanges != null) {
-            _zoneDao.addLinkLocalIpAddress(zoneId, pod.getId(), linkLocalIpRanges[0], linkLocalIpRanges[1]);
-        }
+                final String[] linkLocalIpRanges = getLinkLocalIPRange();
+                if (linkLocalIpRanges != null) {
+                    _zoneDao.addLinkLocalIpAddress(zoneId, pod.getId(), linkLocalIpRanges[0], linkLocalIpRanges[1]);
+                }
 
-        return pod;
-    }
+                return pod;
+            }
         });
     }
 
     @DB
-    protected void checkIfZoneIsDeletable(long zoneId) {
-        List<List<String>> tablesToCheck = new ArrayList<List<String>>();
+    protected void checkIfZoneIsDeletable(final long zoneId) {
+        final List<List<String>> tablesToCheck = new ArrayList<List<String>>();
 
-        List<String> host = new ArrayList<String>();
+        final List<String> host = new ArrayList<String>();
         host.add(0, "host");
         host.add(1, "data_center_id");
         host.add(2, "there are servers running in this zone");
         tablesToCheck.add(host);
 
-        List<String> hostPodRef = new ArrayList<String>();
+        final List<String> hostPodRef = new ArrayList<String>();
         hostPodRef.add(0, "host_pod_ref");
         hostPodRef.add(1, "data_center_id");
         hostPodRef.add(2, "there are pods in this zone");
         tablesToCheck.add(hostPodRef);
 
-        List<String> privateIP = new ArrayList<String>();
+        final List<String> privateIP = new ArrayList<String>();
         privateIP.add(0, "op_dc_ip_address_alloc");
         privateIP.add(1, "data_center_id");
         privateIP.add(2, "there are private IP addresses allocated for this zone");
         tablesToCheck.add(privateIP);
 
-        List<String> publicIP = new ArrayList<String>();
+        final List<String> publicIP = new ArrayList<String>();
         publicIP.add(0, "user_ip_address");
         publicIP.add(1, "data_center_id");
         publicIP.add(2, "there are public IP addresses allocated for this zone");
         tablesToCheck.add(publicIP);
 
-        List<String> vmInstance = new ArrayList<String>();
+        final List<String> vmInstance = new ArrayList<String>();
         vmInstance.add(0, "vm_instance");
         vmInstance.add(1, "data_center_id");
         vmInstance.add(2, "there are virtual machines running in this zone");
         tablesToCheck.add(vmInstance);
 
-        List<String> volumes = new ArrayList<String>();
+        final List<String> volumes = new ArrayList<String>();
         volumes.add(0, "volumes");
         volumes.add(1, "data_center_id");
         volumes.add(2, "there are storage volumes for this zone");
         tablesToCheck.add(volumes);
 
-        List<String> physicalNetworks = new ArrayList<String>();
+        final List<String> physicalNetworks = new ArrayList<String>();
         physicalNetworks.add(0, "physical_network");
         physicalNetworks.add(1, "data_center_id");
         physicalNetworks.add(2, "there are physical networks in this zone");
         tablesToCheck.add(physicalNetworks);
 
-        List<String> vmwareDcs = new ArrayList<String>();
+        final List<String> vmwareDcs = new ArrayList<String>();
         vmwareDcs.add(0, "vmware_data_center_zone_map");
         vmwareDcs.add(1, "zone_id");
         vmwareDcs.add(2, "there are VMware datacenters associated with this zone. Remove VMware DC from this zone.");
         tablesToCheck.add(vmwareDcs);
 
-        for (List<String> table : tablesToCheck) {
-            String tableName = table.get(0);
-            String column = table.get(1);
-            String errorMsg = table.get(2);
+        for (final List<String> table : tablesToCheck) {
+            final String tableName = table.get(0);
+            final String column = table.get(1);
+            final String errorMsg = table.get(2);
 
-            String dbName = "cloud";
+            final String dbName = "cloud";
 
             String selectSql = "SELECT * FROM `" + dbName + "`.`" + tableName + "` WHERE " + column + " = ?";
 
@@ -1406,23 +1406,23 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 selectSql += " AND state != '" + VirtualMachine.State.Expunging.toString() + "' AND removed IS NULL";
             }
 
-            TransactionLegacy txn = TransactionLegacy.currentTxn();
+            final TransactionLegacy txn = TransactionLegacy.currentTxn();
             try {
-                PreparedStatement stmt = txn.prepareAutoCloseStatement(selectSql);
+                final PreparedStatement stmt = txn.prepareAutoCloseStatement(selectSql);
                 stmt.setLong(1, zoneId);
-                ResultSet rs = stmt.executeQuery();
+                final ResultSet rs = stmt.executeQuery();
                 if (rs != null && rs.next()) {
                     throw new CloudRuntimeException("The zone is not deletable because " + errorMsg);
                 }
-            } catch (SQLException ex) {
+            } catch (final SQLException ex) {
                 throw new CloudRuntimeException("The Management Server failed to detect if zone is deletable. Please contact Cloud Support.");
             }
         }
 
     }
 
-    private void checkZoneParameters(String zoneName, String dns1, String dns2, String internalDns1, String internalDns2, boolean checkForDuplicates, Long domainId,
-            String allocationStateStr, String ip6Dns1, String ip6Dns2) {
+    private void checkZoneParameters(final String zoneName, final String dns1, final String dns2, final String internalDns1, final String internalDns2, final boolean checkForDuplicates, final Long domainId,
+            final String allocationStateStr, final String ip6Dns1, final String ip6Dns2) {
         if (checkForDuplicates) {
             // Check if a zone with the specified name already exists
             if (validZone(zoneName)) {
@@ -1432,7 +1432,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         // check if valid domain
         if (domainId != null) {
-            DomainVO domain = _domainDao.findById(domainId);
+            final DomainVO domain = _domainDao.findById(domainId);
 
             if (domain == null) {
                 throw new InvalidParameterValueException("Please specify a valid domain id");
@@ -1449,7 +1449,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("Please enter a valid IP address for DNS2");
         }
 
-        if ((internalDns1 != null && internalDns1.length() > 0 && !NetUtils.isValidIp(internalDns1))) {
+        if (internalDns1 != null && internalDns1.length() > 0 && !NetUtils.isValidIp(internalDns1)) {
             throw new InvalidParameterValueException("Please enter a valid IP address for internal DNS1");
         }
 
@@ -1468,13 +1468,13 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
             try {
                 Grouping.AllocationState.valueOf(allocationStateStr);
-            } catch (IllegalArgumentException ex) {
+            } catch (final IllegalArgumentException ex) {
                 throw new InvalidParameterValueException("Unable to resolve Allocation State '" + allocationStateStr + "' to a supported state");
             }
         }
     }
 
-    private void checkIpRange(String startIp, String endIp, String cidrAddress, long cidrSize) {
+    private void checkIpRange(final String startIp, final String endIp, final String cidrAddress, final long cidrSize) {
         if (!NetUtils.isValidIp(startIp)) {
             throw new InvalidParameterValueException("The start address of the IP range is not a valid IP address.");
         }
@@ -1497,28 +1497,30 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     }
 
-    private void checkOverlapPublicIpRange(Long zoneId, String startIp, String endIp) {
-        long privateStartIp = NetUtils.ip2Long(startIp);
-        long privateEndIp = NetUtils.ip2Long(endIp);
+    private void checkOverlapPublicIpRange(final Long zoneId, final String startIp, final String endIp) {
+        final long privateStartIp = NetUtils.ip2Long(startIp);
+        final long privateEndIp = NetUtils.ip2Long(endIp);
 
-        List<IPAddressVO> existingPublicIPs = _publicIpAddressDao.listByDcId(zoneId);
-        for (IPAddressVO publicIPVO : existingPublicIPs) {
-            long publicIP = NetUtils.ip2Long(publicIPVO.getAddress().addr());
-            if ((publicIP >= privateStartIp) && (publicIP <= privateEndIp)) {
+        final List<IPAddressVO> existingPublicIPs = _publicIpAddressDao.listByDcId(zoneId);
+        for (final IPAddressVO publicIPVO : existingPublicIPs) {
+            final long publicIP = NetUtils.ip2Long(publicIPVO.getAddress().addr());
+            if (publicIP >= privateStartIp && publicIP <= privateEndIp) {
                 throw new InvalidParameterValueException("The Start IP and endIP address range overlap with Public IP :" + publicIPVO.getAddress().addr());
             }
         }
     }
 
-    private void checkOverlapPrivateIpRange(Long zoneId, String startIp, String endIp) {
+    private void checkOverlapPrivateIpRange(final Long zoneId, final String startIp, final String endIp) {
 
-        List<HostPodVO> podsInZone = _podDao.listByDataCenterId(zoneId);
-        for (HostPodVO hostPod : podsInZone) {
-            String[] IpRange = hostPod.getDescription().split("-");
-            if (IpRange[0] == null || IpRange[1] == null)
+        final List<HostPodVO> podsInZone = _podDao.listByDataCenterId(zoneId);
+        for (final HostPodVO hostPod : podsInZone) {
+            final String[] IpRange = hostPod.getDescription().split("-");
+            if (IpRange[0] == null || IpRange[1] == null) {
                 continue;
-            if (!NetUtils.isValidIp(IpRange[0]) || !NetUtils.isValidIp(IpRange[1]))
+            }
+            if (!NetUtils.isValidIp(IpRange[0]) || !NetUtils.isValidIp(IpRange[1])) {
                 continue;
+            }
             if (NetUtils.ipRangesOverlap(startIp, endIp, IpRange[0], IpRange[1])) {
                 throw new InvalidParameterValueException("The Start IP and endIP address range overlap with private IP :" + IpRange[0] + ":" + IpRange[1]);
             }
@@ -1528,7 +1530,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
     @Override
     @DB
     @ActionEvent(eventType = EventTypes.EVENT_ZONE_DELETE, eventDescription = "deleting zone", async = false)
-    public boolean deleteZone(DeleteZoneCmd cmd) {
+    public boolean deleteZone(final DeleteZoneCmd cmd) {
 
         final Long zoneId = cmd.getId();
 
@@ -1541,33 +1543,33 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         return Transaction.execute(new TransactionCallback<Boolean>() {
             @Override
-            public Boolean doInTransaction(TransactionStatus status) {
-        // delete vlans for this zone
-        List<VlanVO> vlans = _vlanDao.listByZone(zoneId);
-        for (VlanVO vlan : vlans) {
-            _vlanDao.remove(vlan.getId());
-        }
-
-                boolean success = _zoneDao.remove(zoneId);
-
-        if (success) {
-            // delete all capacity records for the zone
-            _capacityDao.removeBy(null, zoneId, null, null, null);
-            // remove from dedicated resources
-            DedicatedResourceVO dr = _dedicatedDao.findByZoneId(zoneId);
-            if (dr != null) {
-                _dedicatedDao.remove(dr.getId());
-                // find the group associated and check if there are any more
-                // resources under that group
-                        List<DedicatedResourceVO> resourcesInGroup = _dedicatedDao.listByAffinityGroupId(dr.getAffinityGroupId());
-                if (resourcesInGroup.isEmpty()) {
-                    // delete the group
-                    _affinityGroupService.deleteAffinityGroup(dr.getAffinityGroupId(), null, null, null);
+            public Boolean doInTransaction(final TransactionStatus status) {
+                // delete vlans for this zone
+                final List<VlanVO> vlans = _vlanDao.listByZone(zoneId);
+                for (final VlanVO vlan : vlans) {
+                    _vlanDao.remove(vlan.getId());
+                }
+
+                final boolean success = _zoneDao.remove(zoneId);
+
+                if (success) {
+                    // delete all capacity records for the zone
+                    _capacityDao.removeBy(null, zoneId, null, null, null);
+                    // remove from dedicated resources
+                    final DedicatedResourceVO dr = _dedicatedDao.findByZoneId(zoneId);
+                    if (dr != null) {
+                        _dedicatedDao.remove(dr.getId());
+                        // find the group associated and check if there are any more
+                        // resources under that group
+                        final List<DedicatedResourceVO> resourcesInGroup = _dedicatedDao.listByAffinityGroupId(dr.getAffinityGroupId());
+                        if (resourcesInGroup.isEmpty()) {
+                            // delete the group
+                            _affinityGroupService.deleteAffinityGroup(dr.getAffinityGroupId(), null, null, null);
+                        }
+                    }
                 }
-            }
-        }
 
-        return success;
+                return success;
             }
         });
     }
@@ -1575,7 +1577,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
     @Override
     @DB
     @ActionEvent(eventType = EventTypes.EVENT_ZONE_EDIT, eventDescription = "editing zone", async = false)
-    public DataCenter editZone(UpdateZoneCmd cmd) {
+    public DataCenter editZone(final UpdateZoneCmd cmd) {
         // Parameter validation as from execute() method in V1
         final Long zoneId = cmd.getId();
         String zoneName = cmd.getZoneName();
@@ -1586,23 +1588,23 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         String internalDns1 = cmd.getInternalDns1();
         String internalDns2 = cmd.getInternalDns2();
         String guestCidr = cmd.getGuestCidrAddress();
-        List<String> dnsSearchOrder = cmd.getDnsSearchOrder();
+        final List<String> dnsSearchOrder = cmd.getDnsSearchOrder();
         final Boolean isPublic = cmd.isPublic();
         final String allocationStateStr = cmd.getAllocationState();
         final String dhcpProvider = cmd.getDhcpProvider();
-        Map<?, ?> detailsMap = cmd.getDetails();
-        String networkDomain = cmd.getDomain();
-        Boolean localStorageEnabled = cmd.getLocalStorageEnabled();
+        final Map<?, ?> detailsMap = cmd.getDetails();
+        final String networkDomain = cmd.getDomain();
+        final Boolean localStorageEnabled = cmd.getLocalStorageEnabled();
 
         final Map<String, String> newDetails = new HashMap<String, String>();
         if (detailsMap != null) {
-            Collection<?> zoneDetailsCollection = detailsMap.values();
-            Iterator<?> iter = zoneDetailsCollection.iterator();
+            final Collection<?> zoneDetailsCollection = detailsMap.values();
+            final Iterator<?> iter = zoneDetailsCollection.iterator();
             while (iter.hasNext()) {
-                HashMap<?, ?> detail = (HashMap<?, ?>)iter.next();
-                String key = (String)detail.get("key");
-                String value = (String)detail.get("value");
-                if ((key == null) || (value == null)) {
+                final HashMap<?, ?> detail = (HashMap<?, ?>)iter.next();
+                final String key = (String)detail.get("key");
+                final String value = (String)detail.get("value");
+                if (key == null || value == null) {
                     throw new InvalidParameterValueException(
                             "Invalid Zone Detail specified, fields 'key' and 'value' cannot be null, please specify details in the form:  details[0].key=XXX&details[0].value=YYY");
                 }
@@ -1618,7 +1620,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         // add the domain prefix list to details if not null
         if (dnsSearchOrder != null) {
-            for (String dom : dnsSearchOrder) {
+            for (final String dom : dnsSearchOrder) {
                 if (!NetUtils.verifyDomainName(dom)) {
                     throw new InvalidParameterValueException(
                             "Invalid network domain suffixes. Total length shouldn't exceed 190 chars. Each domain label must be between 1 and 63 characters long, can contain ASCII letters 'a' through 'z', the digits '0' through '9', "
@@ -1637,7 +1639,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             zoneName = zone.getName();
         }
 
-        if ((guestCidr != null) && !NetUtils.validateGuestCidr(guestCidr)) {
+        if (guestCidr != null && !NetUtils.validateGuestCidr(guestCidr)) {
             throw new InvalidParameterValueException("Please enter a valid guest cidr");
         }
 
@@ -1646,7 +1648,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("A zone with ID: " + zoneId + " does not exist.");
         }
 
-        String oldZoneName = zone.getName();
+        final String oldZoneName = zone.getName();
 
         if (zoneName == null) {
             zoneName = oldZoneName;
@@ -1689,10 +1691,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             }
         }
 
-        boolean checkForDuplicates = !zoneName.equals(oldZoneName);
+        final boolean checkForDuplicates = !zoneName.equals(oldZoneName);
         checkZoneParameters(zoneName, dns1, dns2, internalDns1, internalDns2, checkForDuplicates, null, allocationStateStr, ip6Dns1, ip6Dns2);// not allowing updating
-                                                      // domain associated with
-                                                      // a zone, once created
+        // domain associated with
+        // a zone, once created
 
         zone.setName(zoneName);
         zone.setDns1(dns1);
@@ -1716,78 +1718,78 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         Transaction.execute(new TransactionCallbackNoReturn() {
             @Override
-            public void doInTransactionWithoutResult(TransactionStatus status) {
-        Map<String, String> updatedDetails = new HashMap<String, String>();
-        _zoneDao.loadDetails(zone);
-        if (zone.getDetails() != null) {
-            updatedDetails.putAll(zone.getDetails());
-        }
-        updatedDetails.putAll(newDetails);
-        zone.setDetails(updatedDetails);
-
-        if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
-            Grouping.AllocationState allocationState = Grouping.AllocationState.valueOf(allocationStateStr);
-
-            if (allocationState == Grouping.AllocationState.Enabled) {
-                // check if zone has necessary trafficTypes before enabling
-                try {
-                    PhysicalNetwork mgmtPhyNetwork;
-                    // zone should have a physical network with management
-                    // traffiType
+            public void doInTransactionWithoutResult(final TransactionStatus status) {
+                final Map<String, String> updatedDetails = new HashMap<String, String>();
+                _zoneDao.loadDetails(zone);
+                if (zone.getDetails() != null) {
+                    updatedDetails.putAll(zone.getDetails());
+                }
+                updatedDetails.putAll(newDetails);
+                zone.setDetails(updatedDetails);
+
+                if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
+                    final Grouping.AllocationState allocationState = Grouping.AllocationState.valueOf(allocationStateStr);
+
+                    if (allocationState == Grouping.AllocationState.Enabled) {
+                        // check if zone has necessary trafficTypes before enabling
+                        try {
+                            PhysicalNetwork mgmtPhyNetwork;
+                            // zone should have a physical network with management
+                            // traffiType
                             mgmtPhyNetwork = _networkModel.getDefaultPhysicalNetworkByZoneAndTrafficType(zoneId, TrafficType.Management);
-                    if (NetworkType.Advanced == zone.getNetworkType() && !zone.isSecurityGroupEnabled()) {
-                        // advanced zone without SG should have a physical
-                        // network with public Thpe
-                        _networkModel.getDefaultPhysicalNetworkByZoneAndTrafficType(zoneId, TrafficType.Public);
-                    }
+                            if (NetworkType.Advanced == zone.getNetworkType() && !zone.isSecurityGroupEnabled()) {
+                                // advanced zone without SG should have a physical
+                                // network with public Thpe
+                                _networkModel.getDefaultPhysicalNetworkByZoneAndTrafficType(zoneId, TrafficType.Public);
+                            }
 
-                    try {
-                        _networkModel.getDefaultPhysicalNetworkByZoneAndTrafficType(zoneId, TrafficType.Storage);
-                    } catch (InvalidParameterValueException noStorage) {
-                                PhysicalNetworkTrafficTypeVO mgmtTraffic = _trafficTypeDao.findBy(mgmtPhyNetwork.getId(), TrafficType.Management);
+                            try {
+                                _networkModel.getDefaultPhysicalNetworkByZoneAndTrafficType(zoneId, TrafficType.Storage);
+                            } catch (final InvalidParameterValueException noStorage) {
+                                final PhysicalNetworkTrafficTypeVO mgmtTraffic = _trafficTypeDao.findBy(mgmtPhyNetwork.getId(), TrafficType.Management);
                                 _networkSvc.addTrafficTypeToPhysicalNetwork(mgmtPhyNetwork.getId(), TrafficType.Storage.toString(), "vlan", mgmtTraffic.getXenNetworkLabel(),
                                         mgmtTraffic.getKvmNetworkLabel(), mgmtTraffic.getVmwareNetworkLabel(), mgmtTraffic.getSimulatorNetworkLabel(), mgmtTraffic.getVlan(),
                                         mgmtTraffic.getHypervNetworkLabel(), mgmtTraffic.getOvm3NetworkLabel());
                                 s_logger.info("No storage traffic type was specified by admin, create default storage traffic on physical network " + mgmtPhyNetwork.getId()
                                         + " with same configure of management traffic type");
+                            }
+                        } catch (final InvalidParameterValueException ex) {
+                            throw new InvalidParameterValueException("Cannot enable this Zone since: " + ex.getMessage());
+                        }
                     }
-                } catch (InvalidParameterValueException ex) {
-                    throw new InvalidParameterValueException("Cannot enable this Zone since: " + ex.getMessage());
+                    zone.setAllocationState(allocationState);
                 }
-            }
-            zone.setAllocationState(allocationState);
-        }
-
-        if (dhcpProvider != null) {
-            zone.setDhcpProvider(dhcpProvider);
-        }
-
-        // update a private zone to public; not vice versa
-        if (isPublic != null && isPublic) {
-            zone.setDomainId(null);
-            zone.setDomain(null);
 
-            // release the dedication for this zone
-            DedicatedResourceVO resource = _dedicatedDao.findByZoneId(zoneId);
-            Long resourceId = null;
-            if (resource != null) {
-                resourceId = resource.getId();
-                if (!_dedicatedDao.remove(resourceId)) {
-                    throw new CloudRuntimeException("Failed to delete dedicated Zone Resource " + resourceId);
+                if (dhcpProvider != null) {
+                    zone.setDhcpProvider(dhcpProvider);
                 }
-                // find the group associated and check if there are any more
-                // resources under that group
-                List<DedicatedResourceVO> resourcesInGroup = _dedicatedDao.listByAffinityGroupId(resource.getAffinityGroupId());
-                if (resourcesInGroup.isEmpty()) {
-                    // delete the group
-                    _affinityGroupService.deleteAffinityGroup(resource.getAffinityGroupId(), null, null, null);
+
+                // update a private zone to public; not vice versa
+                if (isPublic != null && isPublic) {
+                    zone.setDomainId(null);
+                    zone.setDomain(null);
+
+                    // release the dedication for this zone
+                    final DedicatedResourceVO resource = _dedicatedDao.findByZoneId(zoneId);
+                    Long resourceId = null;
+                    if (resource != null) {
+                        resourceId = resource.getId();
+                        if (!_dedicatedDao.remove(resourceId)) {
+                            throw new CloudRuntimeException("Failed to delete dedicated Zone Resource " + resourceId);
+                        }
+                        // find the group associated and check if there are any more
+                        // resources under that group
+                        final List<DedicatedResourceVO> resourcesInGroup = _dedicatedDao.listByAffinityGroupId(resource.getAffinityGroupId());
+                        if (resourcesInGroup.isEmpty()) {
+                            // delete the group
+                            _affinityGroupService.deleteAffinityGroup(resource.getAffinityGroupId(), null, null, null);
+                        }
+                    }
                 }
-            }
-        }
 
-        if (!_zoneDao.update(zoneId, zone)) {
-            throw new CloudRuntimeException("Failed to edit zone. Please contact Cloud Support.");
-        }
+                if (!_zoneDao.update(zoneId, zone)) {
+                    throw new CloudRuntimeException("Failed to edit zone. Please contact Cloud Support.");
+                }
             }
         });
 
@@ -1796,14 +1798,14 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @DB
-    public DataCenterVO createZone(long userId, String zoneName, String dns1, String dns2, String internalDns1, String internalDns2, String guestCidr, String domain,
-            final Long domainId, NetworkType zoneType, String allocationStateStr, String networkDomain, boolean isSecurityGroupEnabled, boolean isLocalStorageEnabled,
-            String ip6Dns1, String ip6Dns2) {
+    public DataCenterVO createZone(final long userId, final String zoneName, final String dns1, final String dns2, final String internalDns1, final String internalDns2, final String guestCidr, final String domain,
+            final Long domainId, final NetworkType zoneType, final String allocationStateStr, final String networkDomain, final boolean isSecurityGroupEnabled, final boolean isLocalStorageEnabled,
+            final String ip6Dns1, final String ip6Dns2) {
 
         // checking the following params outside checkzoneparams method as we do
         // not use these params for updatezone
         // hence the method below is generic to check for common params
-        if ((guestCidr != null) && !NetUtils.validateGuestCidr(guestCidr)) {
+        if (guestCidr != null && !NetUtils.validateGuestCidr(guestCidr)) {
             throw new InvalidParameterValueException("Please enter a valid guest cidr");
         }
 
@@ -1818,42 +1820,42 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
         checkZoneParameters(zoneName, dns1, dns2, internalDns1, internalDns2, true, domainId, allocationStateStr, ip6Dns1, ip6Dns2);
 
-        byte[] bytes = (zoneName + System.currentTimeMillis()).getBytes();
-        String zoneToken = UUID.nameUUIDFromBytes(bytes).toString();
+        final byte[] bytes = (zoneName + System.currentTimeMillis()).getBytes();
+        final String zoneToken = UUID.nameUUIDFromBytes(bytes).toString();
 
-            // Create the new zone in the database
+        // Create the new zone in the database
         final DataCenterVO zoneFinal = new DataCenterVO(zoneName, null, dns1, dns2, internalDns1, internalDns2, guestCidr, domain, domainId, zoneType, zoneToken, networkDomain,
                 isSecurityGroupEnabled, isLocalStorageEnabled, ip6Dns1, ip6Dns2);
-            if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
-                Grouping.AllocationState allocationState = Grouping.AllocationState.valueOf(allocationStateStr);
+        if (allocationStateStr != null && !allocationStateStr.isEmpty()) {
+            final Grouping.AllocationState allocationState = Grouping.AllocationState.valueOf(allocationStateStr);
             zoneFinal.setAllocationState(allocationState);
-            } else {
-                // Zone will be disabled since 3.0. Admin should enable it after
-                // physical network and providers setup.
+        } else {
+            // Zone will be disabled since 3.0. Admin should enable it after
+            // physical network and providers setup.
             zoneFinal.setAllocationState(Grouping.AllocationState.Disabled);
-            }
+        }
 
         return Transaction.execute(new TransactionCallback<DataCenterVO>() {
             @Override
-            public DataCenterVO doInTransaction(TransactionStatus status) {
-                DataCenterVO zone = _zoneDao.persist(zoneFinal);
-            if (domainId != null) {
-                // zone is explicitly dedicated to this domain
-                // create affinity group associated and dedicate the zone.
-                AffinityGroup group = createDedicatedAffinityGroup(null, domainId, null);
-                    DedicatedResourceVO dedicatedResource = new DedicatedResourceVO(zone.getId(), null, null, null, domainId, null, group.getId());
-                _dedicatedDao.persist(dedicatedResource);
-            }
+            public DataCenterVO doInTransaction(final TransactionStatus status) {
+                final DataCenterVO zone = _zoneDao.persist(zoneFinal);
+                if (domainId != null) {
+                    // zone is explicitly dedicated to this domain
+                    // create affinity group associated and dedicate the zone.
+                    final AffinityGroup group = createDedicatedAffinityGroup(null, domainId, null);
+                    final DedicatedResourceVO dedicatedResource = new DedicatedResourceVO(zone.getId(), null, null, null, domainId, null, group.getId());
+                    _dedicatedDao.persist(dedicatedResource);
+                }
 
-            // Create default system networks
-            createDefaultSystemNetworks(zone.getId());
+                // Create default system networks
+                createDefaultSystemNetworks(zone.getId());
 
-            return zone;
-        }
+                return zone;
+            }
         });
     }
 
-    private AffinityGroup createDedicatedAffinityGroup(String affinityGroupName, Long domainId, Long accountId) {
+    private AffinityGroup createDedicatedAffinityGroup(String affinityGroupName, final Long domainId, final Long accountId) {
         if (affinityGroupName == null) {
             // default to a groupname with account/domain information
             affinityGroupName = "ZoneDedicatedGrp-domain-" + domainId + (accountId != null ? "-acct-" + accountId : "");
@@ -1863,7 +1865,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         String accountName = null;
 
         if (accountId != null) {
-            AccountVO account = _accountDao.findById(accountId);
+            final AccountVO account = _accountDao.findById(accountId);
             accountName = account.getAccountName();
 
             group = _affinityGroupDao.findByAccountAndName(accountId, affinityGroupName);
@@ -1885,19 +1887,19 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
     }
 
     @Override
-    public void createDefaultSystemNetworks(long zoneId) throws ConcurrentOperationException {
-        DataCenterVO zone = _zoneDao.findById(zoneId);
-        String networkDomain = null;
+    public void createDefaultSystemNetworks(final long zoneId) throws ConcurrentOperationException {
+        final DataCenterVO zone = _zoneDao.findById(zoneId);
+        final String networkDomain = null;
         // Create public, management, control and storage networks as a part of
         // the zone creation
         if (zone != null) {
-            List<NetworkOfferingVO> ntwkOff = _networkOfferingDao.listSystemNetworkOfferings();
+            final List<NetworkOfferingVO> ntwkOff = _networkOfferingDao.listSystemNetworkOfferings();
 
-            for (NetworkOfferingVO offering : ntwkOff) {
-                DataCenterDeployment plan = new DataCenterDeployment(zone.getId(), null, null, null, null, null);
-                NetworkVO userNetwork = new NetworkVO();
+            for (final NetworkOfferingVO offering : ntwkOff) {
+                final DataCenterDeployment plan = new DataCenterDeployment(zone.getId(), null, null, null, null, null);
+                final NetworkVO userNetwork = new NetworkVO();
 
-                Account systemAccount = _accountDao.findById(Account.ACCOUNT_ID_SYSTEM);
+                final Account systemAccount = _accountDao.findById(Account.ACCOUNT_ID_SYSTEM);
 
                 BroadcastDomainType broadcastDomainType = null;
                 if (offering.getTrafficType() == TrafficType.Management) {
@@ -1905,7 +1907,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 } else if (offering.getTrafficType() == TrafficType.Control) {
                     broadcastDomainType = BroadcastDomainType.LinkLocal;
                 } else if (offering.getTrafficType() == TrafficType.Public) {
-                    if ((zone.getNetworkType() == NetworkType.Advanced && !zone.isSecurityGroupEnabled()) || zone.getNetworkType() == NetworkType.Basic) {
+                    if (zone.getNetworkType() == NetworkType.Advanced && !zone.isSecurityGroupEnabled() || zone.getNetworkType() == NetworkType.Basic) {
                         broadcastDomainType = BroadcastDomainType.Vlan;
                     } else {
                         continue; // so broadcastDomainType remains null! why have None/Undecided/UnKnown?
@@ -1923,36 +1925,36 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @ActionEvent(eventType = EventTypes.EVENT_ZONE_CREATE, eventDescription = "creating zone", async = false)
-    public DataCenter createZone(CreateZoneCmd cmd) {
+    public DataCenter createZone(final CreateZoneCmd cmd) {
         // grab parameters from the command
-        Long userId = CallContext.current().getCallingUserId();
-        String zoneName = cmd.getZoneName();
-        String dns1 = cmd.getDns1();
-        String dns2 = cmd.getDns2();
-        String ip6Dns1 = cmd.getIp6Dns1();
-        String ip6Dns2 = cmd.getIp6Dns2();
-        String internalDns1 = cmd.getInternalDns1();
-        String internalDns2 = cmd.getInternalDns2();
-        String guestCidr = cmd.getGuestCidrAddress();
-        Long domainId = cmd.getDomainId();
-        String type = cmd.getNetworkType();
+        final Long userId = CallContext.current().getCallingUserId();
+        final String zoneName = cmd.getZoneName();
+        final String dns1 = cmd.getDns1();
+        final String dns2 = cmd.getDns2();
+        final String ip6Dns1 = cmd.getIp6Dns1();
+        final String ip6Dns2 = cmd.getIp6Dns2();
+        final String internalDns1 = cmd.getInternalDns1();
+        final String internalDns2 = cmd.getInternalDns2();
+        final String guestCidr = cmd.getGuestCidrAddress();
+        final Long domainId = cmd.getDomainId();
+        final String type = cmd.getNetworkType();
         Boolean isBasic = false;
         String allocationState = cmd.getAllocationState();
-        String networkDomain = cmd.getDomain();
+        final String networkDomain = cmd.getDomain();
         boolean isSecurityGroupEnabled = cmd.getSecuritygroupenabled();
-        boolean isLocalStorageEnabled = cmd.getLocalStorageEnabled();
+        final boolean isLocalStorageEnabled = cmd.getLocalStorageEnabled();
 
         if (allocationState == null) {
             allocationState = Grouping.AllocationState.Disabled.toString();
         }
 
-        if (!(type.equalsIgnoreCase(NetworkType.Basic.toString())) && !(type.equalsIgnoreCase(NetworkType.Advanced.toString()))) {
+        if (!type.equalsIgnoreCase(NetworkType.Basic.toString()) && !type.equalsIgnoreCase(NetworkType.Advanced.toString())) {
             throw new InvalidParameterValueException("Invalid zone type; only Advanced and Basic values are supported");
         } else if (type.equalsIgnoreCase(NetworkType.Basic.toString())) {
             isBasic = true;
         }
 
-        NetworkType zoneType = isBasic ? NetworkType.Basic : NetworkType.Advanced;
+        final NetworkType zoneType = isBasic ? NetworkType.Basic : NetworkType.Advanced;
 
         // error out when the parameter specified for Basic zone
         if (zoneType == NetworkType.Basic && guestCidr != null) {
@@ -1975,22 +1977,22 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
 
     @Override
     @ActionEvent(eventType = EventTypes.EVENT_SERVICE_OFFERING_CREATE, eventDescription = "creating service offering")
-    public ServiceOffering createServiceOffering(CreateServiceOfferingCmd cmd) {
-        Long userId = CallContext.current().getCallingUserId();
+    public ServiceOffering createServiceOffering(final CreateServiceOfferingCmd cmd) {
+        final Long userId = CallContext.current().getCallingUserId();
 
-        String name = cmd.getServiceOfferingName();
-        if ((name == null) || (name.length() == 0)) {
+        final String name = cmd.getServiceOfferingName();
+        if (name == null || name.length() == 0) {
             throw new InvalidParameterValueException("Failed to create service offering: specify the name that has non-zero length");
         }
 
-        String displayText = cmd.getDisplayText();
-        if ((displayText == null) || (displayText.length() == 0)) {
+        final String displayText = cmd.getDisplayText();
+        if (displayText == null || displayText.length() == 0) {
             throw new InvalidParameterValueException("Failed to create service offering " + name + ": specify the display text that has non-zero length");
         }
 
-        Integer cpuNumber = cmd.getCpuNumber();
-        Integer cpuSpeed = cmd.getCpuSpeed();
-        Integer memory = cmd.getMemory();
+        final Integer cpuNumber = cmd.getCpuNumber();
+        final Integer cpuSpeed = cmd.getCpuSpeed();
+        final Integer memory = cmd.getMemory();
 
         //restricting the createserviceoffering to allow setting all or none of the dynamic parameters to null
         if (cpuNumber == null || cpuSpeed == null || memory == null) {
@@ -1999,13 +2001,13 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             }
         }
 
-        if ((cpuNumber != null) && ((cpuNumber.intValue() <= 0) || (cpuNumber.longValue() > Integer.MAX_VALUE))) {
+        if (cpuNumber != null && (cpuNumber.intValue() <= 0 || cpuNumber.longValue() > Integer.MAX_VALUE)) {
             throw new InvalidParameterValueException("Failed to create service offering " + name + ": specify the cpu number value between 1 and " + Integer.MAX_VALUE);
         }
-        if ((cpuSpeed != null) && ((cpuSpeed.intValue() < 0) || (cpuSpeed.longValue() > Integer.MAX_VALUE))) {
+        if (cpuSpeed != null && (cpuSpeed.intValue() < 0 || cpuSpeed.longValue() > Integer.MAX_VALUE)) {
             throw new InvalidParameterValueException("Failed to create service offering " + name + ": specify the cpu speed value between 0 and " + Integer.MAX_VALUE);
         }
-        if ((memory != null) && ((memory.intValue() < 32) || (memory.longValue() > Integer.MAX_VALUE))) {
+        if (memory != null && (memory.intValue() < 32 || memory.longValue() > Integer.MAX_VALUE)) {
             throw new InvalidParameterValueException("Failed to create service offering " + name + ": specify the memory value between 32 and " + Integer.MAX_VALUE + " MB");
         }
 
@@ -2014,10 +2016,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             throw new InvalidParameterValueException("Please specify a valid domain id");
         }
 
-        Boolean offerHA = cmd.getOfferHa();
+        final Boolean offerHA = cmd.getOfferHa();
 
         boolean localStorageRequired = false;
-        String storageType = cmd.getStorageType();
+        final String storageType = cmd.getStorageType();
         if (storageType != null) {
             if (storageType.equalsIgnoreCase(ServiceOffering.StorageType.local.toString())) {
                 if(offerHA) {
@@ -2029,10 +2031,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
             }
         }
 
-        Boolean limitCpuUse = cmd.GetLimitCpuUse();
-        Boolean volatileVm = cmd.getVolatileVm();
+        final Boolean limitCpuUse = cmd.GetLimitCpuUse();
+        final Boolean volatileVm = cmd.getVolatileVm();
 
-        String vmTypeString = cmd.getSystemVmType();
+        final String vmTypeString = cmd.getSystemVmType();
         VirtualMachine.Type vmType = null;
         boolean allowNetworkRate = false;
         if (cmd.getIsSystem()) {
@@ -2063,7 +2065,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
         }
 
         if (cmd.getDeploymentPlanner() != null) {
-            List<String> planners = _mgr.listDeploymentPlanners();
+            final List<String> planners = _mgr.listDeploymentPlanners();
             if (planners != null && !planners.isEmpty()) {
                 if (!planners.contains(cmd.getDeploymentPlanner())) {
                     throw new InvalidParameterValueException("Invalid name for Deployment Planner specified, please use listDeploymentPlanners to get the valid set");
@@ -2079,18 +2081,18 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati
                 cmd.getBytesReadRate(), cmd.getBytesWriteRate(), cmd.getIopsReadRate(), cmd.getIopsWriteRate(), cmd.getHypervisorSnapshotReserve());
     }
 
-    protected ServiceOfferingVO createServiceOffering(long userId, boolean isSystem, VirtualMachine.Type vmType,
-            String name, Integer cpu, Integer ramSize, Integer speed, String displayText, String provisioningType, boolean localStorageRequired,
-            boolean offerHA, boolean limitResourceUse, boolean volatileVm,  String tags, Long domainId, String hostTag,
-            Integer networkRate, String deploymentPlanner, Map<String, String> detai

<TRUNCATED>