- All Known Subinterfaces:
Environment
- All Known Implementing Classes:
AttributeContainerMap,Attributes.Layer,Attributes.Lazy,Attributes.Mapped,Attributes.Wrapper,AttributesMap,Environment.Named
public interface Attributes
Attributes.
Interface commonly used for storing attributes.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classAnAttributesimplementation backed by anotherAttributesinstance, which is treated as immutable, but with a ConcurrentHashMap used as a mutable layer over it.static classAnAttributesimplementation that lazily creates a backing map iff it is actually needed.static classAn Attributes implementation backed by aConcurrentHashMap.static classA Wrapper of attributes -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault voidClear all attribute namesgetAttribute(String name) Get an attributeGet the immutable set of attribute names.removeAttribute(String name) Remove an attributesetAttribute(String name, Object attribute) Set an attributestatic Attributesunwrap(Attributes attributes) Unwrap allAttributes.Wrappers of the attributesstatic <T extends Attributes.Wrapper>
Tunwrap(Attributes attributes, Class<T> target) Unwrap attributes to a specific attributeAttributes.Wrapper.
-
Field Details
-
NULL
-
-
Method Details
-
removeAttribute
Remove an attribute- Parameters:
name- the attribute to remove- Returns:
- the value of the attribute if removed, else null
-
setAttribute
Set an attribute- Parameters:
name- the attribute to setattribute- the value to set. A null value is equivalent to removing the attribute.- Returns:
- the previous value of the attribute if set, else null
-
getAttribute
Get an attribute- Parameters:
name- the attribute to get- Returns:
- the value of the attribute
-
getAttributeNameSet
Get the immutable set of attribute names.- Returns:
- Set of attribute names
-
asAttributeMap
-
clearAttributes
default void clearAttributes()Clear all attribute names -
unwrap
Unwrap allAttributes.Wrappers of the attributes- Parameters:
attributes- The attributes to unwrap, which may be aAttributes.Wrapper.- Returns:
- The core attributes
-
unwrap
Unwrap attributes to a specific attributeAttributes.Wrapper.- Type Parameters:
T- The type of the targetAttributes.Wrapper.- Parameters:
attributes- The attributes to unwrap, which may be aAttributes.Wrappertarget- The targetAttributes.Wrapperclass.- Returns:
- The outermost
Attributes.Wrapperof the matching type of null if not found.
-