Added isEmpty() check to prevent nullPointerException.

This commit is contained in:
Boris Schrijver 2015-09-23 15:01:03 +02:00
parent a0f8f56a5d
commit 80cb3adad0
5 changed files with 24 additions and 5 deletions

View File

@ -79,6 +79,7 @@ import com.cloud.storage.VMTemplateVO;
import com.cloud.storage.dao.VMTemplateDao; import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.user.Account; import com.cloud.user.Account;
import com.cloud.user.AccountService; import com.cloud.user.AccountService;
import com.cloud.user.UserVO;
import com.cloud.user.dao.AccountDao; import com.cloud.user.dao.AccountDao;
import com.cloud.user.dao.UserDao; import com.cloud.user.dao.UserDao;
import com.cloud.utils.db.DB; import com.cloud.utils.db.DB;
@ -279,7 +280,10 @@ public class LoadBalanceRuleHandler {
long userId = CallContext.current().getCallingUserId(); long userId = CallContext.current().getCallingUserId();
if (CallContext.current().getCallingAccount().getId() != owner.getId()) { if (CallContext.current().getCallingAccount().getId() != owner.getId()) {
userId = _userDao.listByAccount(owner.getAccountId()).get(0).getId(); List<UserVO> userVOs = _userDao.listByAccount(owner.getAccountId());
if (!userVOs.isEmpty()) {
userId = userVOs.get(0).getId();
}
} }
ServiceOfferingVO elasticLbVmOffering = _serviceOfferingDao.findDefaultSystemOffering(ServiceOffering.elbVmDefaultOffUniqueName, ConfigurationManagerImpl.SystemVMUseLocalStorage.valueIn(dest.getDataCenter().getId())); ServiceOfferingVO elasticLbVmOffering = _serviceOfferingDao.findDefaultSystemOffering(ServiceOffering.elbVmDefaultOffUniqueName, ConfigurationManagerImpl.SystemVMUseLocalStorage.valueIn(dest.getDataCenter().getId()));

View File

@ -97,6 +97,7 @@ import com.cloud.storage.dao.VMTemplateDao;
import com.cloud.user.Account; import com.cloud.user.Account;
import com.cloud.user.AccountManager; import com.cloud.user.AccountManager;
import com.cloud.user.User; import com.cloud.user.User;
import com.cloud.user.UserVO;
import com.cloud.user.dao.UserDao; import com.cloud.user.dao.UserDao;
import com.cloud.utils.Pair; import com.cloud.utils.Pair;
import com.cloud.utils.component.ManagerBase; import com.cloud.utils.component.ManagerBase;
@ -772,7 +773,10 @@ public class InternalLoadBalancerVMManagerImpl extends ManagerBase implements In
long userId = CallContext.current().getCallingUserId(); long userId = CallContext.current().getCallingUserId();
if (CallContext.current().getCallingAccount().getId() != owner.getId()) { if (CallContext.current().getCallingAccount().getId() != owner.getId()) {
userId = _userDao.listByAccount(owner.getAccountId()).get(0).getId(); List<UserVO> userVOs = _userDao.listByAccount(owner.getAccountId());
if (!userVOs.isEmpty()) {
userId = userVOs.get(0).getId();
}
} }
internalLbVm = internalLbVm =

View File

@ -53,6 +53,7 @@ import com.cloud.projects.Project;
import com.cloud.template.VirtualMachineTemplate; import com.cloud.template.VirtualMachineTemplate;
import com.cloud.user.Account; import com.cloud.user.Account;
import com.cloud.user.AccountService; import com.cloud.user.AccountService;
import com.cloud.user.UserVO;
import com.cloud.user.dao.UserDao; import com.cloud.user.dao.UserDao;
import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.vm.NicProfile; import com.cloud.vm.NicProfile;
@ -112,7 +113,10 @@ public class ServiceManagerImpl implements ServiceManager {
long userId = CallContext.current().getCallingUserId(); long userId = CallContext.current().getCallingUserId();
if (CallContext.current().getCallingAccount().getId() != owner.getId()) { if (CallContext.current().getCallingAccount().getId() != owner.getId()) {
userId = _userDao.listByAccount(owner.getAccountId()).get(0).getId(); List<UserVO> userVOs = _userDao.listByAccount(owner.getAccountId());
if (!userVOs.isEmpty()) {
userId = userVOs.get(0).getId();
}
} }
ServiceVirtualMachine svm = ServiceVirtualMachine svm =

View File

@ -84,6 +84,7 @@ import com.cloud.storage.dao.VolumeDao;
import com.cloud.user.Account; import com.cloud.user.Account;
import com.cloud.user.AccountManager; import com.cloud.user.AccountManager;
import com.cloud.user.User; import com.cloud.user.User;
import com.cloud.user.UserVO;
import com.cloud.user.dao.UserDao; import com.cloud.user.dao.UserDao;
import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.exception.CloudRuntimeException;
import com.cloud.utils.net.NetUtils; import com.cloud.utils.net.NetUtils;
@ -486,7 +487,10 @@ public class NetworkHelperImpl implements NetworkHelper {
long userId = CallContext.current().getCallingUserId(); long userId = CallContext.current().getCallingUserId();
if (CallContext.current().getCallingAccount().getId() != owner.getId()) { if (CallContext.current().getCallingAccount().getId() != owner.getId()) {
userId = _userDao.listByAccount(owner.getAccountId()).get(0).getId(); List<UserVO> userVOs = _userDao.listByAccount(owner.getAccountId());
if (!userVOs.isEmpty()) {
userId = userVOs.get(0).getId();
}
} }
router = new DomainRouterVO(id, routerOffering.getId(), routerDeploymentDefinition.getVirtualProvider().getId(), VirtualMachineName.getRouterName(id, router = new DomainRouterVO(id, routerOffering.getId(), routerDeploymentDefinition.getVirtualProvider().getId(), VirtualMachineName.getRouterName(id,

View File

@ -3220,7 +3220,10 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
long userId = CallContext.current().getCallingUserId(); long userId = CallContext.current().getCallingUserId();
if (CallContext.current().getCallingAccount().getId() != owner.getId()) { if (CallContext.current().getCallingAccount().getId() != owner.getId()) {
userId = _userDao.listByAccount(owner.getAccountId()).get(0).getId(); List<UserVO> userVOs = _userDao.listByAccount(owner.getAccountId());
if (!userVOs.isEmpty()) {
userId = userVOs.get(0).getId();
}
} }
UserVmVO vm = commitUserVm(zone, template, hostName, displayName, owner, diskOfferingId, diskSize, userData, caller, isDisplayVm, keyboard, accountId, userId, offering, UserVmVO vm = commitUserVm(zone, template, hostName, displayName, owner, diskOfferingId, diskSize, userData, caller, isDisplayVm, keyboard, accountId, userId, offering,