You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ek...@apache.org on 2015/04/02 23:21:36 UTC

[3/4] git commit: updated refs/heads/master to 3d22a16

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3d22a16c/plugins/hypervisors/simulator/src/com/cloud/agent/manager/SimulatorManagerImpl.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/simulator/src/com/cloud/agent/manager/SimulatorManagerImpl.java b/plugins/hypervisors/simulator/src/com/cloud/agent/manager/SimulatorManagerImpl.java
index b0c0bc6..46ddd95 100644
--- a/plugins/hypervisors/simulator/src/com/cloud/agent/manager/SimulatorManagerImpl.java
+++ b/plugins/hypervisors/simulator/src/com/cloud/agent/manager/SimulatorManagerImpl.java
@@ -27,20 +27,17 @@ import javax.ejb.Local;
 import javax.inject.Inject;
 import javax.naming.ConfigurationException;
 
-import com.cloud.agent.api.routing.SetMonitorServiceCommand;
-
-import org.apache.log4j.Logger;
-import org.springframework.stereotype.Component;
 import org.apache.cloudstack.storage.command.DeleteCommand;
 import org.apache.cloudstack.storage.command.DownloadCommand;
 import org.apache.cloudstack.storage.command.DownloadProgressCommand;
 import org.apache.cloudstack.storage.command.StorageSubSystemCommand;
+import org.apache.log4j.Logger;
+import org.springframework.stereotype.Component;
 
 import com.cloud.agent.api.Answer;
 import com.cloud.agent.api.AttachIsoCommand;
 import com.cloud.agent.api.AttachVolumeCommand;
 import com.cloud.agent.api.BackupSnapshotCommand;
-import com.cloud.agent.api.BumpUpPriorityCommand;
 import com.cloud.agent.api.CheckHealthCommand;
 import com.cloud.agent.api.CheckNetworkCommand;
 import com.cloud.agent.api.CheckRouterCommand;
@@ -75,6 +72,7 @@ import com.cloud.agent.api.PvlanSetupCommand;
 import com.cloud.agent.api.RebootCommand;
 import com.cloud.agent.api.RevertToVMSnapshotCommand;
 import com.cloud.agent.api.ScaleVmCommand;
+import com.cloud.agent.api.SecStorageFirewallCfgCommand;
 import com.cloud.agent.api.SecStorageSetupCommand;
 import com.cloud.agent.api.SecStorageVMSetupCommand;
 import com.cloud.agent.api.SecurityGroupRulesCmd;
@@ -95,6 +93,7 @@ import com.cloud.agent.api.routing.LoadBalancerConfigCommand;
 import com.cloud.agent.api.routing.RemoteAccessVpnCfgCommand;
 import com.cloud.agent.api.routing.SavePasswordCommand;
 import com.cloud.agent.api.routing.SetFirewallRulesCommand;
+import com.cloud.agent.api.routing.SetMonitorServiceCommand;
 import com.cloud.agent.api.routing.SetNetworkACLCommand;
 import com.cloud.agent.api.routing.SetPortForwardingRulesCommand;
 import com.cloud.agent.api.routing.SetPortForwardingRulesVpcCommand;
@@ -113,7 +112,6 @@ import com.cloud.agent.api.storage.PrimaryStorageDownloadCommand;
 import com.cloud.api.commands.CleanupSimulatorMockCmd;
 import com.cloud.api.commands.ConfigureSimulatorCmd;
 import com.cloud.api.commands.QuerySimulatorMockCmd;
-import com.cloud.agent.api.SecStorageFirewallCfgCommand;
 import com.cloud.resource.SimulatorStorageProcessor;
 import com.cloud.serializer.GsonHelper;
 import com.cloud.simulator.MockConfigurationVO;
@@ -153,9 +151,9 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
     protected StorageSubsystemCommandHandler storageHandler;
 
     @Override
-    public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
-        SimulatorStorageProcessor processor = new SimulatorStorageProcessor(this);
-        this.storageHandler = new StorageSubsystemCommandHandlerBase(processor);
+    public boolean configure(final String name, final Map<String, Object> params) throws ConfigurationException {
+        final SimulatorStorageProcessor processor = new SimulatorStorageProcessor(this);
+        storageHandler = new StorageSubsystemCommandHandlerBase(processor);
         return true;
     }
 
