Sebastian Ullrich
Sebastian Ullrich

Reputation: 1037

Migrating ResourceProcessor to HATEOAS 1.0.0 M1

In my current Spring HATEOAS 0.25.1.RELEASE project I make heavy use of ResourceProcessor interfaces:

 @Bean
 public ResourceProcessor<Resource<Person>> personProcessor() {
    return new ResourceProcessor<Resource<Person>>() {
      @Override
      public Resource<Person> process(Resource<Person> resource) {
       resource.add(new Link("http://localhost:8080/people", "added-link"));
       return resource;
      }
    };
 }

How can can I migrate my ResourceProcessors to Spring HATEOAS 1.0.0 M1?

Upvotes: 8

Views: 2539

Answers (1)

Eamon Scullion
Eamon Scullion

Reputation: 1384

In Spring HATEOAS 1.0 M1, a lot of types and APIs have changed naming conventions.

In your example ResourceProcessor is now RepresentationModelProcessor, and Resource<T> is now EntityModel<T>, like so:

public RepresentationModelProcessor<EntityModel<Person>> personProcessor() {
return new RepresentationModelProcessor<EntityModel<Person>>() {
  @Override
  public EntityModel<Person> process(EntityModel<Person> entityModel) {
    entityModel.add(new Link("http://localhost:8080/people", "added-link"));
    return entityModel;
  }
};

}

See the full change notes here

Upvotes: 21

Related Questions