public final class Attribute<T> extends Object implements Cloneable, Matchable<Attribute<?>>
AttributeDefinition
.
An attribute contains an optional value (or defers to its AttributeDefinition for the default value). It is possible to determine whether
a value has been changed with respect to its initial value. An Attribute remains modifiable until it is protected. At which point it can only
be modified if its AttributeDefinition allows it to be mutable. Additionally it is possible to register listeners when values change so that
code can react to these changes.Modifier and Type | Method and Description |
---|---|
void |
addListener(AttributeListener<T> listener) |
<K> K |
asObject() |
protected Attribute<T> |
clone() |
T |
computeIfAbsent(Supplier<T> supplier) |
boolean |
equals(Object obj) |
T |
get() |
AttributeDefinition<T> |
getAttributeDefinition() |
T |
getInitialValue() |
int |
hashCode() |
boolean |
isImmutable() |
boolean |
isModified() |
boolean |
isNull() |
boolean |
isPersistent() |
boolean |
matches(Attribute<?> other)
Compares this attribute to another attribute taking into account the
AttributeDefinition.isGlobal() flag. |
String |
name() |
Attribute<T> |
protect() |
void |
read(Attribute<T> other) |
void |
removeListener(AttributeListener<T> listener) |
void |
reset() |
void |
set(T value) |
String |
toString() |
void |
validate() |
protected T value
public String name()
public T get()
public T getInitialValue()
public void validate()
public void set(T value)
public boolean isImmutable()
public boolean isPersistent()
public boolean isModified()
public <K> K asObject()
public void addListener(AttributeListener<T> listener)
public void removeListener(AttributeListener<T> listener)
public boolean isNull()
public AttributeDefinition<T> getAttributeDefinition()
public boolean matches(Attribute<?> other)
AttributeDefinition.isGlobal()
flag.
If the attribute is global, then this method will return true only if the values are identical.
If the attribute is local, then this method will return true even if the values don't match.
Essentially, this method only ensures that the attribute definitions are equals.public void reset()
Copyright © 2021 JBoss by Red Hat. All rights reserved.