register<T extends Object?> method
bool
register<T extends Object?>(
- InstanceBuilder<
T> builder, { - String? id,
- InstanceManageMode mode = InstanceManageMode.builder,
Register a builder
function
for creating a new instance of T
with an id
optional.
Use mode
parameter for defining how to manage the instance.
Returns true
when instance has been registered.
Implementation
bool register<T extends Object?>(
InstanceBuilder<T> builder, {
String? id,
InstanceManageMode mode = InstanceManageMode.builder,
}) {
var reactterInstance = _getReactterInstance<T?>(id);
if (reactterInstance != null) {
Reactter.log(
'The "$reactterInstance" builder already registered as `$mode`.',
);
return false;
}
reactterInstance = _ReactterInstanceBuilder<T>(
builder,
id: id,
mode: mode,
);
_reactterInstance.add(reactterInstance);
Reactter.emit(reactterInstance, Lifecycle.registered);
Reactter.log(
'The "$reactterInstance" builder has been registered as `$mode`.',
);
return true;
}