12345678910111213141516171819202122 |
- import 'interface/handler.dart';
- /// 处理器调度员
- class HandlerDispatcher implements IHandlerProvider, IHandlerRegistrable {
- final Map<int, IHandler> _map = {};
- @override
- IHandler? getHandler(int type) {
- final handler = _map[type];
- return handler;
- }
- @override
- void register<T>(IHandler<T> handler) {
- _map[handler.typeInt] = handler;
- }
- @override
- void deregister<T>(IHandler<T> handler) {
- _map.remove(handler.typeInt);
- }
- }
|