Package org.forgerock.json.resource
Class ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification
java.lang.Object
org.forgerock.json.resource.ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification
- All Implemented Interfaces:
ResourceApiVersionSpecificationFilter.VersionSpecification
- Enclosing class:
- ResourceApiVersionSpecificationFilter
public static final class ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification
extends Object
implements ResourceApiVersionSpecificationFilter.VersionSpecification
ResourceApiVersionSpecificationFilter.VersionSpecification supporting specification of a request's resource version
based on its resource path.-
Method Summary
Modifier and TypeMethodDescriptionvoidhandleNoApiVersionSupplied(Context context, ResourcePath resourcePath) Support handling when no resource API version is supplied on the request.matchVersion(Request request) Test the request to try to find a match based on version configuration.resourcePathAndVersionSpecification(JsonValue versionMatrix) Create a newResourcePathAndVersionSpecificationconfigured with resource path to version specification.setDefaultVersion(Version defaultVersion) Set a defaultVersionto use if no matching resource path found for request.Indicate what should happen if no resource API version supplied on the request.
-
Method Details
-
resourcePathAndVersionSpecification
public static ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification resourcePathAndVersionSpecification(JsonValue versionMatrix) Create a newResourcePathAndVersionSpecificationconfigured with resource path to version specification.- Parameters:
versionMatrix- JSON representation of theResourceApiVersionSpecificationFilter.ResourcePathAndVersionmatrix- Returns:
- new
ResourcePathAndVersionSpecification - See Also:
-
setDefaultVersion
public ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification setDefaultVersion(Version defaultVersion) Set a defaultVersionto use if no matching resource path found for request.- Parameters:
defaultVersion- DefaultVersionto use- Returns:
- this instance supporting a fluent API
-
setNoAvailableVersionHandler
public ResourceApiVersionSpecificationFilter.ResourcePathAndVersionSpecification setNoAvailableVersionHandler(ResourceApiVersionSpecificationFilter.NoApiVersionHandler handler) Indicate what should happen if no resource API version supplied on the request. If the suppliednoApiVersionHandlerreturns true then a warning is added on to the response (via theAdviceContext).- Parameters:
handler- Handler to callback should no resource API version supplied- Returns:
- this instance supporting a fluent API
-
matchVersion
Description copied from interface:ResourceApiVersionSpecificationFilter.VersionSpecificationTest the request to try to find a match based on version configuration. The matching version is returned if found.- Specified by:
matchVersionin interfaceResourceApiVersionSpecificationFilter.VersionSpecification- Parameters:
request- the request to match- Returns:
Optionalof any matchingVersion
-
handleNoApiVersionSupplied
Support handling when no resource API version is supplied on the request.- Specified by:
handleNoApiVersionSuppliedin interfaceResourceApiVersionSpecificationFilter.VersionSpecification- Parameters:
context- theContextresourcePath- the requestedResourcePath
-