|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opends.server.admin.PropertyDefinition<java.lang.String>
org.opends.server.admin.ClassPropertyDefinition
public final class ClassPropertyDefinition
Class property definition.
A class property definition defines a property whose values represent a Java class. It is possible to restrict the type of java class by specifying "instance of" constraints.
Note that in a client/server environment, the client is probably
not capable of validating the Java class (e.g. it will not be able
to load it nor have access to the interfaces it is supposed to
implement). For this reason, it is possible to switch off
validation in the client by calling the static method
setAllowClassValidation(boolean)
.
Nested Class Summary | |
---|---|
static class |
ClassPropertyDefinition.Builder
An interface for incrementally constructing class property definitions. |
Nested classes/interfaces inherited from class org.opends.server.admin.PropertyDefinition |
---|
PropertyDefinition.AbstractBuilder<T,D extends PropertyDefinition<T>> |
Method Summary | ||
---|---|---|
|
accept(PropertyDefinitionVisitor<R,P> v,
P p)
Apply a visitor to this property definition. |
|
|
accept(PropertyValueVisitor<R,P> v,
java.lang.String value,
P p)
Apply a visitor to a property value associated with this property definition. |
|
static ClassPropertyDefinition.Builder |
createBuilder(AbstractManagedObjectDefinition<?,?> d,
java.lang.String propertyName)
Create a class property definition builder. |
|
java.lang.String |
decodeValue(java.lang.String value)
Parse and validate a string representation of a property value. |
|
java.util.List<java.lang.String> |
getInstanceOfInterface()
Get an unmodifiable list of classes which values of this property must implement. |
|
static boolean |
isAllowClassValidation()
Determine whether or not class property definitions should validate class name property values. |
|
|
loadClass(java.lang.String className,
java.lang.Class<T> instanceOf)
Validate and load the named class, and cast it to a subclass of the specified class. |
|
java.lang.String |
normalizeValue(java.lang.String value)
Get a normalized string representation of a property value. |
|
static void |
setAllowClassValidation(boolean value)
Specify whether or not class property definitions should validate class name property values. |
|
void |
validateValue(java.lang.String value)
Determine if the provided property value is valid according to this property definition. |
Methods inherited from class org.opends.server.admin.PropertyDefinition |
---|
castValue, compare, compareTo, encodeValue, equals, getAdministratorAction, getDefaultBehaviorProvider, getDescription, getDescription, getManagedObjectDefinition, getName, getSynopsis, getSynopsis, hashCode, hasOption, initialize, toString, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Method Detail |
---|
public static ClassPropertyDefinition.Builder createBuilder(AbstractManagedObjectDefinition<?,?> d, java.lang.String propertyName)
d
- The managed object definition associated with this
property definition.propertyName
- The property name.
public static boolean isAllowClassValidation()
true
if class property definitions
should validate class name property values.public static void setAllowClassValidation(boolean value)
By default validation is switched on.
value
- true
if class property definitions should
validate class name property values.public <R,P> R accept(PropertyDefinitionVisitor<R,P> v, P p)
accept
in class PropertyDefinition<java.lang.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, java.lang.String value, P p)
accept
in class PropertyDefinition<java.lang.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 java.lang.String decodeValue(java.lang.String value) throws IllegalPropertyValueStringException
decodeValue
in class PropertyDefinition<java.lang.String>
value
- The property string value (must not be null
).
IllegalPropertyValueStringException
- If the property value string is invalid.public java.util.List<java.lang.String> getInstanceOfInterface()
public <T> java.lang.Class<? extends T> loadClass(java.lang.String className, java.lang.Class<T> instanceOf) throws IllegalPropertyValueException, java.lang.ClassCastException
T
- The requested type.className
- The name of the class to validate and load.instanceOf
- The class representing the requested type.
IllegalPropertyValueException
- If the named class was invalid, could not be loaded, or
did not implement the required interfaces.
java.lang.ClassCastException
- If the referenced class does not implement the
requested type.public java.lang.String normalizeValue(java.lang.String value) throws IllegalPropertyValueException
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<java.lang.String>
value
- The property value to be normalized.
IllegalPropertyValueException
- If the property value is invalid.public void validateValue(java.lang.String value) throws IllegalPropertyValueException
validateValue
in class PropertyDefinition<java.lang.String>
value
- The property value (must not be null
).
IllegalPropertyValueException
- If the property value is invalid.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |