ModuleDeploymentId toModuleDeploymentId(String applicationName) { String moduleIdString = moduleIdString(applicationName); if (moduleIdString == null) { return null; } try { return ModuleDeploymentId.parse(moduleIdString); } catch (IllegalArgumentException e) { return null; // We ignore invalid format cases } }
@RequestMapping("/{id}") public ModuleStatusResource display(@PathVariable String id) { ModuleDeploymentId moduleDeploymentId = ModuleDeploymentId.parse(id); for (ModuleDeployer moduleDeployer : moduleDeployers) { ModuleStatus status = moduleDeployer.status(moduleDeploymentId); if (status != null) { return statusAssembler.toResource(status); } } throw new ResourceNotFoundException(); }
@RequestMapping public PagedResources<ModuleInstanceStatusResource> list(@PathVariable String moduleId, PagedResourcesAssembler<ModuleInstanceStatus> assembler) { ModuleDeploymentId moduleDeploymentId = ModuleDeploymentId.parse(moduleId); for (ModuleDeployer moduleDeployer : moduleDeployers) { ModuleStatus status = moduleDeployer.status(moduleDeploymentId); if (status != null) { List<ModuleInstanceStatus> moduleInstanceStatuses = new ArrayList<>(status.getInstances().values()); Collections.sort(moduleInstanceStatuses, INSTANCE_SORTER); return assembler.toResource(new PageImpl<>(moduleInstanceStatuses), new InstanceAssembler(status)); } } throw new ResourceNotFoundException(); }
@RequestMapping("/{instanceId}") public ModuleInstanceStatusResource display(@PathVariable String moduleId, @PathVariable String instanceId) { ModuleDeploymentId moduleDeploymentId = ModuleDeploymentId.parse(moduleId); for (ModuleDeployer moduleDeployer : moduleDeployers) { ModuleStatus status = moduleDeployer.status(moduleDeploymentId); if (status != null) { ModuleInstanceStatus moduleInstanceStatus = status.getInstances().get(instanceId); if (moduleInstanceStatus == null) { throw new ResourceNotFoundException(); } return new InstanceAssembler(status).toResource(moduleInstanceStatus); } } throw new ResourceNotFoundException(); }