Class Attribute

  • All Implemented Interfaces:
    com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware, Serializable

    public class Attribute
    extends Object
    implements Serializable, com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
    Many entities have customizable dynamic attributes, and this class is intended to hold such values.

    Attributes are placed on domain objects as a map of attribute names to attribute values: Map<String, Attribute>.

    Author:
    Samarth Dhruva, Chris Kittrell (ckittrell)
    See Also:
    Serialized Form
    • Constructor Detail

      • Attribute

        public Attribute()
    • Method Detail

      • getValue

        public Object getValue()
        The value represented by this attribute. Attributes are generally placed on domain objects as a map of attribute names to attribute values: Map<String, Attribute>.
        Returns:
        the value represented by this attribute
      • getContextState

        public com.broadleafcommerce.data.tracking.core.EmbeddedContextState getContextState()
        A subset of Tracking information to expose the context state for this object. This value is not persisted, and instead it is dynamically calculated and populated when the ChangeDetails for the parent object's entire attributes map are compared.
        Specified by:
        getContextState in interface com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
        Returns:
        a subset of Tracking information to expose the context state for this object
      • setValue

        public void setValue​(Object value)
        The value represented by this attribute. Attributes are generally placed on domain objects as a map of attribute names to attribute values: Map<String, Attribute>.
        Parameters:
        value - the value represented by this attribute
      • setContextState

        public void setContextState​(com.broadleafcommerce.data.tracking.core.EmbeddedContextState contextState)
        A subset of Tracking information to expose the context state for this object. This value is not persisted, and instead it is dynamically calculated and populated when the ChangeDetails for the parent object's entire attributes map are compared.
        Specified by:
        setContextState in interface com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
        Parameters:
        contextState - a subset of Tracking information to expose the context state for this object
      • canEqual

        protected boolean canEqual​(Object other)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object