ClientLifecycleComponent.fromClassElement constructor
ClientLifecycleComponent.fromClassElement(
- ClassElement element
Implementation
factory ClientLifecycleComponent.fromClassElement(ClassElement element) {
final methods = element.methods
.map(ClientLifecycleComponentMethod.fromElement)
.whereType<ClientLifecycleComponentMethod>()
.toList();
final guards = <ClientLifecycleComponentMethod>[];
final middlewares = <ClientLifecycleComponentMethod>[];
final interceptors = (
pre: <ClientLifecycleComponentMethod>[],
post: <ClientLifecycleComponentMethod>[],
);
for (final method in methods) {
final _ = switch (true) {
_ when method.isGuard => guards.add(method),
_ when method.isMiddleware => middlewares.add(method),
_ when method.isInterceptorPre => interceptors.pre.add(method),
_ when method.isInterceptorPost => interceptors.post.add(method),
_ => null,
};
}
return ClientLifecycleComponent(
guards: guards,
middlewares: middlewares,
interceptors: interceptors,
);
}