public final class JsonSchema extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
JsonSchema.ValidationPolicy
JSON value validation policies.
|
| Modifier and Type | Field and Description |
|---|---|
static org.forgerock.util.Option<Boolean> |
CASE_SENSITIVE_STRINGS
Matching rule option controlling whether JSON string comparisons should be case-sensitive.
|
static org.forgerock.util.Option<Boolean> |
IGNORE_WHITE_SPACE
Matching rule option controlling whether JSON string comparisons should ignore white-space.
|
static org.forgerock.util.Option<Collection<String>> |
INDEXED_FIELD_PATTERNS
Matching rule option controlling which JSON fields should be indexed by the matching rule.
|
static org.forgerock.util.Option<JsonSchema.ValidationPolicy> |
VALIDATION_POLICY
Schema option controlling syntax validation for JSON based attributes.
|
| Modifier and Type | Method and Description |
|---|---|
static org.forgerock.opendj.ldap.schema.SchemaBuilder |
addJsonSyntaxesAndMatchingRulesToSchema(org.forgerock.opendj.ldap.schema.SchemaBuilder builder)
Adds the syntaxes and matching rules required by for JSON attribute support to the provided schema builder.
|
static org.forgerock.util.Function<org.forgerock.opendj.ldap.ByteString,Object,org.forgerock.i18n.LocalizedIllegalArgumentException> |
byteStringToJson()
Returns a function which parses
JSON values. |
static org.forgerock.opendj.ldap.schema.MatchingRule |
getCaseExactJsonQueryMatchingRule()
Returns the
jsonQueryMatch matching rule having the OID 1.3.6.1.4.1.36733.2.1.4.2. |
static org.forgerock.opendj.ldap.schema.MatchingRule |
getCaseIgnoreJsonQueryMatchingRule()
Returns the
jsonQueryMatch matching rule having the OID 1.3.6.1.4.1.36733.2.1.4.1. |
static org.forgerock.opendj.ldap.schema.Syntax |
getJsonQuerySyntax()
Returns the JSON Query attribute syntax having the OID 1.3.6.1.4.1.36733.2.1.3.2.
|
static org.forgerock.opendj.ldap.schema.Syntax |
getJsonSyntax()
Returns the JSON attribute syntax having the OID 1.3.6.1.4.1.36733.2.1.3.1.
|
static org.forgerock.util.Function<Object,org.forgerock.opendj.ldap.ByteString,com.fasterxml.jackson.core.JsonProcessingException> |
jsonToByteString()
Returns a function which converts a JSON
Object to a ByteString. |
static org.forgerock.opendj.ldap.schema.MatchingRuleImpl |
newJsonQueryEqualityMatchingRuleImpl(String matchingRuleName,
org.forgerock.util.Options options)
Creates a new custom JSON query equality matching rule implementation with the provided matching rule name and
options.
|
public static final org.forgerock.util.Option<JsonSchema.ValidationPolicy> VALIDATION_POLICY
JsonSchema.ValidationPolicy.STRICT.public static final org.forgerock.util.Option<Boolean> CASE_SENSITIVE_STRINGS
false meaning that case will be ignored.
This option must be provided when constructing a JSON matching rule using newJsonQueryEqualityMatchingRuleImpl(java.lang.String, org.forgerock.util.Options), and cannot be overridden at the schema level.
public static final org.forgerock.util.Option<Boolean> IGNORE_WHITE_SPACE
true meaning that leading and trailing white-space will be ignored and
intermediate white-space will be reduced to a single white-space character.
This option must be provided when constructing a JSON matching rule using newJsonQueryEqualityMatchingRuleImpl(java.lang.String, org.forgerock.util.Options), and cannot be overridden at the schema level.
public static final org.forgerock.util.Option<Collection<String>> INDEXED_FIELD_PATTERNS
| Pattern | Matches | Doesn't match |
|---|---|---|
| /aaa/bbb/ccc | /aaa/bbb/ccc | /aaa/bbb/ccc/ddd /aaa/bbb/cccc |
| /aaa/b*/ccc | /aaa/bbb/ccc /aaa/bxx/ccc | /aaa/xxx/ccc /aaa/bbb |
| /aaa/**/ddd | /aaa/ddd /aaa/xxx/yyy/ddd | /aaa/bbb/ccc |
| /aaa/** | /aaa /aaa/bbb /aaa/bbb/ccc | /aa |
public static org.forgerock.opendj.ldap.schema.Syntax getJsonSyntax()
VALIDATION_POLICY schema option to control the degree of syntax
enforcement. By default JSON attributes will support equality matching using the
jsonQueryMatch matching rule, although this may be overridden
when defining individual attribute types.public static org.forgerock.opendj.ldap.schema.Syntax getJsonQuerySyntax()
query filter strings as
defined in QueryFilterParser.public static org.forgerock.opendj.ldap.schema.MatchingRule getCaseIgnoreJsonQueryMatchingRule()
jsonQueryMatch matching rule having the OID 1.3.6.1.4.1.36733.2.1.4.1. The
matching rule's assertion syntax is a CREST JSON query filter. This matching
rule will ignore case when comparing JSON strings as well as ignoring white-space. In addition, all JSON
fields will be indexed if indexing is enabled.public static org.forgerock.opendj.ldap.schema.MatchingRule getCaseExactJsonQueryMatchingRule()
jsonQueryMatch matching rule having the OID 1.3.6.1.4.1.36733.2.1.4.2. The
matching rule's assertion syntax is a CREST JSON query filter. This matching
rule will ignore case when comparing JSON strings as well as ignoring white-space. In addition, all JSON
fields will be indexed if indexing is enabled.public static org.forgerock.opendj.ldap.schema.MatchingRuleImpl newJsonQueryEqualityMatchingRuleImpl(String matchingRuleName, org.forgerock.util.Options options)
getCaseIgnoreJsonQueryMatchingRule().matchingRuleName - The name of the matching rule. This will be used as the index ID in attribute indexes so it must not
collide with other indexes identifiers.options - The options controlling the behavior of the matching rule.CASE_SENSITIVE_STRINGS,
IGNORE_WHITE_SPACEpublic static org.forgerock.opendj.ldap.schema.SchemaBuilder addJsonSyntaxesAndMatchingRulesToSchema(org.forgerock.opendj.ldap.schema.SchemaBuilder builder)
builder - The schema builder to which the schema elements should be added.public static org.forgerock.util.Function<org.forgerock.opendj.ldap.ByteString,Object,org.forgerock.i18n.LocalizedIllegalArgumentException> byteStringToJson()
JSON values. Invalid values will result in a
LocalizedIllegalArgumentException.JSON values.public static org.forgerock.util.Function<Object,org.forgerock.opendj.ldap.ByteString,com.fasterxml.jackson.core.JsonProcessingException> jsonToByteString()
Object to a ByteString.Object to a ByteString.Copyright © 2017-2020 Wren Security. All Rights Reserved.