@ExposesResourceFor(Payment.class) @RequiredArgsConstructor public class PaymentController {
@RestController @ExposesResourceFor(BarResource.class) @RequestMapping("/foos/{fooId}/bars") public class BarController { private final BarResourceAssembler assembler; public BarController(BarResourceAssembler assembler) { this.assembler = assembler; } @GetMapping("/{id}") public BarResource getBar(@PathVariable UUID fooId, @PathVariable UUID id) { return assembler.toResource(new Bar(id, "Bar", new Foo(fooId, "Root Foo"))); } }
@RestController @ExposesResourceFor(BarResource.class) @RequestMapping("/foos/{fooId}/bars") public class BarController { private final BarResourceAssembler assembler; public BarController(BarResourceAssembler assembler) { this.assembler = assembler; } @GetMapping("/{id}") public BarResource getBar(@PathVariable UUID fooId, @PathVariable UUID id) { return assembler.toResource(new Bar(id, "Bar", new Foo(fooId, "Root Foo"))); } }
/** * @author Vinicius Carvalho */ @RestController @ExposesResourceFor(RootEndpoint.class) @RequestMapping("/") public class RootEndpoint { private final EntityLinks entityLinks; public RootEndpoint(EntityLinks entityLinks) { this.entityLinks = entityLinks; } @RequestMapping(method = RequestMethod.GET, produces = MediaTypes.HAL_JSON_VALUE) public RootResource info() { String streamTemplated = entityLinks.linkToCollectionResource(StreamMetrics.class).getHref() + "?{name}"; RootResource rootResource = new RootResource(); rootResource.add(new Link(streamTemplated).withRel("/collector/metrics/streams")); return rootResource; } }
@ExposesResourceFor(StreamMetrics.class) public class MetricsCollectorEndpoint {
@RestController @ExposesResourceFor(Likes.class) public class ApiController { @Autowired ProductRepository productRepository; @Autowired PersonRepository personRepository; @Autowired LikesRepository likesRepository; // This controller is constructed for this method only. Enables users to // create likes much easier. @RequestMapping(value = "/recommendations/{userName}/likes/{productId}", method = RequestMethod.POST) public ResponseEntity<Likes> createPersonProductLink(@PathVariable String userName, @PathVariable String productId) { Person person = personRepository.findByUserName(userName); Product product = productRepository.findByProductId(productId); Likes likes = new Likes(); likes.setPerson(person); likes.setProduct(product); likesRepository.save(likes); return new ResponseEntity<>(likes, HttpStatus.CREATED); } }
@RestController @ExposesResourceFor(FooResource.class) @RequestMapping("/foos") public class FooController {
@RestController @ExposesResourceFor(FooResource.class) @RequestMapping("/foos") public class FooController {
@RestController @RequestMapping("/runtime/modules/{moduleId}/instances") @ExposesResourceFor(ModuleInstanceStatusResource.class) public static class InstanceController {
@ExposesResourceFor(StreamAppStatusResource.class) public class StreamValidationController {
@ExposesResourceFor(LauncherResource.class) public class TaskPlatformController {
@ExposesResourceFor(StreamAppStatusResource.class) public class StreamValidationController {
@ExposesResourceFor(TaskAppStatusResource.class) public class TaskValidationController {
@ExposesResourceFor(User.class) @RequestMapping(value = "/users") class UserController {
@ExposesResourceFor(SecurityInfoResource.class) public class SecurityController {
@ExposesResourceFor(CompletionProposalsResource.class) public class CompletionController {
@ExposesResourceFor(TaskAppStatusResource.class) public class TaskValidationController {
@ExposesResourceFor(User.class) @RequestMapping(value = "/users") class UserController {
@ExposesResourceFor(SecurityInfoResource.class) public class SecurityController {
@CrossOrigin(origins = "*") @RestController @ExposesResourceFor(Order.class) @RequestMapping(value = "/order", produces = "application/json") public class OrderController {