MutablePropertyValues class
Mutable implementation of PropertyValues interface.
This class provides a mutable collection of PropertyValue objects that can be modified after creation. It's the standard implementation used by pod definitions to store and manage property injection configuration.
Key features:
- Add, remove, and modify property values
- Merge with other PropertyValues instances
- Convert to/from various formats
- Support for property value validation
- Thread-safe operations when needed
- Efficient lookup and iteration
Example usage:
final propertyValues = MutablePropertyValues();
// Add properties
propertyValues.add(PropertyValue('host', 'localhost'));
propertyValues.add(PropertyValue('port', 8080));
propertyValues.add(PropertyValue('timeout', 30));
// Modify existing property
propertyValues.addPropertyValue(PropertyValue('port', 9090));
// Remove property
propertyValues.removePropertyValue('timeout');
// Check for property
if (propertyValues.contains('host')) {
final hostValue = propertyValues.getPropertyValue('host');
}
- Inheritance
-
- Object
- Iterable<
PropertyValue> - PropertyValues
- MutablePropertyValues
Constructors
-
MutablePropertyValues([List<
PropertyValue> ? propertyValues]) - Mutable implementation of PropertyValues interface.
- MutablePropertyValues.copy(PropertyValues original)
- Create a deep copy of another PropertyValues instance.
- MutablePropertyValues.from(PropertyValues pvs)
-
Create from a PropertyValues instance.
factory
-
MutablePropertyValues.fromMap(Map<
String, Map< source)String, Object?> > - Create from a Map of property names to values.
Properties
- first → PropertyValue
-
The first element.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- isEmpty → bool
-
Whether the collection has no properties.
no setteroverride
- isNotEmpty → bool
-
Whether this collection has at least one element.
no setterinherited
-
iterator
→ Iterator<
PropertyValue> -
A new
Iteratorthat allows iterating the elements of thisIterable.no setteroverride - last → PropertyValue
-
The last element.
no setterinherited
- length → int
-
The number of elements in this Iterable.
no setteroverride
- logger → Log
-
Logger instance for logging messages.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- single → PropertyValue
-
Checks that this iterable has only one element, and returns that element.
no setterinherited
Methods
-
add(
String propertyName, Object? propertyValue, {String? qualifiedName, String? packageName}) → void - Add a PropertyValue object by name and value.
-
addPropertyValue(
PropertyValue pv) → MutablePropertyValues - Add a PropertyValue object, replacing any existing one for the same property.
-
addPropertyValues(
PropertyValues? other) → MutablePropertyValues - Add all property values from another PropertyValues object.
-
addPropertyValuesFromMap(
Map< String, Map< other) → MutablePropertyValuesString, Object?> > - Add all properties from a Map.
-
any(
bool test(PropertyValue element)) → bool -
Checks whether any element of this iterable satisfies
test.inherited -
cast<
R> () → Iterable< R> -
A view of this iterable as an iterable of
Rinstances.inherited -
changesSince(
PropertyValues old) → PropertyValues -
Computes the set of properties that differ compared to another
oldPropertyValues.override -
clear(
) → void - Clear all property values.
-
clearProcessedProperty(
String propertyName) → void - Clear the processed properties set.
-
contains(
Object? value) → bool -
Returns
trueif a property with the givenvalueexists.inherited -
containsProperty(
String propertyName) → bool -
Returns
trueif a property with the givenpropertyNameexists.override -
copy(
) → MutablePropertyValues - Create a deep copy of another PropertyValues instance.
-
elementAt(
int index) → PropertyValue -
Returns the
indexth element.inherited -
equalizedProperties(
) → List< Object?> -
Mixin-style contract for value-based equality,
hashCode, andtoString. -
every(
bool test(PropertyValue element)) → bool -
Checks whether every element of this iterable satisfies
test.inherited -
expand<
T> (Iterable< T> toElements(PropertyValue element)) → Iterable<T> -
Expands each element of this Iterable into zero or more elements.
inherited
-
firstWhere(
bool test(PropertyValue element), {PropertyValue orElse()?}) → PropertyValue -
The first element that satisfies the given predicate
test.inherited -
fold<
T> (T initialValue, T combine(T previousValue, PropertyValue element)) → T -
Reduces a collection to a single value by iteratively combining each
element of the collection with an existing value
inherited
-
followedBy(
Iterable< PropertyValue> other) → Iterable<PropertyValue> -
Creates the lazy concatenation of this iterable and
other.inherited -
forEach(
void action(PropertyValue element)) → void -
Invokes
actionon each element of this iterable in iteration order.inherited -
getProcessedProperties(
) → Set< String> - Get the set of processed properties.
-
getPropertyValue(
String propertyName) → PropertyValue? -
Retrieves a property by its
propertyName, ornullif not found.override -
getPropertyValueAt(
int i) → PropertyValue - Get PropertyValue at the given index.
-
getPropertyValues(
) → List< PropertyValue> -
Returns all property values as an unmodifiable list.
override
-
isConverted(
) → bool - Check if this PropertyValues has been converted.
-
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastWhere(
bool test(PropertyValue element), {PropertyValue orElse()?}) → PropertyValue -
The last element that satisfies the given predicate
test.inherited -
map<
T> (T toElement(PropertyValue e)) → Iterable< T> -
The current elements of this iterable modified by
toElement.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
reduce(
PropertyValue combine(PropertyValue value, PropertyValue element)) → PropertyValue -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function.
inherited
-
registerProcessedProperty(
String propertyName) → void - Register the specified property as processed.
-
removePropertyValue(
PropertyValue pv) → void - Remove the given PropertyValue, if contained.
-
removePropertyValueByName(
String propertyName) → void - Remove a PropertyValue by name.
-
setConverted(
) → void - Mark this PropertyValues as converted.
-
setProcessedProperties(
Set< String> processedProperties) → void - Mark the specified properties as processed.
-
setPropertyValueAt(
PropertyValue pv, int i) → MutablePropertyValues - Set a property value at a specific index, replacing any existing one.
-
singleWhere(
bool test(PropertyValue element), {PropertyValue orElse()?}) → PropertyValue -
The single element that satisfies
test.inherited -
skip(
int count) → Iterable< PropertyValue> -
Creates an Iterable that provides all but the first
countelements.inherited -
skipWhile(
bool test(PropertyValue value)) → Iterable< PropertyValue> -
Creates an
Iterablethat skips leading elements whiletestis satisfied.inherited -
take(
int count) → Iterable< PropertyValue> -
Creates a lazy iterable of the
countfirst elements of this iterable.inherited -
takeWhile(
bool test(PropertyValue value)) → Iterable< PropertyValue> -
Creates a lazy iterable of the leading elements satisfying
test.inherited -
toList(
{bool growable = true}) → List< PropertyValue> -
Creates a List containing the elements of this Iterable.
inherited
-
toSet(
) → Set< PropertyValue> -
Creates a Set containing the same elements as this iterable.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
toStringOptions(
) → ToStringOptions -
where(
bool test(PropertyValue element)) → Iterable< PropertyValue> -
Creates a new lazy Iterable with all elements that satisfy the
predicate
test.inherited -
whereType<
T> () → Iterable< T> -
Creates a new lazy Iterable with all elements that have type
T.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited