Package org.springframework.web.util
Enum DefaultUriBuilderFactory.EncodingMode
- java.lang.Object
- java.lang.Enum<DefaultUriBuilderFactory.EncodingMode>
- org.springframework.web.util.DefaultUriBuilderFactory.EncodingMode
- All Implemented Interfaces:
Serializable
,Comparable<DefaultUriBuilderFactory.EncodingMode>
- Enclosing class:
- DefaultUriBuilderFactory
public static enum DefaultUriBuilderFactory.EncodingMode extends Enum<DefaultUriBuilderFactory.EncodingMode>
Enum to represent multiple URI encoding strategies. The following are available:
Enum Constant Summary
Enum Constants Enum Constant Description NONE
No encoding should be applied.TEMPLATE_AND_VALUES
Pre-encode the URI template first, then strictly encode URI variables when expanded, with the following rules: For the URI template replace only non-ASCII and illegal (within a given URI component type) characters with escaped octets.URI_COMPONENT
Expand URI variables first, and then encode the resulting URI component values, replacing only non-ASCII and illegal (within a given URI component type) characters, but not characters with reserved meaning.VALUES_ONLY
Does not encode the URI template and instead applies strict encoding to URI variables viaUriUtils.encodeUriVariables(java.util.Map<java.lang.String, ?>)
prior to expanding them into the template.
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static DefaultUriBuilderFactory.EncodingMode
valueOf(String name)
Returns the enum constant of this type with the specified name.static DefaultUriBuilderFactory.EncodingMode[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
Enum Constant Detail
TEMPLATE_AND_VALUES
public static final DefaultUriBuilderFactory.EncodingMode TEMPLATE_AND_VALUES
Pre-encode the URI template first, then strictly encode URI variables when expanded, with the following rules:- For the URI template replace only non-ASCII and illegal (within a given URI component type) characters with escaped octets.
- For URI variables do the same and also replace characters with reserved meaning.
For most cases, this mode is most likely to give the expected result because in treats URI variables as opaque data to be fully encoded, while
URI_COMPONENT
by comparison is useful only if intentionally expanding URI variables with reserved characters.- Since:
- 5.0.8
- See Also:
UriComponentsBuilder.encode()
VALUES_ONLY
public static final DefaultUriBuilderFactory.EncodingMode VALUES_ONLY
Does not encode the URI template and instead applies strict encoding to URI variables viaUriUtils.encodeUriVariables(java.util.Map<java.lang.String, ?>)
prior to expanding them into the template.
URI_COMPONENT
public static final DefaultUriBuilderFactory.EncodingMode URI_COMPONENT
Expand URI variables first, and then encode the resulting URI component values, replacing only non-ASCII and illegal (within a given URI component type) characters, but not characters with reserved meaning.- See Also:
UriComponents.encode()
NONE
public static final DefaultUriBuilderFactory.EncodingMode NONE
No encoding should be applied.
Method Detail
values
public static DefaultUriBuilderFactory.EncodingMode[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (DefaultUriBuilderFactory.EncodingMode c : DefaultUriBuilderFactory.EncodingMode.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
valueOf
public static DefaultUriBuilderFactory.EncodingMode valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null