DATAREST-219 - Polishing.

Generally polished implementation and test cases for Greg's contribution.
Re-ordered parameters in ControllerUtils' helper methods for consistency.
Use Spring's CollectionFactory to create a suitable collection for the handled properties in the first place to avoid unnecessary conversion later on.

Removed duplication in test cases. Polished JavaDoc in UriListHttpMessageConverter and moved to a Scanner based implementation to read the request body. 

Adapted to latest changes in Spring HATEOAS. Reactivated ResourceStringUtilsTests.

Related pull requests: #128, #86.
This commit is contained in:
Oliver Gierke
2014-01-24 15:16:21 +01:00
parent 1f0b9bd664
commit bd8d3afa65
11 changed files with 208 additions and 215 deletions

View File

@@ -15,8 +15,11 @@
*/
package org.springframework.data.rest.core.mapping;
import org.springframework.context.MessageSourceResolvable;
/**
*
* Adapter class for the {@link MessageSourceResolvable} part of a {@link ResourceDescription}.
*
* @author Oliver Gierke
*/
public abstract class ResolvableResourceDescriptionSupport implements ResourceDescription {
@@ -29,7 +32,7 @@ public abstract class ResolvableResourceDescriptionSupport implements ResourceDe
public String[] getCodes() {
return new String[] { getMessage() };
}
/*
* (non-Javadoc)
* @see org.springframework.context.MessageSourceResolvable#getArguments()
@@ -38,7 +41,7 @@ public abstract class ResolvableResourceDescriptionSupport implements ResourceDe
public Object[] getArguments() {
return new Object[0];
}
/*
* (non-Javadoc)
* @see org.springframework.context.MessageSourceResolvable#getDefaultMessage()

View File

@@ -106,7 +106,7 @@ class TypeBasedCollectionResourceMapping implements CollectionResourceMapping {
*/
@Override
public String getItemResourceRel() {
return relProvider.getSingleResourceRelFor(type);
return relProvider.getItemResourceRelFor(type);
}
/*

View File

@@ -50,10 +50,10 @@ public class RepositoryRelProvider implements RelProvider {
/*
* (non-Javadoc)
* @see org.springframework.hateoas.RelProvider#getSingleResourceRelFor(java.lang.Class)
* @see org.springframework.hateoas.RelProvider#getItemResourceRelFor(java.lang.Class)
*/
@Override
public String getSingleResourceRelFor(Class<?> type) {
public String getItemResourceRelFor(Class<?> type) {
return mappings.getMappingFor(type).getItemResourceRel();
}

View File

@@ -32,11 +32,13 @@ public class SimpleRelProvider implements RelProvider {
return true;
}
/* (non-Javadoc)
* @see org.springframework.hateoas.RelProvider#getSingleResourceRelFor(java.lang.Class)
/*
* (non-Javadoc)
* @see org.springframework.hateoas.RelProvider#getItemResourceRelFor(java.lang.Class)
*/
@Override
public String getSingleResourceRelFor(Class<?> type) {
public String getItemResourceRelFor(Class<?> type) {
String collectionRel = getCollectionResourceRelFor(type);
return String.format("%s.%s", collectionRel, collectionRel);
}

View File

@@ -33,13 +33,13 @@ import static org.junit.runners.Parameterized.Parameters;
* @author Florent Biville
*/
@RunWith(Parameterized.class)
public class ResourceStringUtilsTest {
public class ResourceStringUtilsTests {
final String actual;
final String expected;
final boolean hasText;
public ResourceStringUtilsTest(String testDescription, String actual, String expected, boolean hasText) {
public ResourceStringUtilsTests(String testDescription, String actual, String expected, boolean hasText) {
this.actual = actual;
this.expected = expected;