instance_manager library
June Instance Manager is a modern and intelligent dependency injector that injects and removes dependencies seasonally.
Classes
- Connections
-
Connections should be extended or implemented.
When using
JuneMaterialApp
, allJunePage
s and navigation methods (like June.to()) have abinding
property that takes an instance of Connections to manage the dependencies() (via June.put()) for the Route you are opening. -
ConnectionsInterface<
T> - Engine
- InstanceDetails
- JuneInterface
- JuneInterface allows any auxiliary package to be merged into the "June" class through extensions
- JuneService
- Unlike JuneState, which serves to control events on each of its pages, JuneService is not automatically disposed (nor can be removed with June.delete()). It is ideal for situations where, once started, that service will remain in memory, such as Auth control for example. Only way to remove it is June.reset().
-
RouterReportManager<
T>
Enums
- IntelligentManagement
- JuneX by default disposes unused controllers from memory, Through different behaviors. IntelligentManagement.full IntelligentManagement.full is the default one. Dispose classes that are not being used and were not set to be permanent. In the majority of the cases you will want to keep this config untouched. If you new to JuneX then don't change this. IntelligentManagement.onlyBuilder only controllers started in init: or loaded into a Binding with June.lazyPut() will be disposed. If you use June.put() or June.putAsync() or any other approach, IntelligentManagement will not have permissions to exclude this dependency. With the default behavior, even widgets instantiated with "June.put" will be removed, unlike IntelligentManagement.onlyBuilders. IntelligentManagement.keepFactoryJust like IntelligentManagement.full, it will remove it's dependencies when it's not being used anymore. However, it will keep their factory, which means it will recreate the dependency if you need that instance again.
Mixins
- JuneLifeCycleMixin
-
The
JuneLifeCycle
- JuneServiceMixin
- Allow track difference between JuneServices and JuneStates
Extensions
Properties
- June → _JuneImpl
-
final
Functions
-
obscure<
T> (T? value) → T? - This allows a value of type T or T? to be treated as a value of type T?.
Typedefs
- AdapterCallback = void Function()
-
AsyncBuilderPattern<
S> = Future< S> Function() -
BuilderPattern<
S> = S Function() -
InstanceCreateBuilderCallback<
S> = S Function(BuildContext _) -
StateUpdater<
T> = T Function()