ubuntu_service library

Simple service locator API based on GetIt.

import 'package:ubuntu_service/ubuntu_service.dart';

void main() {
  registerService<MyService>(MyService.new);
  ...
}

void someWhereElse() {
  final service = getService<MyService>();
  ...
}

Functions

createService<T extends Object, P extends Object>(P param, {String? id}) → T
Locates and invokes an injected service factory.
getService<T extends Object>({String? id}) → T
Locates and returns an injected service.
hasService<T extends Object>({String? id}) bool
Returns whether a service is registered with the locator.
registerMockService<T extends Object>(T mock, {String? id}) → void
Registers a mock service for testing purposes.
registerService<T extends Object>(T create(), {String? id, FutureOr<void> dispose(T service)?}) → void
Registers a service with the locator.
registerServiceFactory<T extends Object, P extends Object>(T create(P param), {String? id}) → void
Registers a service factory with the locator.
registerServiceInstance<T extends Object>(T service, {String? id}) → void
Registers a service instance with the locator.
resetAllServices() Future<void>
Resets and disposes all registered services.
resetService<T extends Object>({String? id, FutureOr<void> dispose(T service)?}) → void
Locates and resets an injected service.
tryCreateService<T extends Object, P extends Object>(P param, {String? id}) → T?
Locates and invokes an injected service factory or returns null if not found.
tryGetService<T extends Object>({String? id}) → T?
Locates and returns an injected service or null if not found.
tryRegisterService<T extends Object>(T create(), {String? id, FutureOr<void> dispose(T service)?}) → void
Registers a service with the locator but only if not already registered.
tryRegisterServiceFactory<T extends Object, P extends Object>(T create(P param), {String? id}) → void
Registers a service factory with the locator but only if not already registered.
tryRegisterServiceInstance<T extends Object>(T service, {String? id}) → void
Registers a service instance with the locator but only if not already registered.
unregisterMockService<T extends Object>({String? id}) → void
Unregisters a mock service for testing purposes.
unregisterService<T extends Object>({String? id, FutureOr<void> dispose(T service)?}) → void
Unregisters a service instance with the locator.