|
|||||||||
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.AggregationPropertyDefinition<C,S>
C
- The type of client managed object configuration that this
aggregation property definition refers to.S
- The type of server managed object configuration that this
aggregation property definition refers to.public final class AggregationPropertyDefinition<C extends ConfigurationClient,S extends Configuration>
Aggregation property definition.
An aggregation property names one or more managed objects which are required by the managed object associated with this property. An aggregation property definition takes care to perform referential integrity checks: referenced managed objects cannot be deleted. Nor can an aggregation reference non-existent managed objects. Referential integrity checks are not performed during value validation. Instead they are performed when changes to the managed object are committed.
An aggregation property definition can optionally identify two properties:
enabled
property in the aggregated managed
object - the property must be a BooleanPropertyDefinition
and indicate whether the aggregated managed object is enabled or
not. If specified, the administration framework will prevent the
aggregated managed object from being disabled while it is
referenced
enabled
property in this property's managed
object - the property must be a BooleanPropertyDefinition
and indicate whether this property's managed object is enabled or
not. If specified, and as long as there is an equivalent
enabled
property defined for the aggregated managed
object, the enabled
property in the aggregated
managed object will only be checked when this property is true.
Nested Class Summary | |
---|---|
static class |
AggregationPropertyDefinition.Builder<C extends ConfigurationClient,S extends Configuration>
An interface for incrementally constructing aggregation 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
|
createBuilder(AbstractManagedObjectDefinition<?,?> d,
java.lang.String propertyName)
Creates an aggregation property definition builder. |
|
java.lang.String |
decodeValue(java.lang.String value)
Parse and validate a string representation of a property value. |
|
DN |
getChildDN(java.lang.String name)
Constructs a DN for a referenced managed object having the provided name. |
|
ManagedObjectPath<C,S> |
getChildPath(java.lang.String name)
Constructs a managed object path for a referenced managed object having the provided name. |
|
ManagedObjectPath<?,?> |
getParentPath()
Gets the name of the managed object which is the parent of the aggregated managed objects. |
|
InstantiableRelationDefinition<C,S> |
getRelationDefinition()
Gets the relation in the parent managed object which contains the aggregated managed objects. |
|
Constraint |
getSourceConstraint()
Gets the constraint which should be enforced on the aggregating managed object. |
|
Message |
getSourceConstraintSynopsis()
Gets the optional constraint synopsis of this aggregation property definition in the default locale. |
|
Message |
getSourceConstraintSynopsis(java.util.Locale locale)
Gets the optional constraint synopsis of this aggregation property definition in the specified locale.The constraint synopsis describes when and how referenced managed objects must be enabled. |
|
Condition |
getTargetIsEnabledCondition()
Gets the condition which is used to determine if a referenced managed object is enabled. |
|
Condition |
getTargetNeedsEnablingCondition()
Gets the condition which is used to determine whether or not referenced managed objects need to be enabled. |
|
void |
initialize()
Performs any run-time initialization required by this property definition. |
|
java.lang.String |
normalizeValue(java.lang.String value)
Get a normalized string representation of a property value. |
|
void |
toString(java.lang.StringBuilder builder)
Append a string representation of the property definition to the provided string builder. |
|
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, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Method Detail |
---|
public static <C extends ConfigurationClient,S extends Configuration> AggregationPropertyDefinition.Builder<C,S> createBuilder(AbstractManagedObjectDefinition<?,?> d, java.lang.String propertyName)
C
- The type of client managed object configuration that
this aggregation property definition refers to.S
- The type of server managed object configuration that
this aggregation property definition refers to.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<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 final DN getChildDN(java.lang.String name)
getChildPath(String)
and then invoking
ManagedObjectPath.toDN()
on the returned path.
name
- The name of the child managed object.
public final ManagedObjectPath<C,S> getChildPath(java.lang.String name)
name
- The name of the child managed object.
public final ManagedObjectPath<?,?> getParentPath()
public final InstantiableRelationDefinition<C,S> getRelationDefinition()
public final Constraint getSourceConstraint()
public final Message getSourceConstraintSynopsis()
null
is returned.
null
if there is no constraint synopsis.public final Message getSourceConstraintSynopsis(java.util.Locale locale)
null
is returned.
locale
- The locale.
null
if there is no constraint
synopsis.public final Condition getTargetIsEnabledCondition()
public final Condition getTargetNeedsEnablingCondition()
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 toString(java.lang.StringBuilder builder)
This simple implementation just outputs the propertyName of the property definition. Sub-classes should override this method to provide more complete string representations.
toString
in class PropertyDefinition<java.lang.String>
builder
- The string builder where the string representation
should be appended.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.public void initialize() throws java.lang.Exception
initialize
in class PropertyDefinition<java.lang.String>
java.lang.Exception
- If this property definition could not be initialized.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |