@Transactional(readOnly = true) private void checkImageSizeQuota(long requiredImageSize, String currentAccountUuid, String resourceTargetOwnerAccountUuid, Map<String, Quota.QuotaPair> pairs) { long imageSizeQuota = pairs.get(ImageQuotaConstant.IMAGE_SIZE).getValue(); long imageSizeUsed = new ImageQuotaUtil().getUsedImageSize(resourceTargetOwnerAccountUuid); QuotaUtil.QuotaCompareInfo quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = ImageQuotaConstant.IMAGE_SIZE; quotaCompareInfo.quotaValue = imageSizeQuota; quotaCompareInfo.currentUsed = imageSizeUsed; quotaCompareInfo.request = requiredImageSize; new QuotaUtil().CheckQuota(quotaCompareInfo); }
private void checkVolumeSnapshotNumQuota(String currentAccountUuid, String resourceTargetOwnerAccountUuid, long volumeSnapshotNumAsked, Map<String, Quota.QuotaPair> pairs) { long volumeSnapshotNumQuota = pairs.get(VolumeSnapshotQuotaConstant.VOLUME_SNAPSHOT_NUM).getValue(); long volumeSnapshotNumUsed = getUsedVolumeSnapshotNum(resourceTargetOwnerAccountUuid); { QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VolumeSnapshotQuotaConstant.VOLUME_SNAPSHOT_NUM; quotaCompareInfo.quotaValue = volumeSnapshotNumQuota; quotaCompareInfo.currentUsed = volumeSnapshotNumUsed; quotaCompareInfo.request = volumeSnapshotNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); } } };
@Transactional(readOnly = true) private void checkImageNumQuota(String currentAccountUuid, String resourceTargetOwnerAccountUuid, Map<String, Quota.QuotaPair> pairs) { long imageNumQuota = pairs.get(ImageQuotaConstant.IMAGE_NUM).getValue(); long imageNumUsed = new ImageQuotaUtil().getUsedImageNum(resourceTargetOwnerAccountUuid); long imageNumAsked = 1; QuotaUtil.QuotaCompareInfo quotaCompareInfo; { quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = ImageQuotaConstant.IMAGE_NUM; quotaCompareInfo.quotaValue = imageNumQuota; quotaCompareInfo.currentUsed = imageNumUsed; quotaCompareInfo.request = imageNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); } } };
@Transactional(readOnly = true) public void checkVmCupAndMemoryCapacity(String currentAccountUuid, String resourceTargetOwnerAccountUuid, long cpu, long memory, Map<String, Quota.QuotaPair> pairs) { VmQuotaUtil.VmQuota vmQuotaUsed = new VmQuotaUtil().getUsedVmCpuMemory(resourceTargetOwnerAccountUuid); long cpuNumQuota = pairs.get(VmQuotaConstant.VM_RUNNING_CPU_NUM).getValue(); long memoryQuota = pairs.get(VmQuotaConstant.VM_RUNNING_MEMORY_SIZE).getValue(); { QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.VM_RUNNING_CPU_NUM; quotaCompareInfo.quotaValue = cpuNumQuota; quotaCompareInfo.currentUsed = vmQuotaUsed.runningVmCpuNum; quotaCompareInfo.request = cpu; new QuotaUtil().CheckQuota(quotaCompareInfo); } { QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.VM_RUNNING_MEMORY_SIZE; quotaCompareInfo.quotaValue = memoryQuota; quotaCompareInfo.currentUsed = vmQuotaUsed.runningVmMemorySize; quotaCompareInfo.request = memory; new QuotaUtil().CheckQuota(quotaCompareInfo); } }
quotaCompareInfo.currentUsed = dataVolumeNumUsed; quotaCompareInfo.request = dataVolumeNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); quotaCompareInfo.currentUsed = allVolumeSizeUsed; quotaCompareInfo.request = allVolumeSizeAsked; new QuotaUtil().CheckQuota(quotaCompareInfo);
@Transactional(readOnly = true) private void check(APICreateEipMsg msg, Map<String, QuotaPair> pairs) { String currentAccountUuid = msg.getSession().getAccountUuid(); String resourceTargetOwnerAccountUuid = msg.getSession().getAccountUuid(); long eipNumQuota = pairs.get(EipQuotaConstant.EIP_NUM).getValue(); long usedEipNum = getUsedEipNum(msg.getSession().getAccountUuid()); long askedEipNum = 1; QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = EipQuotaConstant.EIP_NUM; quotaCompareInfo.quotaValue = eipNumQuota; quotaCompareInfo.currentUsed = usedEipNum; quotaCompareInfo.request = askedEipNum; new QuotaUtil().CheckQuota(quotaCompareInfo); }
quotaCompareInfo.currentUsed = dataVolumeNumUsed; quotaCompareInfo.request = dataVolumeNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); quotaCompareInfo.currentUsed = allVolumeSizeUsed; quotaCompareInfo.request = allVolumeSizeAsked; new QuotaUtil().CheckQuota(quotaCompareInfo);
@Transactional(readOnly = true) public void checkVmInstanceQuota(String currentAccountUuid, String resourceTargetOwnerAccountUuid, String vmInstanceUuid, Map<String, Quota.QuotaPair> pairs) { long vmNumQuota = pairs.get(VmQuotaConstant.VM_RUNNING_NUM).getValue(); VmQuotaUtil.VmQuota vmQuotaUsed = new VmQuotaUtil().getUsedVmCpuMemory(resourceTargetOwnerAccountUuid); // { QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.VM_RUNNING_NUM; quotaCompareInfo.quotaValue = vmNumQuota; quotaCompareInfo.currentUsed = vmQuotaUsed.runningVmNum; quotaCompareInfo.request = 1; new QuotaUtil().CheckQuota(quotaCompareInfo); } // checkTotalVMQuota(currentAccountUuid, resourceTargetOwnerAccountUuid, vmInstanceUuid, pairs.get(VmQuotaConstant.VM_TOTAL_NUM).getValue(), vmQuotaUsed.totalVmNum); // VmInstanceVO vm = dbf.getEntityManager().find(VmInstanceVO.class, vmInstanceUuid); checkVmCupAndMemoryCapacity(currentAccountUuid, resourceTargetOwnerAccountUuid, vm.getCpuNum(), vm.getMemorySize(), pairs); }
quotaCompareInfo.currentUsed = imageNumUsed; quotaCompareInfo.request = imageNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); quotaCompareInfo.currentUsed = imageSizeUsed; quotaCompareInfo.request = imageSizeAsked; new QuotaUtil().CheckQuota(quotaCompareInfo);
private void check(APIRecoverVmInstanceMsg msg, Map<String, Quota.QuotaPair> pairs) { String currentAccountUuid = msg.getSession().getAccountUuid(); String resourceTargetOwnerAccountUuid = msg.getSession().getAccountUuid(); long totalVmNumQuota = pairs.get(VmQuotaConstant.VM_TOTAL_NUM).getValue(); VmQuotaUtil.VmQuota vmQuotaUsed = new VmQuotaUtil().getUsedVmCpuMemory(currentAccountUuid); long totalVmNumAsked = 1; QuotaUtil.QuotaCompareInfo quotaCompareInfo; { quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.VM_TOTAL_NUM; quotaCompareInfo.quotaValue = totalVmNumQuota; quotaCompareInfo.currentUsed = vmQuotaUsed.totalVmNum; quotaCompareInfo.request = totalVmNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); } } }
private void checkTotalVMQuota(String currentAccountUuid, String resourceTargetOwnerAccountUuid, String vmInstanceUuid, long totalVmNumQuota, long totalVmNum) { if (Q.New(VmInstanceVO.class) .eq(VmInstanceVO_.uuid, vmInstanceUuid) .notNull(VmInstanceVO_.lastHostUuid) .isExists()) { // Dirty hack - VM with last host UUID means existing VM. return; } QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.VM_TOTAL_NUM; quotaCompareInfo.quotaValue = totalVmNumQuota; quotaCompareInfo.currentUsed = totalVmNum; quotaCompareInfo.request = 1; new QuotaUtil().CheckQuota(quotaCompareInfo); }
@Transactional(readOnly = true) private void check(APIChangeResourceOwnerMsg msg, Map<String, Quota.QuotaPair> pairs) { String currentAccountUuid = msg.getSession().getAccountUuid(); String resourceTargetOwnerAccountUuid = msg.getAccountUuid(); if (new QuotaUtil().isAdminAccount(resourceTargetOwnerAccountUuid)) { return; } SimpleQuery<AccountResourceRefVO> q = dbf.createQuery(AccountResourceRefVO.class); q.add(AccountResourceRefVO_.resourceUuid, Op.EQ, msg.getResourceUuid()); AccountResourceRefVO accResRefVO = q.find(); if (accResRefVO.getResourceType().equals(VmInstanceVO.class.getSimpleName())) { long eipNumQuota = pairs.get(EipQuotaConstant.EIP_NUM).getValue(); long usedEipNum = getUsedEipNum(resourceTargetOwnerAccountUuid); long askedEipNum = getVmEipNum(msg.getResourceUuid()); QuotaUtil.QuotaCompareInfo quotaCompareInfo; quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = EipQuotaConstant.EIP_NUM; quotaCompareInfo.quotaValue = eipNumQuota; quotaCompareInfo.currentUsed = usedEipNum; quotaCompareInfo.request = askedEipNum; new QuotaUtil().CheckQuota(quotaCompareInfo); } } };
quotaCompareInfo.currentUsed = imageNumUsed; quotaCompareInfo.request = imageNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); quotaCompareInfo.currentUsed = imageSizeUsed; quotaCompareInfo.request = imageSizeAsked; new QuotaUtil().CheckQuota(quotaCompareInfo);
private void check(APIRecoverDataVolumeMsg msg, Map<String, Quota.QuotaPair> pairs) { String currentAccountUuid = msg.getSession().getAccountUuid(); String resourceTargetOwnerAccountUuid = new QuotaUtil().getResourceOwnerAccountUuid(msg.getVolumeUuid()); // check data volume num long dataVolumeNumQuota = pairs.get(VmQuotaConstant.DATA_VOLUME_NUM).getValue(); long dataVolumeNumUsed = new VmQuotaUtil().getUsedDataVolumeCount(resourceTargetOwnerAccountUuid); long dataVolumeNumAsked = 1; QuotaUtil.QuotaCompareInfo quotaCompareInfo; { quotaCompareInfo = new QuotaUtil.QuotaCompareInfo(); quotaCompareInfo.currentAccountUuid = currentAccountUuid; quotaCompareInfo.resourceTargetOwnerAccountUuid = resourceTargetOwnerAccountUuid; quotaCompareInfo.quotaName = VmQuotaConstant.DATA_VOLUME_NUM; quotaCompareInfo.quotaValue = dataVolumeNumQuota; quotaCompareInfo.currentUsed = dataVolumeNumUsed; quotaCompareInfo.request = dataVolumeNumAsked; new QuotaUtil().CheckQuota(quotaCompareInfo); } }
quotaCompareInfo.currentUsed = allVolumeSizeUsed; quotaCompareInfo.request = allVolumeSizeAsked; new QuotaUtil().CheckQuota(quotaCompareInfo);