Managed references that in addition to keeping and locating references can also manage their lifecycle.
Extends: ReferencesDecorator
Implements: IOpenable
Description
The ManagedReferences class allows you to create managed references that in additon to keeping and locating references can also manage their lifecycle, such as:
- Auto-creation of missing components using available factories
- Auto-linking newly added components
- Auto-opening newly added components
- Auto-closing removed components
Constructors
Creates a new instance of the decorator.
ManagedReferences(List tuples)
- tuples: List - tuples where odd values are component locators (descriptors) and even values are component references
Fields
Instance methods
close
Closes the component and frees used resources.
@override
Future close(IContext? context)
- context: IContext - (optional) a context to trace execution through a call chain.
isOpen
Checks if the component is open.
@override
bool isOpen()
- returns: bool - True if the component is open and False otherwise.
open
Opens the component.
@override
Future open(IContext? context)
- context: IContext - (optional) a context to trace execution through a call chain.
Static methods
fromTuples
Removes all component references that match the specified locator.
static
ManagedReferences fromTuples(List tuples)
- locator: List - locator to remove references by.
- returns: ManagedReferences - list containing all removed references.