@Test public void testGetBuild() { final String buildUuid = randomUUID().toString(); when(buildService.get(anyString())).thenReturn(ofNullable(new BuildDetails())); router.getBuild(buildUuid); }
@GetMapping("build/{uuid}") public BuildDetails getBuild(@PathVariable("uuid") final String buildUuid) { return buildService.get(buildUuid).orElseThrow(ResourceNotFoundException::new); }
Router { @GetMapping("build/{uuid}") public BuildDetails getBuild(@PathVariable("uuid") final String buildUuid) { return buildService.get(buildUuid).orElseThrow(ResourceNotFoundException::new); } }
Router { @GetMapping("build/{uuid}") public BuildDetails getBuild(@PathVariable("uuid") final String buildUuid) { return buildService.get(buildUuid).orElseThrow(ResourceNotFoundException::new); }  }
Router { @GetMapping("build/{uuid}") public BuildDetails getBuild(@PathVariable("uuid") final String buildUuid) { return buildService.get(buildUuid).orElseThrow(ResourceNotFoundException::new); }  @PostConstruct void initialize(); @GetMapping("contract") DeploymentResult getLatestContract(); @GetMapping("builds") List<BuildSummary> getLatestBuilds(); @GetMapping("build/{uuid}") BuildDetails getBuild(@PathVariable("uuid") final String buildUuid); @PostMapping("build/{uuid}/deploy") DeploymentResult deploy(@PathVariable("uuid") final String buildUuid); @PostMapping(value = "contract/{tx}/{function}") ExecutionResult execute(
      @PathVariable("tx") final String contractTransactionHash,
      @PathVariable("function") final String functionName,
      @RequestBody final ContractInput contractInput); @GetMapping(value = "contract/{tx}/{function}") QueryResult query(
      @PathVariable("tx") final String contractTransactionHash,
      @PathVariable("function") final String functionName,
      @RequestParam(value = "arguments", required = false) final String[] arguments
  ); }
Router { @GetMapping("build/{uuid}") public BuildDetails getBuild(@PathVariable("uuid") final String buildUuid) { return buildService.get(buildUuid).orElseThrow(ResourceNotFoundException::new); }  @PostConstruct void initialize(); @GetMapping("contract") DeploymentResult getLatestContract(); @GetMapping("builds") List<BuildSummary> getLatestBuilds(); @GetMapping("build/{uuid}") BuildDetails getBuild(@PathVariable("uuid") final String buildUuid); @PostMapping("build/{uuid}/deploy") DeploymentResult deploy(@PathVariable("uuid") final String buildUuid); @PostMapping(value = "contract/{tx}/{function}") ExecutionResult execute(
      @PathVariable("tx") final String contractTransactionHash,
      @PathVariable("function") final String functionName,
      @RequestBody final ContractInput contractInput); @GetMapping(value = "contract/{tx}/{function}") QueryResult query(
      @PathVariable("tx") final String contractTransactionHash,
      @PathVariable("function") final String functionName,
      @RequestParam(value = "arguments", required = false) final String[] arguments
  );  }