diff --git a/src/main/java/org/springframework/hateoas/server/core/DelegatingEntityLinks.java b/src/main/java/org/springframework/hateoas/server/core/DelegatingEntityLinks.java index bcf3f364..f4298346 100644 --- a/src/main/java/org/springframework/hateoas/server/core/DelegatingEntityLinks.java +++ b/src/main/java/org/springframework/hateoas/server/core/DelegatingEntityLinks.java @@ -78,7 +78,16 @@ public class DelegatingEntityLinks extends AbstractEntityLinks { return getPluginFor(type).linkToItemResource(type, id); } - /* + /* + * (non-Javadoc) + * @see org.springframework.hateoas.server.core.AbstractEntityLinks#linkForItemResource(java.lang.Class, java.lang.Object) + */ + @Override + public LinkBuilder linkForItemResource(Class type, Object id) { + return getPluginFor(type).linkForItemResource(type, id); + } + + /* * (non-Javadoc) * @see org.springframework.plugin.core.Plugin#supports(java.lang.Object) */ diff --git a/src/test/java/org/springframework/hateoas/server/core/DelegatingEntityLinksUnitTest.java b/src/test/java/org/springframework/hateoas/server/core/DelegatingEntityLinksUnitTest.java index 4e77f4a4..1deacb94 100755 --- a/src/test/java/org/springframework/hateoas/server/core/DelegatingEntityLinksUnitTest.java +++ b/src/test/java/org/springframework/hateoas/server/core/DelegatingEntityLinksUnitTest.java @@ -72,6 +72,17 @@ class DelegatingEntityLinksUnitTest extends TestUtils { verify(target, times(1)).linkFor(String.class); } + @Test // #1479 + void delegatesCallToLinkForItemResource() { + + EntityLinks target = mock(EntityLinks.class); + when(target.supports(String.class)).thenReturn(true); + + createDelegatingEntityLinks(target).linkForItemResource(String.class, 0); + + verify(target, times(1)).linkForItemResource(String.class, 0); + } + private EntityLinks createDelegatingEntityLinks(EntityLinks target) { return new DelegatingEntityLinks(SimplePluginRegistry.of(target)); }