You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by an...@apache.org on 2014/01/31 01:13:30 UTC

git commit: updated refs/heads/4.3 to 210b19c

Updated Branches:
  refs/heads/4.3 2f2adad50 -> 210b19c1f


Reverting this change as it caused issues with userVmResponse.  "Findbugs: different issues solved"

This reverts commit dcda79e2c02fda4e0fe52f61bf61712742e1f0db.


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/210b19c1
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/210b19c1
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/210b19c1

Branch: refs/heads/4.3
Commit: 210b19c1f5132025dab0becd759125fe4fb24a6f
Parents: 2f2adad
Author: Animesh Chaturvedi <an...@apache.org>
Authored: Thu Jan 30 15:33:31 2014 -0800
Committer: Animesh Chaturvedi <an...@apache.org>
Committed: Thu Jan 30 15:33:31 2014 -0800

----------------------------------------------------------------------
 .../com/cloud/api/query/vo/UserVmJoinVO.java    | 23 +++----
 .../com/cloud/consoleproxy/AgentHookBase.java   | 27 ++++-----
 .../consoleproxy/ConsoleProxyManagerImpl.java   |  6 +-
 .../src/com/cloud/dc/DedicatedResourceVO.java   | 25 ++------
 .../com/cloud/network/IpAddressManagerImpl.java | 64 +++++++++-----------
 .../src/com/cloud/network/NetworkModelImpl.java | 11 ++--
 .../cloud/network/guru/ControlNetworkGuru.java  |  8 +--
 .../com/cloud/network/vpc/VpcManagerImpl.java   |  4 +-
 .../com/cloud/template/TemplateManagerImpl.java |  4 +-
 9 files changed, 75 insertions(+), 97 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
index 2bb0783..25079ca 100644
--- a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
+++ b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java
@@ -35,7 +35,6 @@ import com.cloud.server.ResourceTag.ResourceObjectType;
 import com.cloud.storage.Storage.StoragePoolType;
 import com.cloud.storage.Volume;
 import com.cloud.utils.db.GenericDao;
-import com.cloud.utils.exception.CloudRuntimeException;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.VirtualMachine.State;
 
@@ -48,10 +47,10 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     private long id;
 
     @Column(name="name", updatable=false, nullable=false, length=255)
-    private final String name = null;
+    private String name = null;
 
     @Column(name="display_name", updatable=false, nullable=false, length=255)
-    private final String displayName = null;
+    private String displayName = null;
 
     @Column(name="account_id")
     private long accountId;
@@ -60,7 +59,7 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     private String accountUuid;
 
     @Column(name="account_name")
-    private final String accountName = null;
+    private String accountName = null;
 
     @Column(name="account_type")
     private short accountType;
@@ -72,10 +71,10 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     private String domainUuid;
 
     @Column(name="domain_name")
-    private final String domainName = null;
+    private String domainName = null;
 
     @Column(name="domain_path")
-    private final String domainPath = null;
+    private String domainPath = null;
 
     @Column(name="instance_group_id")
     private long instanceGroupId;
@@ -97,7 +96,7 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
      */
     @Enumerated(value=EnumType.STRING)
     @Column(name="state", updatable=true, nullable=false, length=32)
-    private final State state = null;
+    private State state = null;
 
     @Column(name=GenericDao.CREATED_COLUMN)
     private Date created;
@@ -150,7 +149,7 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     private String dataCenterUuid;
 
     @Column(name="data_center_name")
-    private final String dataCenterName = null;
+    private String dataCenterName = null;
 
     @Column(name="security_group_enabled")
     private boolean securityGroupEnabled;
@@ -226,7 +225,7 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     private String volume_uuid;
 
     @Column(name = "volume_device_id")
-    private final Long volumeDeviceId = null;
+    private Long volumeDeviceId = null;
 
     @Column(name = "volume_type")
     @Enumerated(EnumType.STRING)
