@Override public AffinityGroup getAffinityGroup(Long groupId) { return _affinityGroupDao.findById(groupId); }
private AffinityGroupVO getAffinityGroupByName(String account, Long projectId, Long domainId, String affinityGroupName) { AffinityGroupVO group = null; if(account == null && domainId != null){ group = _affinityGroupDao.findDomainLevelGroupByName(domainId, affinityGroupName); }else{ Long accountId = _accountMgr.finalyzeAccountId(account, domainId, projectId, true); if(accountId == null){ Account caller = CallContext.current().getCallingAccount(); group = _affinityGroupDao.findByAccountAndName(caller.getAccountId(), affinityGroupName); }else{ group = _affinityGroupDao.findByAccountAndName(accountId, affinityGroupName); } } return group; }
private AffinityGroup findOrCreateDedicatedAffinityGroup(Long domainId, Long accountId) { if (domainId == null) { return null; } AffinityGroup group = null; String accountName = null; String affinityGroupName = null; if (accountId != null) { AccountVO account = _accountDao.findById(accountId); accountName = account.getAccountName(); group = _affinityGroupDao.findByAccountAndType(accountId, "ExplicitDedication"); if (group != null) { return group; } // default to a groupname with account/domain information affinityGroupName = "DedicatedGrp-" + accountName; } else { // domain level group group = _affinityGroupDao.findDomainLevelGroupByType(domainId, "ExplicitDedication"); if (group != null) { return group; } // default to a groupname with account/domain information String domainName = _domainDao.findById(domainId).getName(); affinityGroupName = "DedicatedGrp-domain-" + domainName; } group = _affinityGroupService.createAffinityGroup(accountName, null, domainId, affinityGroupName, "ExplicitDedication", "dedicated resources group"); return group; }
SearchCriteria<AffinityGroupVO> criteria = _affinityGroupDao.createSearchCriteria(); criteria.addAnd("id", SearchCriteria.Op.IN, groupIds.toArray(new Object[groupIds.size()])); _affinityGroupDao.lockRows(criteria, null, true);
@Override public void doInTransactionWithoutResult(TransactionStatus status) { AffinityGroupVO group = _affinityGroupDao.lockRow(affinityGroupId, true); if (group == null) { throw new InvalidParameterValueException("Unable to find affinity group by id " + affinityGroupId); } List<AffinityGroupVMMapVO> affinityGroupVmMap = _affinityGroupVMMapDao.listByAffinityGroup(affinityGroupId); if (!affinityGroupVmMap.isEmpty()) { SearchBuilder<AffinityGroupVMMapVO> listByAffinityGroup = _affinityGroupVMMapDao.createSearchBuilder(); listByAffinityGroup.and("affinityGroupId", listByAffinityGroup.entity().getAffinityGroupId(), SearchCriteria.Op.EQ); listByAffinityGroup.done(); SearchCriteria<AffinityGroupVMMapVO> sc = listByAffinityGroup.create(); sc.setParameters("affinityGroupId", affinityGroupId); _affinityGroupVMMapDao.lockRows(sc, null, true); _affinityGroupVMMapDao.remove(sc); } // call processor to handle the group delete AffinityGroupProcessor processor = getAffinityGroupProcessorForType(group.getType()); if (processor != null) { processor.handleDeleteGroup(group); } if(_affinityGroupDao.expunge(affinityGroupId)){ AffinityGroupDomainMapVO groupDomain = _affinityGroupDomainMapDao .findByAffinityGroup(affinityGroupId); if (groupDomain != null) { _affinityGroupDomainMapDao.remove(groupDomain.getId()); } } } });
public static AffinityGroup getAffinityGroup(String groupName, long accountId) { return s_affinityGroupDao.findByAccountAndName(accountId, groupName); }
private void verifyDomainLevelAffinityGroupName(boolean domainLevel, long domainId, String affinityGroupName) { if (domainLevel && _affinityGroupDao.findDomainLevelGroupByName(domainId, affinityGroupName) != null) { throw new InvalidParameterValueException("Unable to create affinity group, a group with name " + affinityGroupName + " already exists under the domain."); } }
ListByVmIdGroupId.done(); SearchBuilder<AffinityGroupVO> groupSearch = _affinityGroupDao.createSearchBuilder(); groupSearch.and("type", groupSearch.entity().getType(), SearchCriteria.Op.EQ);
private AffinityGroupVO getAffinityGroup(Long affinityGroupId, String account, Long projectId, Long domainId, String affinityGroupName) { AffinityGroupVO group = null; if (affinityGroupId != null) { group = _affinityGroupDao.findById(affinityGroupId); } else if (affinityGroupName != null) { group = getAffinityGroupByName(account, projectId, domainId, affinityGroupName); } else { throw new InvalidParameterValueException("Either the affinity group Id or group name must be specified to delete the group"); } if (group == null) { throw new InvalidParameterValueException("Unable to find affinity group " + (affinityGroupId == null ? affinityGroupName : affinityGroupId)); } return group; }
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 : ""); } AffinityGroup group = null; String accountName = null; if (accountId != null) { final AccountVO account = _accountDao.findById(accountId); accountName = account.getAccountName(); group = _affinityGroupDao.findByAccountAndName(accountId, affinityGroupName); if (group != null) { return group; } } else { // domain level group group = _affinityGroupDao.findDomainLevelGroupByName(domainId, affinityGroupName); if (group != null) { return group; } } group = _affinityGroupService.createAffinityGroup(accountName, null, domainId, affinityGroupName, "ExplicitDedication", "dedicated resources group"); return group; }
/** * Process Affinity Group for VM deployment */ protected void processAffinityGroup(AffinityGroupVMMapVO vmGroupMapping, DeploymentPlan plan, VirtualMachine vm) { AffinityGroupVO group = _affinityGroupDao.findById(vmGroupMapping.getAffinityGroupId()); s_logger.debug("Processing affinity group " + group.getName() + " for VM Id: " + vm.getId()); List<Long> groupVMIds = _affinityGroupVMMapDao.listVmIdsByAffinityGroup(group.getId()); groupVMIds.remove(vm.getId()); List<Long> preferredHosts = getPreferredHostsFromGroupVMIds(groupVMIds); plan.setPreferredHosts(preferredHosts); }
AffinityGroupVO group = _affinityGroupDao.findById(vmGroupMapping.getAffinityGroupId());
AffinityGroupVO ag = _affinityGroupDao.findById(affinityGroupId); if (ag == null) { throw new InvalidParameterValueException("Unable to find affinity group by id " + affinityGroupId);
@Override public DedicateClusterResponse createDedicateClusterResponse(DedicatedResources resource) { DedicateClusterResponse dedicateClusterResponse = new DedicateClusterResponse(); ClusterVO cluster = _clusterDao.findById(resource.getClusterId()); DomainVO domain = _domainDao.findById(resource.getDomainId()); AccountVO account = _accountDao.findById(resource.getAccountId()); AffinityGroup group = _affinityGroupDao.findById(resource.getAffinityGroupId()); dedicateClusterResponse.setId(resource.getUuid()); dedicateClusterResponse.setClusterId(cluster.getUuid()); dedicateClusterResponse.setClusterName(cluster.getName()); dedicateClusterResponse.setDomainId(domain.getUuid()); dedicateClusterResponse.setAffinityGroupId(group.getUuid()); if (account != null) { dedicateClusterResponse.setAccountId(account.getUuid()); } dedicateClusterResponse.setObjectName("dedicatedcluster"); return dedicateClusterResponse; }
@Override public DedicateZoneResponse createDedicateZoneResponse(DedicatedResources resource) { DedicateZoneResponse dedicateZoneResponse = new DedicateZoneResponse(); DataCenterVO dc = _zoneDao.findById(resource.getDataCenterId()); DomainVO domain = _domainDao.findById(resource.getDomainId()); AccountVO account = _accountDao.findById(resource.getAccountId()); AffinityGroup group = _affinityGroupDao.findById(resource.getAffinityGroupId()); dedicateZoneResponse.setId(resource.getUuid()); dedicateZoneResponse.setZoneId(dc.getUuid()); dedicateZoneResponse.setZoneName(dc.getName()); dedicateZoneResponse.setDomainId(domain.getUuid()); dedicateZoneResponse.setAffinityGroupId(group.getUuid()); if (account != null) { dedicateZoneResponse.setAccountId(account.getUuid()); } dedicateZoneResponse.setObjectName("dedicatedzone"); return dedicateZoneResponse; }
@Override public DedicatePodResponse createDedicatePodResponse(DedicatedResources resource) { DedicatePodResponse dedicatePodResponse = new DedicatePodResponse(); HostPodVO pod = _podDao.findById(resource.getPodId()); DomainVO domain = _domainDao.findById(resource.getDomainId()); AccountVO account = _accountDao.findById(resource.getAccountId()); AffinityGroup group = _affinityGroupDao.findById(resource.getAffinityGroupId()); dedicatePodResponse.setId(resource.getUuid()); dedicatePodResponse.setPodId(pod.getUuid()); dedicatePodResponse.setPodName(pod.getName()); dedicatePodResponse.setDomainId(domain.getUuid()); dedicatePodResponse.setAffinityGroupId(group.getUuid()); if (account != null) { dedicatePodResponse.setAccountId(account.getUuid()); } dedicatePodResponse.setObjectName("dedicatedpod"); return dedicatePodResponse; }
@Override public DedicateHostResponse createDedicateHostResponse(DedicatedResources resource) { DedicateHostResponse dedicateHostResponse = new DedicateHostResponse(); HostVO host = _hostDao.findById(resource.getHostId()); DomainVO domain = _domainDao.findById(resource.getDomainId()); AccountVO account = _accountDao.findById(resource.getAccountId()); AffinityGroup group = _affinityGroupDao.findById(resource.getAffinityGroupId()); dedicateHostResponse.setId(resource.getUuid()); dedicateHostResponse.setHostId(host.getUuid()); dedicateHostResponse.setHostName(host.getName()); dedicateHostResponse.setDomainId(domain.getUuid()); dedicateHostResponse.setAffinityGroupId(group.getUuid()); if (account != null) { dedicateHostResponse.setAccountId(account.getUuid()); } dedicateHostResponse.setObjectName("dedicatedhost"); return dedicateHostResponse; }
AffinityGroupVO ag = _affinityGroupDao.findById(affinityGroupId); if (ag == null) { throw new InvalidParameterValueException("Unable to find affinity group " + ag);