Class MutablePropertyValues

    • Constructor Detail

      • MutablePropertyValues

        public MutablePropertyValues​(Map<?,​?> original)
        Construct a new MutablePropertyValues object from a Map.
        Parameters:
        original - Map with property values keyed by property name Strings
        See Also:
        addPropertyValues(Map)
      • MutablePropertyValues

        public MutablePropertyValues​(List<PropertyValue> propertyValueList)
        Construct a new MutablePropertyValues object using the given List of PropertyValue objects as-is.

        This is a constructor for advanced usage scenarios. It is not intended for typical programmatic use.

        Parameters:
        propertyValueList - List of PropertyValue objects
    • Method Detail

      • getPropertyValueList

        public List<PropertyValuegetPropertyValueList()
        Return the underlying List of PropertyValue objects in its raw form. The returned List can be modified directly, although this is not recommended.

        This is an accessor for optimized access to all PropertyValue objects. It is not intended for typical programmatic use.

      • size

        public int size()
        Return the number of PropertyValue entries in the list.
      • addPropertyValues

        public MutablePropertyValues addPropertyValues​(PropertyValues other)
        Copy all given PropertyValues into this object. Guarantees PropertyValue references are independent, although it can't deep copy objects currently referenced by individual PropertyValue objects.
        Parameters:
        other - the PropertyValues to copy
        Returns:
        this in order to allow for adding multiple property values in a chain
      • addPropertyValues

        public MutablePropertyValues addPropertyValues​(Map<?,​?> other)
        Add all property values from the given Map.
        Parameters:
        other - Map with property values keyed by property name, which must be a String
        Returns:
        this in order to allow for adding multiple property values in a chain
      • addPropertyValue

        public MutablePropertyValues addPropertyValue​(PropertyValue pv)
        Add a PropertyValue object, replacing any existing one for the corresponding property or getting merged with it (if applicable).
        Parameters:
        pv - PropertyValue object to add
        Returns:
        this in order to allow for adding multiple property values in a chain
      • add

        public MutablePropertyValues add​(String propertyName,
                                         Object propertyValue)
        Add a PropertyValue object, replacing any existing one for the corresponding property or getting merged with it (if applicable).
        Parameters:
        propertyName - name of the property
        propertyValue - value of the property
        Returns:
        this in order to allow for adding multiple property values in a chain
      • removePropertyValue

        public void removePropertyValue​(PropertyValue pv)
        Remove the given PropertyValue, if contained.
        Parameters:
        pv - the PropertyValue to remove
      • contains

        public boolean contains​(String propertyName)
        Description copied from interface: PropertyValues
        Is there a property value (or other processing entry) for this property?
        Specified by:
        contains in interface PropertyValues
        Parameters:
        propertyName - the name of the property we're interested in
        Returns:
        whether there is a property value for this property
      • registerProcessedProperty

        public void registerProcessedProperty​(String propertyName)
        Register the specified property as "processed" in the sense of some processor calling the corresponding setter method outside of the PropertyValue(s) mechanism.

        This will lead to true being returned from a contains(java.lang.String) call for the specified property.

        Parameters:
        propertyName - the name of the property.
      • clearProcessedProperty

        public void clearProcessedProperty​(String propertyName)
        Clear the "processed" registration of the given property, if any.
        Since:
        3.2.13
      • setConverted

        public void setConverted()
        Mark this holder as containing converted values only (i.e. no runtime resolution needed anymore).
      • isConverted

        public boolean isConverted()
        Return whether this holder contains converted values only (true), or whether the values still need to be converted (false).