@RequestMapping(value = "/{id}", method = RequestMethod.GET) public ResponseEntity<CarRepresentation> byId(@PathVariable("id") String carId) { Optional<Car> car = carRepository.byId(Integer.parseInt(carId)); return car.map(c -> { CarRepresentation rep = toCarRepresentation(c); return new ResponseEntity<>(rep, HttpStatus.OK); }) .orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND)); }
@GET public Response byId(@Auth User user, @PathParam("id") int carId) { Optional<Car> car = carRepository.byId(carId); return car.map(c -> { CarRepresentation carRepresentation = new CarRepresentation(c); carRepresentation.addLink(Link.self(uriInfo.getAbsolutePathBuilder().build(c.getId()).toString())); return Response.ok(carRepresentation).build(); }).orElse(Response.status(Response.Status.NOT_FOUND).build()); } }
public CarRepresentation byId(Request request, Response response) { Optional<Car> car = carRepository.byId(Integer.parseInt(request.params(":id"))); return car.map(c -> { response.type("application/json"); CarRepresentation carRepresentation = new CarRepresentation(c); carRepresentation.addLink(self(request.url())); return carRepresentation; } ).orElseGet(() -> { response.status(404); return null; }); }
public void byId(RoutingContext routingContext) { HttpServerResponse response = routingContext.response(); String idParam = routingContext.request().getParam("id"); if (idParam == null) { response.setStatusCode(400).end(); } else { Optional<Car> car = carRepository.byId(Integer.parseInt(idParam)); if (car.isPresent()) { CarRepresentation carRepresentation = new CarRepresentation(car.get()); carRepresentation.addLink(self(routingContext.request().absoluteURI())); response.putHeader("content-type", "application/json") .end(Json.encode(carRepresentation)); } else { response.setStatusCode(404).end(); } } } }
@Get("json") public CarRepresentation byId() { io.github.cdelmas.spike.common.domain.Car car = carRepository.byId(carId).orElseThrow(() -> new ResourceException(Status.CLIENT_ERROR_NOT_FOUND)); CarRepresentation carRepresentation = new CarRepresentation(car); carRepresentation.addLink(Link.self(getReference().toString())); carRepresentation.addLink(Link.remove(getReference().toString())); return carRepresentation; } }