Browse Source

Allow custom expand algorithm in UriComponents

Issue: SPR-10647
pull/338/merge
Rossen Stoyanchev 11 years ago
parent
commit
08d36cf2e4
  1. 13
      spring-web/src/main/java/org/springframework/web/util/UriComponents.java

13
spring-web/src/main/java/org/springframework/web/util/UriComponents.java

@ -161,6 +161,17 @@ public abstract class UriComponents implements Serializable { @@ -161,6 +161,17 @@ public abstract class UriComponents implements Serializable {
return expandInternal(new VarArgsTemplateVariables(uriVariableValues));
}
/**
* Replaces all URI template variables with the values obtained through the
* given {@link UriTemplateVariables} instance.
* @param uriTemplateVars resolves URI template variable values
* @return the expanded uri components
*/
public final UriComponents expand(UriTemplateVariables uriTemplateVars) {
Assert.notNull(uriTemplateVars, "'uriTemplateVars' must not be null");
return expandInternal(uriTemplateVars);
}
/**
* Replaces all URI template variables with the values from the given {@link
* UriTemplateVariables}
@ -228,7 +239,7 @@ public abstract class UriComponents implements Serializable { @@ -228,7 +239,7 @@ public abstract class UriComponents implements Serializable {
* Defines the contract for URI Template variables
* @see HierarchicalUriComponents#expand
*/
interface UriTemplateVariables {
public interface UriTemplateVariables {
Object getValue(String name);
}

Loading…
Cancel
Save