Modifier and Type | Optional Element and Description |
---|---|
boolean |
key
Indicates that this property becomes the name of the component.
|
boolean |
reference
Indicates that this property is a reference to another
configured inhabitant.
|
boolean |
required
Indicates that this element is required.
|
String |
value
Element name.
|
boolean |
variableExpansion
Indicates that the variable expansion should be performed on this proeprty.
|
public abstract String value
Attribute.value()
for how the default value is inferred.public abstract boolean key
public abstract boolean required
To specify the default value, simply use the field initializer to set it to a certain value. The field/method values are only set when the value is present.
public abstract boolean reference
On XML, this is represented as a string value that points
to the value of the key property
of the target
inhabitant. See the following example:
@Configured class VirtualHost { @Attribute(key=true) String name; } @Configured class HttpListener { @Attribute(reference=true) VirtualHost host; }
public abstract boolean variableExpansion
The configuration mechanism supports the Ant/Maven like variable expansion
in the configuration XML out of the box. Normally this happens transparently to objects in modules,
hence this property is set to true by default.
However, in a rare circumstance you might want to get values injected before the variables
are expanded, in which case you can set this property to false to indicate so. Note that such
property must be of type String
(or its collection/array.)
Also note the inhabitants can always access the XML infoset by talking to Dom
directly.
Copyright © 2018. All rights reserved.