Class ResponseResourceValidator
- java.lang.Object
-
- de.captaingoldfish.scim.sdk.server.schemas.validation.ResponseResourceValidator
-
public class ResponseResourceValidator extends Object
- Since:
- 21.04.2021
- Author:
- Pascal Knueppel
-
-
Constructor Summary
Constructors Constructor Description ResponseResourceValidator(ResourceType resourceType, List<SchemaAttribute> attributesList, List<SchemaAttribute> excludedAttributesList, com.fasterxml.jackson.databind.JsonNode requestDocument, BiFunction<String,String,String> referenceUrlSupplier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckForMissingRequiredExtensions(List<Schema> requiredExtensionList, List<Schema> inResourcePresentExtensions)checks if the extensions within the documents body are missing a required extensionprotected intgetHttpStatusCode()the http status code to use in theDocumentValidationExceptionif the validation fails.protected ResourceTypegetResourceType()the resource type that is the representative for the validation that will be executed on the documentprotected AbstractSchemaValidatorgetSchemaValidator()the schema validator implementation to useScimObjectNodevalidateDocument(com.fasterxml.jackson.databind.JsonNode resource)Does validate the meta-attribute after the document itself has been validatedprotected List<de.captaingoldfish.scim.sdk.server.schemas.validation.AbstractResourceValidator.ValidatedExtension>validateExtensions(List<Schema> extensions, List<Schema> inResourcePresentExtensions, com.fasterxml.jackson.databind.JsonNode resource)validates the extensions that are present within the document that should be validated
-
-
-
Constructor Detail
-
ResponseResourceValidator
public ResponseResourceValidator(ResourceType resourceType, List<SchemaAttribute> attributesList, List<SchemaAttribute> excludedAttributesList, com.fasterxml.jackson.databind.JsonNode requestDocument, BiFunction<String,String,String> referenceUrlSupplier)
-
-
Method Detail
-
validateDocument
public ScimObjectNode validateDocument(com.fasterxml.jackson.databind.JsonNode resource)
Does validate the meta-attribute after the document itself has been validated- Parameters:
resource- the document that should be validated- Returns:
- the validated document with the also validated meta attribute
-
getHttpStatusCode
protected int getHttpStatusCode()
the http status code to use in theDocumentValidationExceptionif the validation fails. Should be 400 (bad request) for requests and 500 (internal server error) for responses
-
validateExtensions
protected List<de.captaingoldfish.scim.sdk.server.schemas.validation.AbstractResourceValidator.ValidatedExtension> validateExtensions(List<Schema> extensions, List<Schema> inResourcePresentExtensions, com.fasterxml.jackson.databind.JsonNode resource)
validates the extensions that are present within the document that should be validated- Parameters:
extensions- all extensions that are defined within theresourceTypeinResourcePresentExtensions- all extensions that were found within the documents body- Returns:
- the list of validated extensions. If an extension evaluated to an empty object it will not be present within this list
-
checkForMissingRequiredExtensions
protected void checkForMissingRequiredExtensions(List<Schema> requiredExtensionList, List<Schema> inResourcePresentExtensions)
checks if the extensions within the documents body are missing a required extension- Parameters:
requiredExtensionList- the list of extensions that are required for theresourceTypeinResourcePresentExtensions- all extensions that were found within the documents body
-
getResourceType
protected ResourceType getResourceType()
the resource type that is the representative for the validation that will be executed on the document
-
getSchemaValidator
protected AbstractSchemaValidator getSchemaValidator()
the schema validator implementation to use
-
-