@Override public boolean isTemplateMarkedForDirectDownload(long templateId) { VMTemplateVO templateVO = imageDataDao.findById(templateId); return templateVO.isDirectDownload(); }
/** * Create the XenServer tools ISO entry in the database. * If there is already an entry with 'isoName' equals to {@value #xenServerIsoName} , we update its 'displayText' to {@value #xenServerIsoDisplayText}. * Otherwise, we create a new entry. */ protected void createXenServerToolsIsoEntryInDatabase() { VMTemplateVO tmplt = _tmpltDao.findByTemplateName(xenServerIsoName); if (tmplt == null) { long id = _tmpltDao.getNextInSequence(Long.class, "id"); VMTemplateVO template = VMTemplateVO.createPreHostIso(id, xenServerIsoName, xenServerIsoName, ImageFormat.ISO, true, true, TemplateType.PERHOST, null, null, true, 64, Account.ACCOUNT_ID_SYSTEM, null, xenServerIsoDisplayText, false, 1, false, HypervisorType.XenServer); _tmpltDao.persist(template); } else { long id = tmplt.getId(); tmplt.setTemplateType(TemplateType.PERHOST); tmplt.setUrl(null); tmplt.setDisplayText(xenServerIsoDisplayText); _tmpltDao.update(id, tmplt); } }
@Override public void associateCrosszoneTemplatesToZone(long dcId) { VMTemplateZoneVO tmpltZone; List<VMTemplateVO> allTemplates = _templateDao.listAll(); for (VMTemplateVO vt : allTemplates) { if (vt.isCrossZones()) { tmpltZone = _vmTemplateZoneDao.findByZoneTemplate(dcId, vt.getId()); if (tmpltZone == null) { VMTemplateZoneVO vmTemplateZone = new VMTemplateZoneVO(dcId, vt.getId(), new Date()); _vmTemplateZoneDao.persist(vmTemplateZone); } } } }
dataDiskTemplates = tmpltStore.getDataDiskTemplates(parentTemplate); int diskCount = 0; VMTemplateVO templateVO = _templateDao.findById(parentTemplate.getId()); _templateDao.loadDetails(templateVO); DataStore imageStore = parentTemplate.getDataStore(); Map<String, String> details = parentTemplate.getDetails(); _templateDao.saveDetails(templateVO); return true; } catch (CloudRuntimeException | InterruptedException | ExecutionException e) {
List<VMTemplateVO> systemvmTmplts = _tmpltDao.listAllSystemVMTemplates(); for (VMTemplateVO template : systemvmTmplts) { if (template.getName().equalsIgnoreCase(name) || template.getDisplayText().equalsIgnoreCase(displayText)) { Long id = _tmpltDao.getNextInSequence(Long.class, "id"); CallContext.current().setEventDetails("Id: " + id + " name: " + name); return new TemplateProfile(id, userId, name, displayText, bits, passwordEnabled, requiresHVM, url, isPublic, featured, isExtractable, imgfmt, guestOSId, zoneIdList,
String mediaType = ""; VMTemplateVO template = _tmpltDao.findById(id); VMTemplateVO updatedTemplate = _tmpltDao.createForUpdate(); _tmpltDao.update(template.getId(), updatedTemplate); updatedTemplate = _tmpltDao.createForUpdate(); updatedTemplate.setPublicTemplate(false); updatedTemplate.setFeatured(false); _tmpltDao.update(template.getId(), updatedTemplate); _launchPermissionDao.removeAllPermissions(id); _messageBus.publish(_name, TemplateManager.MESSAGE_RESET_TEMPLATE_PERMISSION_EVENT, PublishScope.LOCAL, template.getId());
if (zoneId == null) { allTemplates = _templateDao.listByState(VirtualMachineTemplate.State.Active, VirtualMachineTemplate.State.NotUploaded, VirtualMachineTemplate.State.UploadInProgress); } else { allTemplates = _templateDao.listInZoneByState(zoneId, VirtualMachineTemplate.State.Active, VirtualMachineTemplate.State.NotUploaded, VirtualMachineTemplate.State.UploadInProgress); List<VMTemplateVO> rtngTmplts = _templateDao.listAllSystemVMTemplates(); List<VMTemplateVO> defaultBuiltin = _templateDao.listDefaultBuiltinTemplates(); tmpltStore.setLastUpdated(new Date()); VMTemplateVO tmlpt = _templateDao.findById(tmplt.getId()); tmlpt.setSize(tmpltInfo.getSize()); _templateDao.update(tmplt.getId(), tmlpt); VMTemplateVO tmlpt = _templateDao.findById(tmplt.getId()); tmlpt.setSize(tmpltInfo.getSize()); _templateDao.update(tmplt.getId(), tmlpt); associateTemplateToZone(tmplt.getId(), zoneId);
VMTemplateVO template = _tmpltDao.findById(id); if (template == null || template.getRemoved() != null) { InvalidParameterValueException ex = new InvalidParameterValueException("unable to find template/iso with specified id"); template = _tmpltDao.createForUpdate(id); _tmpltDao.saveDetails(template); _tmpltDao.update(id, template); return _tmpltDao.findById(id);
Long nextTemplateId = _tmpltDao.getNextInSequence(Long.class, "id"); String description = cmd.getDisplayText(); boolean isExtractable = false; VMTemplateVO template = _tmpltDao.persist(privateTemplate); VMTemplateVO sourceTemplate = _tmpltDao.findById(sourceTemplateId); if (sourceTemplate != null && sourceTemplate.getDetails() != null) { details.putAll(sourceTemplate.getDetails()); _tmpltDao.saveDetails(privateTemplate);
throw new PermissionDeniedException("The owner of vm to deploy is disabled: " + owner); VMTemplateVO template = _templateDao.findById(tmplt.getId()); if (template != null) { _templateDao.loadDetails(template); } else { Long templateSize = _templateDao.findById(template.getId()).getSize(); if (templateSize != null) { size = templateSize; VMTemplateVO dataDiskTemplate = _templateDao.findById(datadiskTemplateToDiskOffering.getKey()); DiskOffering dataDiskOffering = datadiskTemplateToDiskOffering.getValue(); dataDiskTemplateId + ". Disk offering size should be greater than or equal to the template size"); _templateDao.loadDetails(dataDiskTemplate); _resourceLimitMgr.checkResourceLimit(owner, ResourceType.volume, 1); _resourceLimitMgr.checkResourceLimit(owner, ResourceType.primary_storage, dataDiskOffering.getDiskSize());
protected VMTemplateVO persistTemplate(TemplateProfile profile, VirtualMachineTemplate.State initialState) { List<Long> zoneIdList = profile.getZoneIdList(); VMTemplateVO template = new VMTemplateVO(profile.getTemplateId(), profile.getName(), profile.getFormat(), profile.isPublic(), profile.isFeatured(), profile.isExtractable(), profile.getTemplateType(), profile.getUrl(), profile.isRequiresHVM(), profile.getBits(), profile.getAccountId(), profile.getCheckSum(), profile.getDisplayText(), profile.isPasswordEnabled(), profile.getGuestOsId(), profile.isBootable(), profile.getHypervisorType(), profile.getTemplateTag(), profile.getDetails(), profile.isSshKeyEnabled(), profile.IsDynamicallyScalable(), profile.isDirectDownload()); template.setState(initialState); if (profile.isDirectDownload()) { template.setSize(profile.getSize()); } if (zoneIdList == null) { List<DataCenterVO> dcs = _dcDao.listAll(); if (dcs.isEmpty()) { throw new CloudRuntimeException("No zones are present in the system, can't add template"); } template.setCrossZones(true); for (DataCenterVO dc : dcs) { _tmpltDao.addTemplateToZone(template, dc.getId()); } } else { for (Long zoneId: zoneIdList) { _tmpltDao.addTemplateToZone(template, zoneId); } } return _tmpltDao.findById(template.getId()); }
_templateStoreDao.update(tmpltStoreVO.getId(), updateBuilder); VMTemplateVO tmlptUpdater = _templateDao.createForUpdate(); tmlptUpdater.setSize(answer.getTemplateSize()); _templateDao.update(obj.getId(), tmlptUpdater); } else if (answer.getDownloadStatus() == VMTemplateStorageResourceAssoc.Status.DOWNLOADED) { if (answer.getCheckSum() != null) { VMTemplateVO templateDaoBuilder = _templateDao.createForUpdate(); templateDaoBuilder.setChecksum(answer.getCheckSum()); _templateDao.update(obj.getId(), templateDaoBuilder);
List<VMTemplateVO> dataDiskTemplates = templateDao.listByParentTemplatetId(template.getId()); if (dataDiskTemplates != null && dataDiskTemplates.size() > 0) { s_logger.info("Template: " + template.getId() + " has Datadisk template(s) associated with it. Delete Datadisk templates before deleting the template"); if (iStores == null || iStores.size() == 0) { dataDiskTemplate.setState(VirtualMachineTemplate.State.Inactive); _tmpltDao.update(dataDiskTemplate.getId(), dataDiskTemplate); _tmpltDao.update(template.getId(), template);
String suffix = dataDiskTemplate.isIso() ? "-IsoDiskTemplate-" : "-DataDiskTemplate-"; TemplateType ttype = dataDiskTemplate.isIso() ? TemplateType.ISODISK : TemplateType.DATADISK; final long templateId = _templateDao.getNextInSequence(Long.class, "id"); long guestOsId = dataDiskTemplate.isIso() ? 1 : 0; String templateName = dataDiskTemplate.isIso() ? dataDiskTemplate.getPath().substring(dataDiskTemplate.getPath().lastIndexOf(File.separator) + 1) : template.getName() + suffix + diskCount; templateVO = _templateDao.persist(templateVO);
templateSizeSearch.and("downloadState", templateSizeSearch.entity().getDownloadState(), Op.EQ); templateSizeSearch.and("destroyed", templateSizeSearch.entity().getDestroyed(), Op.EQ); SearchBuilder<VMTemplateVO> join1 = _vmTemplateDao.createSearchBuilder(); join1.and("accountId", join1.entity().getAccountId(), Op.EQ); templateSizeSearch.join("templates", join1, templateSizeSearch.entity().getTemplateId(), join1.entity().getId(), JoinBuilder.JoinType.INNER);
@Override public void doInTransactionWithoutResult(TransactionStatus status) { VMTemplateVO tmpTemplate = _templateDao.findById(template.getId()); TemplateDataStoreVO tmpTemplateDataStore = _templateDataStoreDao.findById(templateDataStore.getId()); boolean sendAlert = false; tmpTemplateDataStore.setExtractUrl(null); VMTemplateVO templateUpdate = _templateDao.createForUpdate(); templateUpdate.setSize(answer.getVirtualSize()); _templateDao.update(tmpTemplate.getId(), templateUpdate); stateMachine.transitTo(tmpTemplate, VirtualMachineTemplate.Event.OperationSucceeded, null, _templateDao); _resourceLimitMgr.incrementResourceCount(template.getAccountId(), Resource.ResourceType.secondary_storage, answer.getVirtualSize());
directDownloadTemplateSeach.done(); templateOnlySearch = _tmpltDao.createSearchBuilder(); templateOnlySearch.and("states", templateOnlySearch.entity().getState(), SearchCriteria.Op.IN); uploadTemplateStateSearch = createSearchBuilder();
@Override public String getUri() { if (url != null) { return url; } VMTemplateVO image = imageDao.findById(imageVO.getId()); return image.getUrl(); }