register method

  1. @override
void register(
  1. Rewo app
)
override

Register routes, services, and event listeners on the app.

Implementation

@override
void register(Rewo app) {
  final repo = InMemoryRepository<User, String>(getId: (u) => u.id);
  app.singleton(repo);
  app.singleton(UserService(
    repo,
    app.container.resolve<EventBus>(),
    app.container.resolve<TransactionManager>(),
  ));
  app.mount(UserController(app.container.resolve<UserService>()));
  app.mount(GeneratedUserController());

  app.events.on<UserCreatedEvent>((e) {
    // ignore: avoid_print
    print('📣 User created: ${e.user.email}');
  });
}