@RequestMapping(value = "/", method = RequestMethod.GET) DaemonTask<Halconfig, DeploymentEnvironment> getDeploymentEnvironment(@PathVariable String deploymentName, @ModelAttribute ValidationSettings validationSettings) { return GenericGetRequest.<DeploymentEnvironment>builder() .getter(() -> deploymentEnvironmentService.getDeploymentEnvironment(deploymentName)) .validator(() -> deploymentEnvironmentService.validateDeploymentEnvironment(deploymentName)) .description("Get the deployment environment") .build() .execute(validationSettings); }
@RequestMapping(value = "/", method = RequestMethod.PUT) DaemonTask<Halconfig, Void> setDeploymentEnvironment(@PathVariable String deploymentName, @ModelAttribute ValidationSettings validationSettings, @RequestBody DeploymentEnvironment deploymentEnvironment) { return GenericUpdateRequest.<DeploymentEnvironment>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(d -> deploymentEnvironmentService.setDeploymentEnvironment(deploymentName, d)) .validator(() -> deploymentEnvironmentService.validateDeploymentEnvironment(deploymentName)) .description("Edit the deployment environment") .build() .execute(validationSettings, deploymentEnvironment); } }
public DeploymentEnvironment getDeploymentEnvironment(String deploymentName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setDeploymentEnvironment(); List<DeploymentEnvironment> matching = lookupService.getMatchingNodesOfType(filter, DeploymentEnvironment.class); switch (matching.size()) { case 0: DeploymentEnvironment deploymentEnvironment = new DeploymentEnvironment(); setDeploymentEnvironment(deploymentName, deploymentEnvironment); return deploymentEnvironment; case 1: return matching.get(0); default: throw new RuntimeException("It shouldn't be possible to have multiple deploymentEnvironment nodes. This is a bug."); } }
public DeploymentEnvironment getDeploymentEnvironment(String deploymentName) { NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setDeploymentEnvironment(); List<DeploymentEnvironment> matching = lookupService.getMatchingNodesOfType(filter, DeploymentEnvironment.class); switch (matching.size()) { case 0: DeploymentEnvironment deploymentEnvironment = new DeploymentEnvironment(); setDeploymentEnvironment(deploymentName, deploymentEnvironment); return deploymentEnvironment; case 1: return matching.get(0); default: throw new RuntimeException("It shouldn't be possible to have multiple deploymentEnvironment nodes. This is a bug."); } }