public void addArtifactTemplate(String deploymentName, ArtifactTemplate newArtifactTemplate) { List<ArtifactTemplate> artifactTemplates = getAllArtifactTemplates(deploymentName); artifactTemplates.add(newArtifactTemplate); }
@RequestMapping(value = "/{templateName:.+}", method = RequestMethod.GET) DaemonTask<Halconfig, ArtifactTemplate> getArtifactTemplate(@PathVariable String deploymentName, @PathVariable String templateName, @ModelAttribute ValidationSettings validationSettings) { return GenericGetRequest.<ArtifactTemplate>builder() .getter(() -> artifactTemplateService.getArtifactTemplate(deploymentName, templateName)) .validator(() -> artifactTemplateService.validateArtifactTemplate(deploymentName, templateName)) .description("Get the " + templateName + " artifact template") .build() .execute(validationSettings); }
public List<ArtifactTemplate> getAllArtifactTemplates(String deploymentName) { return getArtifacts(deploymentName).getTemplates(); }
@RequestMapping(value = "/", method = RequestMethod.GET) DaemonTask<Halconfig, List<ArtifactTemplate>> getArtifactTemplates(@PathVariable String deploymentName, @ModelAttribute ValidationSettings validationSettings) { return GenericGetRequest.<List<ArtifactTemplate>>builder() .getter(() -> artifactTemplateService.getAllArtifactTemplates(deploymentName)) .validator(() -> artifactTemplateService.validateAllArtifactTemplates(deploymentName)) .description("Get artifact templates") .build() .execute(validationSettings); }
@RequestMapping(value = "/{templateName:.+}", method = RequestMethod.PUT) DaemonTask<Halconfig, Void> setArtifactTemplate(@PathVariable String deploymentName, @PathVariable String templateName, @ModelAttribute ValidationSettings validationSettings, @RequestBody ArtifactTemplate artifactTemplate) { return GenericUpdateRequest.<ArtifactTemplate>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(t -> artifactTemplateService.setArtifactTemplate(deploymentName, templateName, t)) .validator(() -> artifactTemplateService.validateArtifactTemplate(deploymentName, templateName)) .description("Edit the " + templateName + " artifact template") .build() .execute(validationSettings, artifactTemplate); }
@RequestMapping(value = "/{templateName:.+}", method = RequestMethod.DELETE) DaemonTask<Halconfig, Void> deleteArtifactTemplate(@PathVariable String deploymentName, @PathVariable String templateName, @ModelAttribute ValidationSettings validationSettings) { return GenericDeleteRequest.builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .deleter(() -> artifactTemplateService.deleteArtifactTemplate(deploymentName, templateName)) .validator(() -> artifactTemplateService.validateAllArtifactTemplates(deploymentName)) .description("Delete the " + templateName + " artifact template") .build() .execute(validationSettings); } }
@RequestMapping(value = "/", method = RequestMethod.POST) DaemonTask<Halconfig, Void> addArtifactTemplate(@PathVariable String deploymentName, @ModelAttribute ValidationSettings validationSettings, @RequestBody ArtifactTemplate artifactTemplate) { return GenericUpdateRequest.<ArtifactTemplate>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(t -> artifactTemplateService.addArtifactTemplate(deploymentName, t)) .validator(() -> artifactTemplateService.validateArtifactTemplate(deploymentName, artifactTemplate.getName())) .description("Add the " + artifactTemplate.getName() + " artifact template") .build() .execute(validationSettings, artifactTemplate); }
private Artifacts getArtifacts(String deploymentName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setArtifacts(); return lookupService.getSingularNodeOrDefault(filter, Artifacts.class, Artifacts::new, n -> setArtifacts(deploymentName, n)); }
public void setArtifactTemplate(String deploymentName, String artifactTemplateName, ArtifactTemplate newArtifactTemplate) { List<ArtifactTemplate> artifactTemplates = getAllArtifactTemplates(deploymentName); for (int i = 0; i < artifactTemplates.size(); i++) { if (artifactTemplates.get(i).getNodeName().equals(artifactTemplateName)) { artifactTemplates.set(i, newArtifactTemplate); return; } } throw new HalException(new ConfigProblemBuilder(Problem.Severity.FATAL, "Artifact template \"" + artifactTemplateName + "\" wasn't found").build()); }
public void deleteArtifactTemplate(String deploymentName, String artifactTemplateName) { List<ArtifactTemplate> artifactTemplates = getAllArtifactTemplates(deploymentName); boolean removed = artifactTemplates.removeIf(template -> template.getName().equals(artifactTemplateName)); if (!removed) { throw new HalException( new ConfigProblemBuilder(Problem.Severity.FATAL, "Artifact template \"" + artifactTemplateName + "\" wasn't found") .build()); } }