public final class StringPropertyDefinition extends PropertyDefinition<String>
Modifier and Type | Class and Description |
---|---|
static class |
StringPropertyDefinition.Builder
An interface for incrementally constructing string property definitions.
|
PropertyDefinition.AbstractBuilder<T,D extends PropertyDefinition<T>>
Modifier and Type | Method and Description |
---|---|
<R,P> R |
accept(PropertyDefinitionVisitor<R,P> v,
P p)
Apply a visitor to this property definition.
|
<R,P> R |
accept(PropertyValueVisitor<R,P> v,
String value,
P p)
Apply a visitor to a property value associated with this property
definition.
|
static StringPropertyDefinition.Builder |
createBuilder(AbstractManagedObjectDefinition<?,?> d,
String propertyName)
Create a string property definition builder.
|
String |
decodeValue(String value)
Parse and validate a string representation of a property value.
|
Pattern |
getPattern()
Gets the optional regular expression pattern which values of this
property must match.
|
LocalizableMessage |
getPatternSynopsis()
Gets the pattern synopsis of this string property definition in the
default locale.
|
LocalizableMessage |
getPatternSynopsis(Locale locale)
Gets the optional pattern synopsis of this string property definition in
the specified locale.
|
String |
getPatternUsage()
Gets a user-friendly usage string representing the pattern which can be
used in error messages and help (e.g.
|
boolean |
isCaseInsensitive()
Query whether values of this property are case-insensitive.
|
String |
normalizeValue(String value)
Get a normalized string representation of a property value.
|
void |
validateValue(String value)
Determine if the provided property value is valid according to this
property definition.
|
castValue, compare, compareTo, encodeValue, equals, getAdministratorAction, getDefaultBehaviorProvider, getDescription, getDescription, getManagedObjectDefinition, getName, getSynopsis, getSynopsis, hashCode, hasOption, initialize, toString, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
comparing, comparing, comparingDouble, comparingInt, comparingLong, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
public static StringPropertyDefinition.Builder createBuilder(AbstractManagedObjectDefinition<?,?> d, String propertyName)
d
- The managed object definition associated with this property
definition.propertyName
- The property name.public <R,P> R accept(PropertyDefinitionVisitor<R,P> v, P p)
PropertyDefinition
accept
in class PropertyDefinition<String>
R
- The return type of the visitor's methods.P
- The type of the additional parameters to the visitor's
methods.v
- The property definition visitor.p
- Optional additional visitor parameter.public <R,P> R accept(PropertyValueVisitor<R,P> v, String value, P p)
PropertyDefinition
accept
in class PropertyDefinition<String>
R
- The return type of the visitor's methods.P
- The type of the additional parameters to the visitor's
methods.v
- The property value visitor.value
- The property value.p
- Optional additional visitor parameter.public String decodeValue(String value)
PropertyDefinition
decodeValue
in class PropertyDefinition<String>
value
- The property string value (must not be null
).public Pattern getPattern()
null
if there is no
pattern.public LocalizableMessage getPatternSynopsis()
null
if there is no
pattern synopsis (which is the case when there is no pattern
matching defined for this string property definition).public LocalizableMessage getPatternSynopsis(Locale locale)
locale
- The locale.null
if there is no
pattern synopsis (which is the case when there is no pattern
matching defined for this string property definition).public String getPatternUsage()
null
if there is no pattern.public boolean isCaseInsensitive()
true
if values are case-insensitive, or
false
otherwise.public String normalizeValue(String value)
PropertyDefinition
This method may throw an exception if the provided value is invalid.
However, applications should not assume that implementations of this
method will always validate a value. This task is the responsibility of
PropertyDefinition.validateValue(Object)
.
This default implementation simply returns the string representation of the provided value. Sub-classes might want to override this method if this behavior is insufficient (for example, a string property definition might strip white-space and convert characters to lower-case).
normalizeValue
in class PropertyDefinition<String>
value
- The property value to be normalized.public void validateValue(String value)
PropertyDefinition
validateValue
in class PropertyDefinition<String>
value
- The property value (must not be null
).Copyright 2010-2020 ForgeRock AS.