spring-cloud-skipper icon indicating copy to clipboard operation
spring-cloud-skipper copied to clipboard

Package and Release controllers should return ResponseEntity<Resource<Release>> and similar

Open markpollack opened this issue 7 years ago • 0 comments

This is to be consistent with what is exported by the endpoints exposed by Spring Data REST. Also, there should be an easy to navigate top level _links structure introduced in #445 and _links for the sub-resource of release and package.

Of note, the utility class below, will reduce the boilerplate of exposing our domain object as a resource.

https://github.com/spring-projects/spring-hateoas-examples/blob/master/commons/src/main/java/org/springframework/hateoas/SimpleIdentifiableResourceAssembler.java

used here

https://github.com/spring-projects/spring-hateoas-examples/tree/master/hypermedia

(all the examples are worth a read)

There is also

https://github.com/spring-projects/spring-hateoas-examples/blob/master/commons/src/main/java/org/springframework/hateoas/SimpleResourceAssembler.java

Not sure if smaller domain classes such as Info should return ResponseEntity<Resource<Info>>

We could also potentially put the list release endpoints under the repository releases/search endpoint... See https://stackoverflow.com/questions/34031913/spring-data-rest-add-custom-endpoint-to-specific-reposiotry and RepositorySearchesResource (including the trick in the last comment to add links only for specific repositories.

markpollack avatar Jan 16 '18 05:01 markpollack