public class BeanMetadataAttributeAccessor extends AttributeAccessorSupport implements BeanMetadataElement
AttributeAccessorSupport,
holding attributes as BeanMetadataAttribute objects in order
to keep track of the definition source.| Constructor and Description |
|---|
BeanMetadataAttributeAccessor() |
| Modifier and Type | Method and Description |
|---|---|
void |
addMetadataAttribute(BeanMetadataAttribute attribute)
Add the given BeanMetadataAttribute to this accessor's set of attributes.
|
Object |
getAttribute(String name)
Get the value of the attribute identified by
name. |
BeanMetadataAttribute |
getMetadataAttribute(String name)
Look up the given BeanMetadataAttribute in this accessor's set of attributes.
|
Object |
getSource()
Return the configuration source
Object for this metadata element
(may be null). |
Object |
removeAttribute(String name)
Remove the attribute identified by
name and return its value. |
void |
setAttribute(String name,
Object value)
Set the attribute defined by
name to the supplied value. |
void |
setSource(Object source)
Set the configuration source
Object for this metadata element. |
attributeNames, copyAttributesFrom, equals, hasAttribute, hashCodepublic void setSource(@Nullable Object source)
Object for this metadata element.
The exact type of the object will depend on the configuration mechanism used.
@Nullable public Object getSource()
BeanMetadataElementObject for this metadata element
(may be null).getSource in interface BeanMetadataElementpublic void addMetadataAttribute(BeanMetadataAttribute attribute)
attribute - the BeanMetadataAttribute object to register@Nullable public BeanMetadataAttribute getMetadataAttribute(String name)
name - the name of the attributenull if no such attribute definedpublic void setAttribute(String name, @Nullable Object value)
AttributeAccessorname to the supplied value.
If value is null, the attribute is removed.
In general, users should take care to prevent overlaps with other metadata attributes by using fully-qualified names, perhaps using class or package names as prefix.
setAttribute in interface AttributeAccessorsetAttribute in class AttributeAccessorSupportname - the unique attribute keyvalue - the attribute value to be attached@Nullable public Object getAttribute(String name)
AttributeAccessorname.
Return null if the attribute doesn't exist.getAttribute in interface AttributeAccessorgetAttribute in class AttributeAccessorSupportname - the unique attribute key@Nullable public Object removeAttribute(String name)
AttributeAccessorname and return its value.
Return null if no attribute under name is found.removeAttribute in interface AttributeAccessorremoveAttribute in class AttributeAccessorSupportname - the unique attribute key