@@ -191,7 +189,7 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
 
     @Override
     public List<Class<?>> getCommands() {
-        List<Class<?>> cmdList = new ArrayList<Class<?>>();
+        final List<Class<?>> cmdList = new ArrayList<Class<?>>();
         cmdList.add(ConfigureSimulatorCmd.class);
         cmdList.add(QuerySimulatorMockCmd.class);
         cmdList.add(CleanupSimulatorMockCmd.class);
@@ -200,48 +198,48 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
 
     @DB
     @Override
-    public Answer simulate(Command cmd, String hostGuid) {
+    public Answer simulate(final Command cmd, final String hostGuid) {
         Answer answer = null;
         Exception exception = null;
         TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.SIMULATOR_DB);
         try {
-            MockHost host = _mockHost.findByGuid(hostGuid);
+            final MockHost host = _mockHost.findByGuid(hostGuid);
             String cmdName = cmd.toString();
-            int index = cmdName.lastIndexOf(".");
+            final int index = cmdName.lastIndexOf(".");
             if (index != -1) {
                 cmdName = cmdName.substring(index + 1);
             }
 
-            SimulatorInfo info = new SimulatorInfo();
+            final SimulatorInfo info = new SimulatorInfo();
             info.setHostUuid(hostGuid);
 
-            MockConfigurationVO config = _mockConfigDao.findByNameBottomUP(host.getDataCenterId(), host.getPodId(), host.getClusterId(), host.getId(), cmdName);
+            final MockConfigurationVO config = _mockConfigDao.findByNameBottomUP(host.getDataCenterId(), host.getPodId(), host.getClusterId(), host.getId(), cmdName);
             if (config != null && (config.getCount() == null || config.getCount().intValue() > 0)) {
-                Map<String, String> configParameters = config.getParameters();
-                for (Map.Entry<String, String> entry : configParameters.entrySet()) {
+                final Map<String, String> configParameters = config.getParameters();
+                for (final Map.Entry<String, String> entry : configParameters.entrySet()) {
                     if (entry.getKey().equalsIgnoreCase("enabled")) {
                         info.setEnabled(Boolean.parseBoolean(entry.getValue()));
                     } else if (entry.getKey().equalsIgnoreCase("timeout")) {
                         try {
                             info.setTimeout(Integer.valueOf(entry.getValue()));
-                        } catch (NumberFormatException e) {
+                        } catch (final NumberFormatException e) {
                             s_logger.debug("invalid timeout parameter: " + e.toString());
                         }
                     }
 
                     if (entry.getKey().equalsIgnoreCase("wait")) {
                         try {
-                            int wait = Integer.valueOf(entry.getValue());
+                            final int wait = Integer.valueOf(entry.getValue());
                             Thread.sleep(wait);
-                        } catch (NumberFormatException e) {
+                        } catch (final NumberFormatException e) {
                             s_logger.debug("invalid wait parameter: " + e.toString());
-                        } catch (InterruptedException e) {
+                        } catch (final InterruptedException e) {
                             s_logger.debug("thread is interrupted: " + e.toString());
                         }
                     }
 
                     if (entry.getKey().equalsIgnoreCase("result")) {
-                        String value = entry.getValue();
+                        final String value = entry.getValue();
                         if (value.equalsIgnoreCase("fail")) {
                             answer = new Answer(cmd, false, "Simulated failure");
                         } else if (value.equalsIgnoreCase("fault")) {
@@ -255,20 +253,20 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
                 }
 
                 if (answer == null) {
-                    String message = config.getJsonResponse();
+                    final String message = config.getJsonResponse();
                     if (message != null) {
                         // json response looks like {"<Type>":....}
-                        String objectType = message.split(":")[0].substring(2).replace("\"", "");
-                        String objectData = message.substring(message.indexOf(':') + 1, message.length() - 1);
+                        final String objectType = message.split(":")[0].substring(2).replace("\"", "");
+                        final String objectData = message.substring(message.indexOf(':') + 1, message.length() - 1);
                         if (objectType != null) {
                             Class<?> clz = null;
                             try {
                                 clz = Class.forName(objectType);
-                            } catch (ClassNotFoundException e) {
+                            } catch (final ClassNotFoundException e) {
                             }
                             if (clz != null) {
-                                StringReader reader = new StringReader(objectData);
-                                JsonReader jsonReader = new JsonReader(reader);
+                                final StringReader reader = new StringReader(objectData);
+                                final JsonReader jsonReader = new JsonReader(reader);
                                 jsonReader.setLenient(true);
                                 answer = (Answer)s_gson.fromJson(jsonReader, clz);
                             }
@@ -378,8 +376,6 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
                     answer = _mockVmMgr.getVmStats((GetVmStatsCommand)cmd);
                 } else if (cmd instanceof CheckRouterCommand) {
                     answer = _mockVmMgr.checkRouter((CheckRouterCommand)cmd);
-                } else if (cmd instanceof BumpUpPriorityCommand) {
-                    answer = _mockVmMgr.bumpPriority((BumpUpPriorityCommand)cmd);
                 } else if (cmd instanceof GetDomRVersionCmd) {
                     answer = _mockVmMgr.getDomRVersion((GetDomRVersionCmd)cmd);
                 } else if (cmd instanceof CopyVolumeCommand) {
@@ -419,7 +415,7 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
                 } else if (cmd instanceof PvlanSetupCommand) {
                     answer = _mockNetworkMgr.setupPVLAN((PvlanSetupCommand)cmd);
                 } else if (cmd instanceof StorageSubSystemCommand) {
-                    answer = this.storageHandler.handleStorageCommands((StorageSubSystemCommand)cmd);
+                    answer = storageHandler.handleStorageCommands((StorageSubSystemCommand)cmd);
                 } else if (cmd instanceof FenceCommand) {
                     answer = _mockVmMgr.fence((FenceCommand)cmd);
                 } else if (cmd instanceof GetRouterAlertsCommand || cmd instanceof VpnUsersCfgCommand || cmd instanceof RemoteAccessVpnCfgCommand || cmd instanceof SetMonitorServiceCommand || cmd instanceof AggregationControlCommand ||
@@ -431,7 +427,7 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
                 }
             }
 
-            if (config != null && (config.getCount() != null && config.getCount().intValue() > 0)) {
+            if (config != null && config.getCount() != null && config.getCount().intValue() > 0) {
                 if (answer != null) {
                     config.setCount(config.getCount().intValue() - 1);
                     _mockConfigDao.update(config.getId(), config);
@@ -439,7 +435,7 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
             }
 
             return answer;
-        } catch (Exception e) {
+        } catch (final Exception e) {
             s_logger.error("Failed execute cmd: ", e);
             txn.rollback();
             return new Answer(cmd, false, e.toString());
@@ -451,29 +447,29 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
     }
 
     @Override
-    public StoragePoolInfo getLocalStorage(String hostGuid) {
+    public StoragePoolInfo getLocalStorage(final String hostGuid) {
         return _mockStorageMgr.getLocalStorage(hostGuid);
     }
 
     @Override
-    public Map<String, PowerState> getVmStates(String hostGuid) {
+    public Map<String, PowerState> getVmStates(final String hostGuid) {
         return _mockVmMgr.getVmStates(hostGuid);
     }
 
     @Override
-    public Map<String, MockVMVO> getVms(String hostGuid) {
+    public Map<String, MockVMVO> getVms(final String hostGuid) {
         return _mockVmMgr.getVms(hostGuid);
     }
 
     @Override
-    public HashMap<String, Pair<Long, Long>> syncNetworkGroups(String hostGuid) {
-        SimulatorInfo info = new SimulatorInfo();
+    public HashMap<String, Pair<Long, Long>> syncNetworkGroups(final String hostGuid) {
+        final SimulatorInfo info = new SimulatorInfo();
         info.setHostUuid(hostGuid);
         return _mockVmMgr.syncNetworkGroups(info);
     }
 
     @Override
-    public Long configureSimulator(Long zoneId, Long podId, Long clusterId, Long hostId, String command, String values, Integer count, String jsonResponse) {
+    public Long configureSimulator(final Long zoneId, final Long podId, final Long clusterId, final Long hostId, final String command, final String values, final Integer count, final String jsonResponse) {
         Long id = null;
         TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.SIMULATOR_DB);
         try {
@@ -499,7 +495,7 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
                 txn.commit();
             }
             id = config.getId();
-        } catch (Exception ex) {
+        } catch (final Exception ex) {
             txn.rollback();
             throw new CloudRuntimeException("Unable to configure simulator mock because of " + ex.getMessage(), ex);
         } finally {
@@ -511,12 +507,12 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
     }
 
     @Override
-    public MockConfigurationVO querySimulatorMock(Long id) {
+    public MockConfigurationVO querySimulatorMock(final Long id) {
         TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.SIMULATOR_DB);
         try {
             txn.start();
             return _mockConfigDao.findById(id);
-        } catch (Exception ex) {
+        } catch (final Exception ex) {
             txn.rollback();
             throw new CloudRuntimeException("Unable to query simulator mock because of " + ex.getMessage(), ex);
         } finally {
@@ -527,19 +523,19 @@ public class SimulatorManagerImpl extends ManagerBase implements SimulatorManage
     }
 
     @Override
-    public boolean clearSimulatorMock(Long id) {
+    public boolean clearSimulatorMock(final Long id) {
         boolean status = false;
         TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.SIMULATOR_DB);
         try {
             txn.start();
-            MockConfigurationVO config = _mockConfigDao.findById(id);
+            final MockConfigurationVO config = _mockConfigDao.findById(id);
             if (config != null) {
                 config.setRemoved(new Date());
                 _mockConfigDao.update(config.getId(), config);
                 status = true;
                 txn.commit();
             }
-        } catch (Exception ex) {
+        } catch (final Exception ex) {
             txn.rollback();
             throw new CloudRuntimeException("Unable to cleanup simulator mock because of " + ex.getMessage(), ex);
         } finally {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3d22a16c/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/LoadBalanceRuleHandler.java
----------------------------------------------------------------------
diff --git a/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/LoadBalanceRuleHandler.java b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/LoadBalanceRuleHandler.java
index 14c8fca..497913f 100644
--- a/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/LoadBalanceRuleHandler.java
+++ b/plugins/network-elements/elastic-loadbalancer/src/com/cloud/network/lb/LoadBalanceRuleHandler.java
@@ -27,7 +27,6 @@ import java.util.Random;
 
 import javax.inject.Inject;
 
-import com.cloud.user.dao.UserDao;
 import org.apache.cloudstack.api.command.user.loadbalancer.CreateLoadBalancerRuleCmd;
 import org.apache.cloudstack.context.CallContext;
 import org.apache.cloudstack.engine.orchestration.service.NetworkOrchestrationService;
@@ -78,6 +77,7 @@ import com.cloud.storage.dao.VMTemplateDao;
 import com.cloud.user.Account;
 import com.cloud.user.AccountService;
 import com.cloud.user.dao.AccountDao;
+import com.cloud.user.dao.UserDao;
 import com.cloud.utils.db.DB;
 import com.cloud.utils.db.SearchBuilder;
 import com.cloud.utils.db.SearchCriteria;
@@ -87,7 +87,6 @@ import com.cloud.utils.db.TransactionStatus;
 import com.cloud.utils.exception.CloudRuntimeException;
 import com.cloud.vm.DomainRouterVO;
 import com.cloud.vm.NicProfile;
-import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.VirtualMachine.State;
 import com.cloud.vm.VirtualMachineManager;
 import com.cloud.vm.VirtualMachineName;
@@ -150,28 +149,28 @@ public class LoadBalanceRuleHandler {
     private final String _instance;
     private final Account _systemAcct;
 
-    public LoadBalanceRuleHandler(ServiceOfferingVO elasticLbVmOffering, String instance, Account systemAcct) {
-        this._elasticLbVmOffering = elasticLbVmOffering;
-        this._instance = instance;
-        this._systemAcct = systemAcct;
+    public LoadBalanceRuleHandler(final ServiceOfferingVO elasticLbVmOffering, final String instance, final Account systemAcct) {
+        _elasticLbVmOffering = elasticLbVmOffering;
+        _instance = instance;
+        _systemAcct = systemAcct;
     }
 
-    public void handleDeleteLoadBalancerRule(LoadBalancer lb, long userId, Account caller) {
-        List<LoadBalancerVO> remainingLbs = _loadBalancerDao.listByIpAddress(lb.getSourceIpAddressId());
+    public void handleDeleteLoadBalancerRule(final LoadBalancer lb, final long userId, final Account caller) {
+        final List<LoadBalancerVO> remainingLbs = _loadBalancerDao.listByIpAddress(lb.getSourceIpAddressId());
         if (remainingLbs.size() == 0) {
             s_logger.debug("ELB mgr: releasing ip " + lb.getSourceIpAddressId() + " since  no LB rules remain for this ip address");
             releaseIp(lb.getSourceIpAddressId(), userId, caller);
         }
     }
 
-    public LoadBalancer handleCreateLoadBalancerRule(CreateLoadBalancerRuleCmd lb, Account account, long networkId) throws InsufficientAddressCapacityException,
-            NetworkRuleConflictException {
+    public LoadBalancer handleCreateLoadBalancerRule(final CreateLoadBalancerRuleCmd lb, Account account, final long networkId) throws InsufficientAddressCapacityException,
+    NetworkRuleConflictException {
         //this part of code is executed when the LB provider is Elastic Load Balancer vm
         if (!_networkModel.isProviderSupportServiceInNetwork(lb.getNetworkId(), Service.Lb, Provider.ElasticLoadBalancerVm)) {
             return null;
         }
 
-        Long ipId = lb.getSourceIpAddressId();
+        final Long ipId = lb.getSourceIpAddressId();
         if (ipId != null) {
             return null;
         }
@@ -190,19 +189,19 @@ public class LoadBalanceRuleHandler {
         }
     }
 
-    private DomainRouterVO deployLoadBalancerVM(Long networkId, IPAddressVO ipAddr) {
-        NetworkVO network = _networkDao.findById(networkId);
-        DataCenter dc = _dcDao.findById(network.getDataCenterId());
-        Long podId = getPodIdForDirectIp(ipAddr);
-        Pod pod = podId == null ? null : _podDao.findById(podId);
-        Map<VirtualMachineProfile.Param, Object> params = new HashMap<VirtualMachineProfile.Param, Object>(1);
+    private DomainRouterVO deployLoadBalancerVM(final Long networkId, final IPAddressVO ipAddr) {
+        final NetworkVO network = _networkDao.findById(networkId);
+        final DataCenter dc = _dcDao.findById(network.getDataCenterId());
+        final Long podId = getPodIdForDirectIp(ipAddr);
+        final Pod pod = podId == null ? null : _podDao.findById(podId);
+        final Map<VirtualMachineProfile.Param, Object> params = new HashMap<VirtualMachineProfile.Param, Object>(1);
         params.put(VirtualMachineProfile.Param.ReProgramGuestNetworks, true);
-        Account owner = _accountService.getActiveAccountByName("system", new Long(1));
-        DeployDestination dest = new DeployDestination(dc, pod, null, null);
+        final Account owner = _accountService.getActiveAccountByName("system", new Long(1));
+        final DeployDestination dest = new DeployDestination(dc, pod, null, null);
         s_logger.debug("About to deploy ELB vm ");
 
         try {
-            DomainRouterVO elbVm = deployELBVm(network, dest, owner, params);
+            final DomainRouterVO elbVm = deployELBVm(network, dest, owner, params);
             if (elbVm == null) {
                 throw new InvalidParameterValueException("Could not deploy or find existing ELB VM");
             }
@@ -210,19 +209,19 @@ public class LoadBalanceRuleHandler {
 
             return elbVm;
 
-        } catch (Throwable t) {
+        } catch (final Throwable t) {
             s_logger.warn("Error while deploying ELB VM:  ", t);
             return null;
         }
 
     }
 
-    private DomainRouterVO deployELBVm(Network guestNetwork, DeployDestination dest, Account owner, Map<Param, Object> params) throws ConcurrentOperationException,
-            InsufficientCapacityException {
-        long dcId = dest.getDataCenter().getId();
+    private DomainRouterVO deployELBVm(Network guestNetwork, final DeployDestination dest, Account owner, final Map<Param, Object> params) throws ConcurrentOperationException,
+    InsufficientCapacityException {
+        final long dcId = dest.getDataCenter().getId();
 
         // lock guest network
-        Long guestNetworkId = guestNetwork.getId();
+        final Long guestNetworkId = guestNetwork.getId();
         guestNetwork = _networkDao.acquireInLockTable(guestNetworkId);
 
         if (guestNetwork == null) {
@@ -247,30 +246,30 @@ public class LoadBalanceRuleHandler {
             plan = new DataCenterDeployment(dcId, dest.getPod().getId(), null, null, null, null);
 
             if (elbVm == null) {
-                long id = _routerDao.getNextInSequence(Long.class, "id");
+                final long id = _routerDao.getNextInSequence(Long.class, "id");
                 if (s_logger.isDebugEnabled()) {
                     s_logger.debug("Creating the ELB vm " + id);
                 }
 
-                List<? extends NetworkOffering> offerings = _networkModel.getSystemAccountNetworkOfferings(NetworkOffering.SystemControlNetwork);
-                NetworkOffering controlOffering = offerings.get(0);
-                Network controlConfig = _networkMgr.setupNetwork(_systemAcct, controlOffering, plan, null, null, false).get(0);
+                final List<? extends NetworkOffering> offerings = _networkModel.getSystemAccountNetworkOfferings(NetworkOffering.SystemControlNetwork);
+                final NetworkOffering controlOffering = offerings.get(0);
+                final Network controlConfig = _networkMgr.setupNetwork(_systemAcct, controlOffering, plan, null, null, false).get(0);
 
-                LinkedHashMap<Network, List<? extends NicProfile>> networks = new LinkedHashMap<Network, List<? extends NicProfile>>(2);
-                NicProfile guestNic = new NicProfile();
+                final LinkedHashMap<Network, List<? extends NicProfile>> networks = new LinkedHashMap<Network, List<? extends NicProfile>>(2);
+                final NicProfile guestNic = new NicProfile();
                 guestNic.setDefaultNic(true);
                 networks.put(controlConfig, new ArrayList<NicProfile>());
                 networks.put(guestNetwork, new ArrayList<NicProfile>(Arrays.asList(guestNic)));
 
-                VMTemplateVO template = _templateDao.findSystemVMTemplate(dcId);
+                final VMTemplateVO template = _templateDao.findSystemVMTemplate(dcId);
 
-                String typeString = "ElasticLoadBalancerVm";
-                Long physicalNetworkId = _networkModel.getPhysicalNetworkId(guestNetwork);
-                PhysicalNetworkServiceProvider provider = _physicalProviderDao.findByServiceProvider(physicalNetworkId, typeString);
+                final String typeString = "ElasticLoadBalancerVm";
+                final Long physicalNetworkId = _networkModel.getPhysicalNetworkId(guestNetwork);
+                final PhysicalNetworkServiceProvider provider = _physicalProviderDao.findByServiceProvider(physicalNetworkId, typeString);
                 if (provider == null) {
                     throw new CloudRuntimeException("Cannot find service provider " + typeString + " in physical network " + physicalNetworkId);
                 }
-                VirtualRouterProvider vrProvider = _vrProviderDao.findByNspIdAndType(provider.getId(), Type.ElasticLoadBalancerVm);
+                final VirtualRouterProvider vrProvider = _vrProviderDao.findByNspIdAndType(provider.getId(), Type.ElasticLoadBalancerVm);
                 if (vrProvider == null) {
                     throw new CloudRuntimeException("Cannot find virtual router provider " + typeString + " as service provider " + provider.getId());
                 }
@@ -281,8 +280,8 @@ public class LoadBalanceRuleHandler {
                 }
 
                 elbVm = new DomainRouterVO(id, _elasticLbVmOffering.getId(), vrProvider.getId(), VirtualMachineName.getSystemVmName(id, _instance, ELB_VM_NAME_PREFIX),
-                        template.getId(), template.getHypervisorType(), template.getGuestOSId(), owner.getDomainId(), owner.getId(), userId, false, 0, false, RedundantState.UNKNOWN,
-                        _elasticLbVmOffering.getOfferHA(), false, VirtualMachine.Type.ElasticLoadBalancerVm, null);
+                        template.getId(), template.getHypervisorType(), template.getGuestOSId(), owner.getDomainId(), owner.getId(), userId, false, RedundantState.UNKNOWN,
+                        _elasticLbVmOffering.getOfferHA(), false, null);
                 elbVm.setRole(Role.LB);
                 elbVm = _routerDao.persist(elbVm);
                 _itMgr.allocate(elbVm.getInstanceName(), template, _elasticLbVmOffering, networks, plan, null);
@@ -290,9 +289,9 @@ public class LoadBalanceRuleHandler {
                 //TODO: create usage stats
             }
 
-            State state = elbVm.getState();
+            final State state = elbVm.getState();
             if (state != State.Running) {
-                elbVm = this.start(elbVm, params);
+                elbVm = start(elbVm, params);
             }
 
             return elbVm;
@@ -301,17 +300,17 @@ public class LoadBalanceRuleHandler {
         }
     }
 
-    private void releaseIp(long ipId, long userId, Account caller) {
+    private void releaseIp(final long ipId, final long userId, final Account caller) {
         s_logger.info("ELB: Release public IP for loadbalancing " + ipId);
-        IPAddressVO ipvo = _ipAddressDao.findById(ipId);
+        final IPAddressVO ipvo = _ipAddressDao.findById(ipId);
         ipvo.setAssociatedWithNetworkId(null);
         _ipAddressDao.update(ipvo.getId(), ipvo);
         _ipAddrMgr.disassociatePublicIpAddress(ipId, userId, caller);
         _ipAddressDao.unassignIpAddress(ipId);
     }
 
-    protected Long getPodIdForDirectIp(IPAddressVO ipAddr) {
-        PodVlanMapVO podVlanMaps = _podVlanMapDao.listPodVlanMapsByVlan(ipAddr.getVlanId());
+    protected Long getPodIdForDirectIp(final IPAddressVO ipAddr) {
+        final PodVlanMapVO podVlanMaps = _podVlanMapDao.listPodVlanMapsByVlan(ipAddr.getVlanId());
         if (podVlanMaps == null) {
             return null;
         } else {
@@ -319,8 +318,8 @@ public class LoadBalanceRuleHandler {
         }
     }
 
-    private LoadBalancer handleCreateLoadBalancerRuleWithLock(CreateLoadBalancerRuleCmd lb, Account account, long networkId) throws InsufficientAddressCapacityException,
-            NetworkRuleConflictException {
+    private LoadBalancer handleCreateLoadBalancerRuleWithLock(final CreateLoadBalancerRuleCmd lb, final Account account, final long networkId) throws InsufficientAddressCapacityException,
+    NetworkRuleConflictException {
         Long ipId = null;
         boolean newIp = false;
         List<LoadBalancerVO> existingLbs = findExistingLoadBalancers(lb.getName(), lb.getSourceIpAddressId(), lb.getAccountId(), lb.getDomainId(), lb.getSourcePortStart());
@@ -331,7 +330,7 @@ public class LoadBalanceRuleHandler {
                     throwExceptionIfSuppliedlLbNameIsNotAssociatedWithIpAddress(lb);
                 } else {
                     s_logger.debug("Could not find any existing frontend ips for this account for this LB rule, acquiring a new frontent IP for ELB");
-                    PublicIp ip = allocDirectIp(account, networkId);
+                    final PublicIp ip = allocDirectIp(account, networkId);
                     ipId = ip.getId();
                     newIp = true;
                 }
@@ -344,7 +343,7 @@ public class LoadBalanceRuleHandler {
             throw new NetworkRuleConflictException("ELB: Found existing load balancers matching requested new LB");
         }
 
-        IPAddressVO ipAddr = _ipAddressDao.findById(ipId);
+        final IPAddressVO ipAddr = _ipAddressDao.findById(ipId);
 
         LoadBalancer result = null;
         try {
@@ -352,7 +351,7 @@ public class LoadBalanceRuleHandler {
 
             result = _lbMgr.createPublicLoadBalancer(lb.getXid(), lb.getName(), lb.getDescription(), lb.getSourcePortStart(), lb.getDefaultPortStart(), ipId.longValue(),
                     lb.getProtocol(), lb.getAlgorithm(), false, CallContext.current(), lb.getLbProtocol(), true);
-        } catch (NetworkRuleConflictException e) {
+        } catch (final NetworkRuleConflictException e) {
             s_logger.warn("Failed to create LB rule, not continuing with ELB deployment");
             if (newIp) {
                 releaseIp(ipId, CallContext.current().getCallingUserId(), account);
@@ -367,15 +366,16 @@ public class LoadBalanceRuleHandler {
             if (elbVm == null) {
                 elbVm = deployLoadBalancerVM(networkId, ipAddr);
                 if (elbVm == null) {
-                    Network network = _networkModel.getNetwork(networkId);
+                    final Network network = _networkModel.getNetwork(networkId);
                     s_logger.warn("Failed to deploy a new ELB vm for ip " + ipAddr + " in network " + network + "lb name=" + lb.getName());
-                    if (newIp)
+                    if (newIp) {
                         releaseIp(ipId, CallContext.current().getCallingUserId(), account);
+                    }
                 }
             }
 
         } else {
-            ElasticLbVmMapVO elbVmMap = _elbVmMapDao.findOneByIp(ipId);
+            final ElasticLbVmMapVO elbVmMap = _elbVmMapDao.findOneByIp(ipId);
             if (elbVmMap != null) {
                 elbVm = _routerDao.findById(elbVmMap.getElbVmId());
             }
@@ -388,20 +388,20 @@ public class LoadBalanceRuleHandler {
             return null;
         }
 
-        ElasticLbVmMapVO mapping = new ElasticLbVmMapVO(ipId, elbVm.getId(), result.getId());
+        final ElasticLbVmMapVO mapping = new ElasticLbVmMapVO(ipId, elbVm.getId(), result.getId());
         _elbVmMapDao.persist(mapping);
         return result;
     }
 
-    private void throwExceptionIfSuppliedlLbNameIsNotAssociatedWithIpAddress(CreateLoadBalancerRuleCmd lb) {
-        List<LoadBalancerVO> existingLbs = findExistingLoadBalancers(lb.getName(), null, lb.getAccountId(), lb.getDomainId(), null);
+    private void throwExceptionIfSuppliedlLbNameIsNotAssociatedWithIpAddress(final CreateLoadBalancerRuleCmd lb) {
+        final List<LoadBalancerVO> existingLbs = findExistingLoadBalancers(lb.getName(), null, lb.getAccountId(), lb.getDomainId(), null);
         if (existingLbs != null) {
             throw new InvalidParameterValueException("Supplied LB name " + lb.getName() + " is not associated with IP " + lb.getSourceIpAddressId());
         }
     }
 
-    protected List<LoadBalancerVO> findExistingLoadBalancers(String lbName, Long ipId, Long accountId, Long domainId, Integer publicPort) {
-        SearchBuilder<LoadBalancerVO> sb = _lbDao.createSearchBuilder();
+    protected List<LoadBalancerVO> findExistingLoadBalancers(final String lbName, final Long ipId, final Long accountId, final Long domainId, final Integer publicPort) {
+        final SearchBuilder<LoadBalancerVO> sb = _lbDao.createSearchBuilder();
         sb.and("name", sb.entity().getName(), SearchCriteria.Op.EQ);
         sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.EQ);
         sb.and("publicPort", sb.entity().getSourcePortStart(), SearchCriteria.Op.EQ);
@@ -414,7 +414,7 @@ public class LoadBalanceRuleHandler {
         if (publicPort != null) {
             sb.and("publicPort", sb.entity().getSourcePortStart(), SearchCriteria.Op.EQ);
         }
-        SearchCriteria<LoadBalancerVO> sc = sb.create();
+        final SearchCriteria<LoadBalancerVO> sc = sb.create();
         sc.setParameters("name", lbName);
         sc.setParameters("accountId", accountId);
         if (ipId != null) {
@@ -426,7 +426,7 @@ public class LoadBalanceRuleHandler {
         if (publicPort != null) {
             sc.setParameters("publicPort", publicPort);
         }
-        List<LoadBalancerVO> lbs = _lbDao.search(sc, null);
+        final List<LoadBalancerVO> lbs = _lbDao.search(sc, null);
 
         return lbs == null || lbs.size() == 0 ? null : lbs;
     }
@@ -435,11 +435,11 @@ public class LoadBalanceRuleHandler {
     private PublicIp allocDirectIp(final Account account, final long guestNetworkId) throws InsufficientAddressCapacityException {
         return Transaction.execute(new TransactionCallbackWithException<PublicIp, InsufficientAddressCapacityException>() {
             @Override
-            public PublicIp doInTransaction(TransactionStatus status) throws InsufficientAddressCapacityException {
-                Network frontEndNetwork = _networkModel.getNetwork(guestNetworkId);
+            public PublicIp doInTransaction(final TransactionStatus status) throws InsufficientAddressCapacityException {
+                final Network frontEndNetwork = _networkModel.getNetwork(guestNetworkId);
 
-                PublicIp ip = _ipAddrMgr.assignPublicIpAddress(frontEndNetwork.getDataCenterId(), null, account, VlanType.DirectAttached, frontEndNetwork.getId(), null, true);
-                IPAddressVO ipvo = _ipAddressDao.findById(ip.getId());
+                final PublicIp ip = _ipAddrMgr.assignPublicIpAddress(frontEndNetwork.getDataCenterId(), null, account, VlanType.DirectAttached, frontEndNetwork.getId(), null, true);
+                final IPAddressVO ipvo = _ipAddressDao.findById(ip.getId());
                 ipvo.setAssociatedWithNetworkId(frontEndNetwork.getId());
                 _ipAddressDao.update(ipvo.getId(), ipvo);
                 s_logger.info("Acquired frontend IP for ELB " + ip);
@@ -449,11 +449,11 @@ public class LoadBalanceRuleHandler {
         });
     }
 
-    protected DomainRouterVO findElbVmWithCapacity(IPAddressVO ipAddr) {
-        List<DomainRouterVO> unusedElbVms = _elbVmMapDao.listUnusedElbVms();
+    protected DomainRouterVO findElbVmWithCapacity(final IPAddressVO ipAddr) {
+        final List<DomainRouterVO> unusedElbVms = _elbVmMapDao.listUnusedElbVms();
         if (unusedElbVms.size() > 0) {
-            List<DomainRouterVO> candidateVms = new ArrayList<DomainRouterVO>();
-            for (DomainRouterVO candidateVm : unusedElbVms) {
+            final List<DomainRouterVO> candidateVms = new ArrayList<DomainRouterVO>();
+            for (final DomainRouterVO candidateVm : unusedElbVms) {
                 addCandidateVmIsPodIpMatches(candidateVm, getPodIdForDirectIp(ipAddr), candidateVms);
             }
             return candidateVms.size() == 0 ? null : candidateVms.get(new Random().nextInt(candidateVms.size()));
@@ -461,13 +461,13 @@ public class LoadBalanceRuleHandler {
         return null;
     }
 
-    protected static void addCandidateVmIsPodIpMatches(DomainRouterVO candidateVm, Long podIdForDirectIp, List<DomainRouterVO> candidateVms) {
+    protected static void addCandidateVmIsPodIpMatches(final DomainRouterVO candidateVm, final Long podIdForDirectIp, final List<DomainRouterVO> candidateVms) {
         if (candidateVm.getPodIdToDeployIn().equals(podIdForDirectIp)) {
             candidateVms.add(candidateVm);
         }
     }
 
-    protected DomainRouterVO start(DomainRouterVO elbVm, Map<Param, Object> params) throws ConcurrentOperationException {
+    protected DomainRouterVO start(final DomainRouterVO elbVm, final Map<Param, Object> params) throws ConcurrentOperationException {
         s_logger.debug("Starting ELB VM " + elbVm);
         _itMgr.start(elbVm.getUuid(), params);
         return _routerDao.findById(elbVm.getId());