@@ -727,11 +726,9 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity {
     }
 
     public String getDetail(String name) {
-        if (details == null) {
-            throw new CloudRuntimeException("No details to get. Did you forget to load the details?");
-        }
+        assert (details != null) : "Did you forget to load the details?";
 
-        return details.get(name);
+        return details != null ? details.get(name) : null;
     }
 
     public String getUserData() {

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/consoleproxy/AgentHookBase.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/AgentHookBase.java b/server/src/com/cloud/consoleproxy/AgentHookBase.java
index 660d1f2..aa9e4f8 100644
--- a/server/src/com/cloud/consoleproxy/AgentHookBase.java
+++ b/server/src/com/cloud/consoleproxy/AgentHookBase.java
@@ -22,11 +22,6 @@ import java.util.Random;
 
 import org.apache.log4j.Logger;
 
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-
-import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
-
 import com.cloud.agent.AgentManager;
 import com.cloud.agent.api.AgentControlAnswer;
 import com.cloud.agent.api.Answer;
@@ -49,10 +44,14 @@ import com.cloud.server.ManagementServer;
 import com.cloud.servlet.ConsoleProxyPasswordBasedEncryptor;
 import com.cloud.servlet.ConsoleProxyServlet;
 import com.cloud.utils.Ternary;
-import com.cloud.utils.exception.CloudRuntimeException;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.dao.VMInstanceDao;
 
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+
+import org.apache.cloudstack.framework.config.dao.ConfigurationDao;
+
 /**
  * Utility class to manage interactions with agent-based console access
  * Extracted from ConsoleProxyManagerImpl so that other console proxy managers
@@ -73,12 +72,12 @@ public abstract class AgentHookBase implements AgentHook {
 
     public AgentHookBase(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, KeystoreManager ksMgr,
             AgentManager agentMgr, ManagementServer ms) {
-        _instanceDao = instanceDao;
-        _hostDao = hostDao;
-        _agentMgr = agentMgr;
-        _configDao = cfgDao;
-        _ksMgr = ksMgr;
-        _ms = ms;
+        this._instanceDao = instanceDao;
+        this._hostDao = hostDao;
+        this._agentMgr = agentMgr;
+        this._configDao = cfgDao;
+        this._ksMgr = ksMgr;
+        this._ms = ms;
     }
 
     @Override
@@ -205,9 +204,7 @@ public abstract class AgentHookBase implements AgentHook {
 
         assert (ksBits != null);
         if (ksBits == null) {
-            String msg = "Could not find and construct a valid SSL certificate";
-            s_logger.error(msg);
-            throw new CloudRuntimeException(msg);
+            s_logger.error("Could not find and construct a valid SSL certificate");
         }
         cmd = new StartConsoleProxyAgentHttpHandlerCommand(ksBits, storePassword);
         cmd.setEncryptorPassword(getEncryptorPassword());

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
index 05adc5f..8a31d73 100755
--- a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
+++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
@@ -970,7 +970,11 @@ VirtualMachineGuru, SystemVmLoadScanHandler<Long>, ResourceStateAdapter {
                 }
             } else {
                 if (s_logger.isDebugEnabled()) {
-                    s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage.");
+                    if (template == null) {
+                        s_logger.debug("Zone host is ready, but console proxy template is null");
+                    } else {
+                        s_logger.debug("Zone host is ready, but console proxy template: " + template.getId() + " is not ready on secondary storage.");
+                    }
                 }
             }
         }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/dc/DedicatedResourceVO.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/dc/DedicatedResourceVO.java b/server/src/com/cloud/dc/DedicatedResourceVO.java
index 1f66ecf..9caa6b0 100644
--- a/server/src/com/cloud/dc/DedicatedResourceVO.java
+++ b/server/src/com/cloud/dc/DedicatedResourceVO.java
@@ -20,6 +20,7 @@ import java.util.UUID;
 
 import javax.persistence.Column;
 import javax.persistence.Entity;
+
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
@@ -30,11 +31,6 @@ import javax.persistence.Table;
 @Table(name="dedicated_resources")
 public class DedicatedResourceVO implements DedicatedResources{
 
-    /**
-     * 
-     */
-    private static final long serialVersionUID = -6659510127145101917L;
-
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     @Column(name="id")
@@ -65,7 +61,7 @@ public class DedicatedResourceVO implements DedicatedResources{
     private long affinityGroupId;
 
     public DedicatedResourceVO() {
-        uuid = UUID.randomUUID().toString();
+        this.uuid = UUID.randomUUID().toString();
     }
 
     public DedicatedResourceVO(Long dataCenterId, Long podId, Long clusterId, Long hostId, Long domainId,
@@ -76,16 +72,14 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.hostId = hostId;
         this.domainId = domainId;
         this.accountId = accountId;
-        uuid = UUID.randomUUID().toString();
+        this.uuid = UUID.randomUUID().toString();
         this.affinityGroupId = affinityGroupId;
     }
 
-    @Override
     public long getId() {
         return id;
     }
 
-    @Override
     public Long getDataCenterId() {
         return dataCenterId;
     }
@@ -94,7 +88,6 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.dataCenterId = dataCenterId;
     }
 
-    @Override
     public Long getPodId() {
         return podId;
     }
@@ -103,7 +96,6 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.podId = podId;
     }
 
