@RequestMapping(value = "/", method = RequestMethod.POST) DaemonTask<Halconfig, Void> addMaster(@PathVariable String deploymentName, @PathVariable String ciName, @ModelAttribute ValidationSettings validationSettings, @RequestBody Object rawMaster) { Master master = objectMapper.convertValue( rawMaster, Cis.translateMasterType(ciName) ); return GenericUpdateRequest.<Master>builder(halconfigParser) .stagePath(halconfigDirectoryStructure.getStagingPath(deploymentName)) .updater(m -> masterService.addMaster(deploymentName, ciName, m)) .validator(() -> masterService.validateMaster(deploymentName, ciName, master.getName())) .description("Add the " + master.getName() + " master") .build() .execute(validationSettings, master); } }