@RequestMapping( value = "/{id}/addresses/{address}", method = RequestMethod.POST, headers = "Accept=application/json") @ResponseBody @Transactional public ResponseEntity<String> addAddressToUser( @PathVariable("id") Long userId, @PathVariable("address") Long addressId, @RequestBody String json) { TaskUser taskUser = taskusers.findOne(userId); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/json; charset=utf-8"); if (taskUser == null) { return new ResponseEntity<String>(headers, HttpStatus.NOT_FOUND); } Address possibleAddress = addresses.findOne(addressId); if (possibleAddress == null) { return new ResponseEntity<String>(headers, HttpStatus.NOT_FOUND); } taskUser.addAddress(possibleAddress); Address foundAddress = addresses.save(possibleAddress); taskusers.save(taskUser); return new ResponseEntity<String>(foundAddress.toJson(), headers, HttpStatus.CREATED); }
/** * POST /taskusers { "name": "name of the taskuser" } * * <p>Creates a new taskuser. * * @param json * @return json containing the id of the newly created taskuser */ @RequestMapping(method = RequestMethod.POST, headers = "Accept=application/json") public ResponseEntity<String> createFromJson(@RequestBody String json) { TaskUser createdTaskUser = taskusers.save(TaskUser.fromJsonToTaskUser(json)); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/text"); return new ResponseEntity<String>( "{\"id\":" + createdTaskUser.getId() + "}", headers, HttpStatus.CREATED); }
/** * GET /taskusers/{id} * * <p>Gets the full json for a taskuser. * * @param id * @return json representation of the requested taskuser, or HttpStatus.NOT_FOUND */ @RequestMapping(value = "/{id}", method = RequestMethod.GET, headers = "Accept=application/json") @ResponseBody public ResponseEntity<String> showJson(@PathVariable("id") Long id) { TaskUser taskuser = taskusers.findOne(id); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/text; charset=utf-8"); if (taskuser == null) { return new ResponseEntity<String>(headers, HttpStatus.NOT_FOUND); } return new ResponseEntity<String>(taskuser.toJson(), headers, HttpStatus.OK); }
/** * Get /taskusers/ * * <p>Gets a json array of all taskusers. * * @return json array representation of all taskusers */ @RequestMapping(headers = "Accept=application/json") @ResponseBody public ResponseEntity<String> listJson() { HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/text; charset=utf-8"); return new ResponseEntity<String>( TaskUser.toJsonArray(taskusers.findAll()), headers, HttpStatus.OK); }
/** * PUT /taskusers/ { "id": id, "title": "text of taskuser", idDone: true|false } * * <p>Updates an existing taskuser. * * @param json full json representation of the taskuser to update * @return */ @RequestMapping(method = RequestMethod.PUT, headers = "Accept=application/json") public ResponseEntity<String> updateFromJson(@RequestBody String json) { HttpHeaders headers = new HttpHeaders(); headers.add("Content-Type", "application/text"); if (taskusers.save(TaskUser.fromJsonToTaskUser(json)) == null) { return new ResponseEntity<String>(headers, HttpStatus.NOT_FOUND); } return new ResponseEntity<String>(headers, HttpStatus.OK); }