Record Class InheritedAttributes
java.lang.Object
java.lang.Record
dev.getelements.elements.sdk.util.InheritedAttributes
- Record Components:
base- the base attributes, may be null and will be replaced withAttributes.emptyAttributes()current- the current attributes that are inherited from the base attributes
- All Implemented Interfaces:
Attributes
public record InheritedAttributes(Attributes base, Attributes current)
extends Record
implements Attributes
A type of
Attributes that inherits from a base set of attributes.-
Nested Class Summary
Nested classes/interfaces inherited from interface dev.getelements.elements.sdk.Attributes
Attributes.Attribute<T> -
Field Summary
Fields inherited from interface dev.getelements.elements.sdk.Attributes
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionInheritedAttributes(Attributes base, Attributes current) Creates an instance of aInheritedAttributesrecord class. -
Method Summary
Modifier and TypeMethodDescriptionbase()Returns the value of thebaserecord component.current()Returns the value of thecurrentrecord component.final booleanIndicates whether some other object is "equal to" this one.getAttributeOptional(String name) Gets the attribute associated with thisAttributesobject.final inthashCode()Returns a hash code value for this object.Returns a copy of thisAttributesas an immutable copy.newDerivativeFrom(Attributes attributes) Derives a new set of attributes from the current set of attributes.newDerivativeFrom(MutableAttributes attributes) Derives a new set of attributes from the current set of attributes.final StringtoString()Returns a string representation of this record class.static InheritedAttributeswithAttributes(Attributes current) Creates anInheritedAttributesobject that inherits from the given attributes.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface dev.getelements.elements.sdk.Attributes
asMap, asProperties, asProperties, getAttribute, stream
-
Constructor Details
-
Method Details
-
withAttributes
Creates anInheritedAttributesobject that inherits from the given attributes.- Parameters:
current- the attributes to inherit from- Returns:
- the new
InheritedAttributes
-
getAttributeNames
Description copied from interface:Attributes- Specified by:
getAttributeNamesin interfaceAttributes- Returns:
- the
List<String>of attribute names
-
getAttributeOptional
Description copied from interface:AttributesGets the attribute associated with thisAttributesobject.- Specified by:
getAttributeOptionalin interfaceAttributes- Parameters:
name- the name of the attribute to fetch- Returns:
- an
Optional<Object>for the value
-
immutableCopy
Description copied from interface:AttributesReturns a copy of thisAttributesas an immutable copy. Alternatively, if this instance is already immutable, then this will return this instance.- Specified by:
immutableCopyin interfaceAttributes- Returns:
- an immutable copy of this
Attributes
-
newDerivativeFrom
Derives a new set of attributes from the current set of attributes.- Parameters:
attributes- the attributes- Returns:
- the new
InheritedAttributes
-
newDerivativeFrom
Derives a new set of attributes from the current set of attributes.- Parameters:
attributes- the attributes- Returns:
- the new
InheritedAttributes
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
base
Returns the value of thebaserecord component.- Returns:
- the value of the
baserecord component
-
current
Returns the value of thecurrentrecord component.- Returns:
- the value of the
currentrecord component
-