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.
|
java.lang.Object |
getAttribute(java.lang.String name)
Get the value of the attribute identified by
name . |
BeanMetadataAttribute |
getMetadataAttribute(java.lang.String name)
Look up the given BeanMetadataAttribute in this accessor's set of attributes.
|
java.lang.Object |
getSource()
Return the configuration source
Object for this metadata element
(may be null ). |
java.lang.Object |
removeAttribute(java.lang.String name)
Remove the attribute identified by
name and return its value. |
void |
setAttribute(java.lang.String name,
java.lang.Object value)
Set the attribute defined by
name to the supplied value . |
void |
setSource(java.lang.Object source)
Set the configuration source
Object for this metadata element. |
attributeNames, copyAttributesFrom, equals, hasAttribute, hashCode
public void setSource(java.lang.Object source)
Object
for this metadata element.
The exact type of the object will depend on the configuration mechanism used.
public java.lang.Object getSource()
BeanMetadataElement
Object
for this metadata element
(may be null
).getSource
in interface BeanMetadataElement
public void addMetadataAttribute(BeanMetadataAttribute attribute)
attribute
- the BeanMetadataAttribute object to registerpublic BeanMetadataAttribute getMetadataAttribute(java.lang.String name)
name
- the name of the attributenull
if no such attribute definedpublic void setAttribute(java.lang.String name, java.lang.Object value)
AttributeAccessor
name
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 AttributeAccessor
setAttribute
in class AttributeAccessorSupport
name
- the unique attribute keyvalue
- the attribute value to be attachedpublic java.lang.Object getAttribute(java.lang.String name)
AttributeAccessor
name
.
Return null
if the attribute doesn't exist.getAttribute
in interface AttributeAccessor
getAttribute
in class AttributeAccessorSupport
name
- the unique attribute keypublic java.lang.Object removeAttribute(java.lang.String name)
AttributeAccessor
name
and return its value.
Return null
if no attribute under name
is found.removeAttribute
in interface AttributeAccessor
removeAttribute
in class AttributeAccessorSupport
name
- the unique attribute key