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
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)
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)
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) throws PropertyException
decodeValue
in class PropertyDefinition<String>
value
- The property string value (must not be null
).PropertyException
- If the property value string is invalid.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) throws PropertyException
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.PropertyException
- If the property value is invalid.public void validateValue(String value) throws PropertyException
validateValue
in class PropertyDefinition<String>
value
- The property value (must not be null
).PropertyException
- If the property value is invalid.Copyright © 2010-2016 ForgeRock AS. All Rights Reserved.