Class RequirementsBuilder
- java.lang.Object
-
- org.forgerock.selfservice.core.util.RequirementsBuilder
-
public final class RequirementsBuilder extends Object
Helper class to assist with the building of requirements.- Since:
- 0.1.0
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RequirementsBuilder
addCustomField(String name, JsonValue customJsonValue)
Add a custom Json snippet.RequirementsBuilder
addDefinition(String name, RequirementsBuilder builder)
Add a definition to the main object.RequirementsBuilder
addProperty(String name, String description)
Add a property; default type is string.RequirementsBuilder
addProperty(String name, String type, String description)
Add a property.RequirementsBuilder
addProperty(String name, RequirementsBuilder builder)
Add a property of type object.RequirementsBuilder
addRequireProperty(String name, String description)
Add a required property; default type is string.RequirementsBuilder
addRequireProperty(String name, String type, String description)
Add a required property.RequirementsBuilder
addRequireProperty(String name, RequirementsBuilder builder)
Add a required property of type object.JsonValue
build()
Builds a new json object representing the defined requirements.static RequirementsBuilder
newArray(int minItems, RequirementsBuilder builder)
Creates a new builder instance for array type creation.static RequirementsBuilder
newArray(RequirementsBuilder builder)
Creates a new builder instance for array type creation.static RequirementsBuilder
newEmptyObject()
Creates a new builder instance for empty object creation.static JsonValue
newEmptyRequirements()
Creates an empty requirements json object.static RequirementsBuilder
newInstance(String description)
Creates a new builder instance for the json schema.static RequirementsBuilder
newObject(String description)
Creates a new builder instance for object type creation.static RequirementsBuilder
oneOf(JsonValue... oneOfElements)
Creates a new builder instance for oneOf keyword.
-
-
-
Method Detail
-
addRequireProperty
public RequirementsBuilder addRequireProperty(String name, String description)
Add a required property; default type is string.- Parameters:
name
- property namedescription
- property description- Returns:
- this builder
-
addRequireProperty
public RequirementsBuilder addRequireProperty(String name, String type, String description)
Add a required property.- Parameters:
name
- property nametype
- property typedescription
- property description- Returns:
- this builder
-
addProperty
public RequirementsBuilder addProperty(String name, String description)
Add a property; default type is string.- Parameters:
name
- property namedescription
- property description- Returns:
- this builder
-
addProperty
public RequirementsBuilder addProperty(String name, String type, String description)
Add a property.- Parameters:
name
- property nametype
- property typedescription
- property description- Returns:
- this builder
-
addRequireProperty
public RequirementsBuilder addRequireProperty(String name, RequirementsBuilder builder)
Add a required property of type object.- Parameters:
name
- property namebuilder
- property value builder- Returns:
- this builder
-
addProperty
public RequirementsBuilder addProperty(String name, RequirementsBuilder builder)
Add a property of type object.- Parameters:
name
- property namebuilder
- property value builder- Returns:
- this builder
-
addDefinition
public RequirementsBuilder addDefinition(String name, RequirementsBuilder builder)
Add a definition to the main object.- Parameters:
name
- property namebuilder
- definition value builder- Returns:
- this builder
-
addCustomField
public RequirementsBuilder addCustomField(String name, JsonValue customJsonValue)
Add a custom Json snippet.- Parameters:
name
- property namecustomJsonValue
- JasonValue instance- Returns:
- this builder
-
build
public JsonValue build()
Builds a new json object representing the defined requirements.- Returns:
- the json requirements
-
newInstance
public static RequirementsBuilder newInstance(String description)
Creates a new builder instance for the json schema.- Parameters:
description
- the overall requirements description- Returns:
- a new builder instance
-
newObject
public static RequirementsBuilder newObject(String description)
Creates a new builder instance for object type creation.- Parameters:
description
- the object requirements description- Returns:
- a new builder instance
-
newEmptyObject
public static RequirementsBuilder newEmptyObject()
Creates a new builder instance for empty object creation. All properties have to be set explicitly.- Returns:
- a new builder instance
-
newArray
public static RequirementsBuilder newArray(RequirementsBuilder builder)
Creates a new builder instance for array type creation.- Parameters:
builder
- for the array item- Returns:
- a new builder instance
-
newArray
public static RequirementsBuilder newArray(int minItems, RequirementsBuilder builder)
Creates a new builder instance for array type creation.- Parameters:
minItems
- minimum number of items must present in the arraybuilder
- for the array item- Returns:
- a new builder instance
-
oneOf
public static RequirementsBuilder oneOf(JsonValue... oneOfElements)
Creates a new builder instance for oneOf keyword.- Parameters:
oneOfElements
- for the oneOf keyword- Returns:
- a new builder instance
-
newEmptyRequirements
public static JsonValue newEmptyRequirements()
Creates an empty requirements json object.- Returns:
- empty requirements json object
-
-