-    @Override
     public Long getClusterId() {
         return clusterId;
     }
@@ -112,7 +104,6 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.clusterId = clusterId;
     }
 
-    @Override
     public Long getHostId() {
         return hostId;
     }
@@ -122,10 +113,9 @@ public class DedicatedResourceVO implements DedicatedResources{
     }
 
     public DedicatedResourceVO(long dedicatedResourceId) {
-        id = dedicatedResourceId;
+        this.id = dedicatedResourceId;
     }
 
-    @Override
     public Long getDomainId() {
         return domainId;
     }
@@ -134,7 +124,6 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.domainId = domainId;
     }
 
-    @Override
     public Long getAccountId() {
         return accountId;
     }
@@ -143,16 +132,14 @@ public class DedicatedResourceVO implements DedicatedResources{
         this.accountId = accountId;
     }
 
-    @Override
     public String getUuid() {
-        return uuid;
+        return this.uuid;
     }
 
     public void setUuid(String uuid) {
         this.uuid = uuid;
     }
 
-    @Override
     public long getAffinityGroupId() {
         return affinityGroupId;
     }
@@ -160,7 +147,7 @@ public class DedicatedResourceVO implements DedicatedResources{
     @Override
     public boolean equals(Object obj) {
         if (obj instanceof DedicatedResourceVO) {
-            return ((DedicatedResourceVO) obj).getId() == getId();
+            return ((DedicatedResourceVO) obj).getId() == this.getId();
         } else {
             return false;
         }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/network/IpAddressManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/IpAddressManagerImpl.java b/server/src/com/cloud/network/IpAddressManagerImpl.java
index 1ccd0d6..f4bff58 100644
--- a/server/src/com/cloud/network/IpAddressManagerImpl.java
+++ b/server/src/com/cloud/network/IpAddressManagerImpl.java
@@ -17,7 +17,6 @@
 package com.cloud.network;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -30,7 +29,6 @@ import java.util.UUID;
 import javax.inject.Inject;
 
 import org.apache.log4j.Logger;
-
 import org.apache.cloudstack.acl.ControlledEntity.ACLType;
 import org.apache.cloudstack.acl.SecurityChecker.AccessType;
 import org.apache.cloudstack.context.CallContext;
@@ -140,14 +138,14 @@ import com.cloud.utils.db.DB;
 import com.cloud.utils.db.EntityManager;
 import com.cloud.utils.db.Filter;
 import com.cloud.utils.db.GlobalLock;
+import com.cloud.utils.db.TransactionCallback;
+import com.cloud.utils.db.TransactionCallbackNoReturn;
+import com.cloud.utils.db.TransactionCallbackWithException;
 import com.cloud.utils.db.JoinBuilder.JoinType;
 import com.cloud.utils.db.SearchBuilder;
 import com.cloud.utils.db.SearchCriteria;
 import com.cloud.utils.db.SearchCriteria.Op;
 import com.cloud.utils.db.Transaction;
-import com.cloud.utils.db.TransactionCallback;
-import com.cloud.utils.db.TransactionCallbackNoReturn;
-import com.cloud.utils.db.TransactionCallbackWithException;
 import com.cloud.utils.db.TransactionCallbackWithExceptionNoReturn;
 import com.cloud.utils.db.TransactionStatus;
 import com.cloud.utils.exception.CloudRuntimeException;
@@ -580,9 +578,8 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
 
         IPAddressVO ip = markIpAsUnavailable(addrId);
 
+        assert (ip != null) : "Unable to mark the ip address id=" + addrId + " as unavailable.";
         if (ip == null) {
-            String msg = "Unable to mark the ip address id=" + addrId + " as unavailable.";
-            s_logger.error(msg);
             return true;
         }
 
@@ -695,10 +692,10 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
                 if (dedicatedVlanDbIds != null && !dedicatedVlanDbIds.isEmpty()) {
                     fetchFromDedicatedRange = true;
                     sc.setParameters("vlanId", dedicatedVlanDbIds.toArray());
-                    errorMessage.append(", vlanId id=" + Arrays.toString(dedicatedVlanDbIds.toArray()));
+                    errorMessage.append(", vlanId id=" + dedicatedVlanDbIds.toArray());
                 } else if (nonDedicatedVlanDbIds != null && !nonDedicatedVlanDbIds.isEmpty()) {
                     sc.setParameters("vlanId", nonDedicatedVlanDbIds.toArray());
-                    errorMessage.append(", vlanId id=" + Arrays.toString(nonDedicatedVlanDbIds.toArray()));
+                    errorMessage.append(", vlanId id=" + nonDedicatedVlanDbIds.toArray());
                 } else {
                     if (podId != null) {
                         InsufficientAddressCapacityException ex = new InsufficientAddressCapacityException("Insufficient address capacity", Pod.class, podId);
@@ -738,7 +735,7 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
                     if (useSystemIps && nonDedicatedVlanDbIds != null && !nonDedicatedVlanDbIds.isEmpty()) {
                         fetchFromDedicatedRange = false;
                         sc.setParameters("vlanId", nonDedicatedVlanDbIds.toArray());
-                        errorMessage.append(", vlanId id=" + Arrays.toString(nonDedicatedVlanDbIds.toArray()));
+                        errorMessage.append(", vlanId id=" + nonDedicatedVlanDbIds.toArray());
                         addrs = _ipAddressDao.lockRows(sc, filter, true);
                     }
                 }
@@ -871,11 +868,6 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
     public PublicIp assignDedicateIpAddress(Account owner, final Long guestNtwkId, final Long vpcId, final long dcId, final boolean isSourceNat) throws ConcurrentOperationException,
         InsufficientAddressCapacityException {
 
-        if (owner == null) {
-            s_logger.error("No account to assign an ip to.");
-            return null;
-        }
-
         final long ownerId = owner.getId();
 
         PublicIp ip = null;
@@ -907,11 +899,13 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
 
             return ip;
         } finally {
-            if (s_logger.isDebugEnabled()) {
-                s_logger.debug("Releasing lock account " + ownerId);
-            }
-            _accountDao.releaseFromLockTable(ownerId);
+            if (owner != null) {
+                if (s_logger.isDebugEnabled()) {
+                    s_logger.debug("Releasing lock account " + ownerId);
+                }
 
+                _accountDao.releaseFromLockTable(ownerId);
+            }
             if (ip == null) {
                 s_logger.error("Unable to get source nat ip address for account " + ownerId);
             }
@@ -1259,7 +1253,7 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
 
         s_logger.debug("Associating ip " + ipToAssoc + " to network " + network);
 
-        IPAddressVO ip = ipToAssoc; //_ipAddressDao.findById(ipId);
+        IPAddressVO ip = _ipAddressDao.findById(ipId);
         //update ip address with networkId
         ip.setAssociatedWithNetworkId(networkId);
         ip.setSourceNat(isSourceNat);
@@ -1276,16 +1270,18 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
             return ip;
         } finally {
             if (!success && releaseOnFailure) {
-                try {
-                    s_logger.warn("Failed to associate ip address, so releasing ip from the database " + ip);
-                    _ipAddressDao.markAsUnavailable(ip.getId());
-                    if (!applyIpAssociations(network, true)) {
-                        // if fail to apply ip assciations again, unassign ip address without updating resource
-                        // count and generating usage event as there is no need to keep it in the db
-                        _ipAddressDao.unassignIpAddress(ip.getId());
+                if (ip != null) {
+                    try {
+                        s_logger.warn("Failed to associate ip address, so releasing ip from the database " + ip);
+                        _ipAddressDao.markAsUnavailable(ip.getId());
+                        if (!applyIpAssociations(network, true)) {
+                            // if fail to apply ip assciations again, unassign ip address without updating resource
+                            // count and generating usage event as there is no need to keep it in the db
+                            _ipAddressDao.unassignIpAddress(ip.getId());
+                        }
+                    } catch (Exception e) {
+                        s_logger.warn("Unable to disassociate ip address for recovery", e);
                     }
-                } catch (Exception e) {
-                    s_logger.warn("Unable to disassociate ip address for recovery", e);
                 }
             }
         }
@@ -1366,7 +1362,7 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
         PublicIp publicIp = PublicIp.createFromAddrAndVlan(ipToAssoc, _vlanDao.findById(ipToAssoc.getVlanId()));
         ipList.add(publicIp);
         Map<PublicIpAddress, Set<Service>> ipToServices = _networkModel.getIpToServices(ipList, false, true);
-        if (ipToServices != null && !ipToServices.isEmpty()) {
+        if (ipToServices != null & !ipToServices.isEmpty()) {
             Set<Service> services = ipToServices.get(publicIp);
             if (services != null && !services.isEmpty()) {
                 throw new InvalidParameterValueException("IP " + ipToAssoc + " has services and rules associated in the network " + networkId);
@@ -1407,7 +1403,7 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
         PublicIp publicIp = PublicIp.createFromAddrAndVlan(ip, _vlanDao.findById(ip.getVlanId()));
         ipList.add(publicIp);
         Map<PublicIpAddress, Set<Service>> ipToServices = _networkModel.getIpToServices(ipList, false, true);
-        if (ipToServices != null && !ipToServices.isEmpty()) {
+        if (ipToServices != null & !ipToServices.isEmpty()) {
             Set<Service> ipServices = ipToServices.get(publicIp);
             if (ipServices != null && !ipServices.isEmpty()) {
                 return false;
@@ -1736,14 +1732,14 @@ public class IpAddressManagerImpl extends ManagerBase implements IpAddressManage
 
     @Override
     public boolean applyStaticNats(List<? extends StaticNat> staticNats, boolean continueOnError, boolean forRevoke) throws ResourceUnavailableException {
+        Network network = _networksDao.findById(staticNats.get(0).getNetworkId());
+        boolean success = true;
+
         if (staticNats == null || staticNats.size() == 0) {
             s_logger.debug("There are no static nat rules for the network elements");
             return true;
         }
 
-        Network network = _networksDao.findById(staticNats.get(0).getNetworkId());
-        boolean success = true;
-
         // get the list of public ip's owned by the network
         List<IPAddressVO> userIps = _ipAddressDao.listByAssociatedNetwork(network.getId(), null);
         List<PublicIp> publicIps = new ArrayList<PublicIp>();

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/network/NetworkModelImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkModelImpl.java b/server/src/com/cloud/network/NetworkModelImpl.java
index 7281beb..27b2006 100755
--- a/server/src/com/cloud/network/NetworkModelImpl.java
+++ b/server/src/com/cloud/network/NetworkModelImpl.java
@@ -1024,14 +1024,14 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel {
         List<NetworkOfferingServiceMapVO> map = _ntwkOfferingSrvcDao.listByNetworkOfferingId(networkOfferingId);
     
         for (NetworkOfferingServiceMapVO instance : map) {
-            Service service = Network.Service.getService(instance.getService());
+            String service = instance.getService();
             Set<Provider> providers;
             providers = serviceProviderMap.get(service);
             if (providers == null) {
                 providers = new HashSet<Provider>();
             }
             providers.add(Provider.getProvider(instance.getProvider()));
-            serviceProviderMap.put(service, providers);
+            serviceProviderMap.put(Service.getService(service), providers);
         }
     
         return serviceProviderMap;
@@ -1526,15 +1526,12 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel {
 
     @Override
     public void checkNetworkPermissions(Account owner, Network network) {
-        if (network == null) {
-            throw new CloudRuntimeException("no network to check permissions for.");
-        }
         // Perform account permission check
         if (network.getGuestType() != Network.GuestType.Shared
                 || (network.getGuestType() == Network.GuestType.Shared && network.getAclType() == ACLType.Account)) {
             AccountVO networkOwner = _accountDao.findById(network.getAccountId());
             if(networkOwner == null)
-                throw new PermissionDeniedException("Unable to use network with id= " + ((NetworkVO)network).getUuid() + ", network does not have an owner");
+                throw new PermissionDeniedException("Unable to use network with id= " + ((network != null)? ((NetworkVO)network).getUuid() : "") + ", network does not have an owner");
             if(owner.getType() != Account.ACCOUNT_TYPE_PROJECT && networkOwner.getType() == Account.ACCOUNT_TYPE_PROJECT){
                 if(!_projectAccountDao.canAccessProjectAccount(owner.getAccountId(), network.getAccountId())){
                     throw new PermissionDeniedException("Unable to use network with id= " + ((network != null)? ((NetworkVO)network).getUuid() : "") + ", permission denied");
@@ -1548,7 +1545,7 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel {
 
         } else {
             if (!isNetworkAvailableInDomain(network.getId(), owner.getDomainId())) {
-                throw new PermissionDeniedException("Shared network id=" + ((NetworkVO)network).getUuid() + " is not available in domain id=" + owner.getDomainId());
+                throw new PermissionDeniedException("Shared network id=" + ((network != null)? ((NetworkVO)network).getUuid() : "") + " is not available in domain id=" + owner.getDomainId());
             }
         }
     }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/network/guru/ControlNetworkGuru.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/guru/ControlNetworkGuru.java b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
index a8274d3..26caa61 100755
--- a/server/src/com/cloud/network/guru/ControlNetworkGuru.java
+++ b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
@@ -134,7 +134,7 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
         assert nic.getTrafficType() == TrafficType.Control;
 
         // we have to get management/private ip for the control nic for vmware/hyperv due ssh issues.
-         HypervisorType hType = dest.getHost().getHypervisorType();
+         HypervisorType hType = dest.getHost().getHypervisorType(); 
         if ( ( (hType == HypervisorType.VMware) || (hType == HypervisorType.Hyperv) )&& isRouterVm(vm)) {
             if(dest.getDataCenter().getNetworkType() != NetworkType.Basic) {
                 super.reserve(nic, config, vm, dest, context);
@@ -168,7 +168,7 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
     @Override
     public boolean release(NicProfile nic, VirtualMachineProfile vm, String reservationId) {
         assert nic.getTrafficType() == TrafficType.Control;
-        HypervisorType hType = vm.getHypervisorType();
+        HypervisorType hType = vm.getHypervisorType(); 
         if ( ( (hType == HypervisorType.VMware) || (hType == HypervisorType.Hyperv) )&& isRouterVm(vm)) {
             long dcId = vm.getVirtualMachine().getDataCenterId();
             DataCenterVO dcVo = _dcDao.findById(dcId);
@@ -218,12 +218,12 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
 
         Map<String, String> dbParams = _configDao.getConfiguration(params);
 
-        _cidr = dbParams.get(Config.ControlCidr.toString());
+        _cidr = dbParams.get(Config.ControlCidr);
         if (_cidr == null) {
             _cidr = "169.254.0.0/16";
         }
 
-        _gateway = dbParams.get(Config.ControlGateway.toString());
+        _gateway = dbParams.get(Config.ControlGateway);
         if (_gateway == null) {
             _gateway = NetUtils.getLinkLocalGateway();
         }

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/network/vpc/VpcManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
index 3ae194f..b9dd729 100644
--- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java
+++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java
@@ -432,14 +432,14 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis
         List<VpcOfferingServiceMapVO> map = _vpcOffSvcMapDao.listByVpcOffId(vpcOffId);
 
         for (VpcOfferingServiceMapVO instance : map) {
-            Service service = Service.getService(instance.getService());
+            String service = instance.getService();
             Set<Provider> providers;
             providers = serviceProviderMap.get(service);
             if (providers == null) {
                 providers = new HashSet<Provider>();
             }
             providers.add(Provider.getProvider(instance.getProvider()));
-            serviceProviderMap.put(service, providers);
+            serviceProviderMap.put(Service.getService(service), providers);
         }
 
         return serviceProviderMap;

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/210b19c1/server/src/com/cloud/template/TemplateManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/template/TemplateManagerImpl.java b/server/src/com/cloud/template/TemplateManagerImpl.java
index 33ba667..681be4a 100755
--- a/server/src/com/cloud/template/TemplateManagerImpl.java
+++ b/server/src/com/cloud/template/TemplateManagerImpl.java
@@ -425,7 +425,7 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
         if (isISO) {
             desc = Upload.Type.ISO.toString();
         }
-        eventId = (eventId == null ? 0 : eventId);
+        eventId = eventId == null ? 0 : eventId;
 
         if (!_accountMgr.isRootAdmin(caller.getType()) && _disableExtraction) {
             throw new PermissionDeniedException("Extraction has been disabled by admin");
@@ -1801,7 +1801,7 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager,
         }
 
         // Don't allow to modify system template
-        if (Long.valueOf(1).equals(id)) {
+        if (id == Long.valueOf(1)) {
             InvalidParameterValueException ex = new InvalidParameterValueException("Unable to update template/iso of specified id");
             ex.addProxyObject(String.valueOf(id), "templateId");
             throw ex;