Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Decouple & isolate handling from specialised causes & handlers #759

Merged
merged 6 commits into from
May 10, 2021

Conversation

nolar
Copy link
Owner

@nolar nolar commented May 10, 2021

The goal is to make "handling" fully isolated so that it could be moved to the lower levels of the reactor/core.

For this, rudimentary base classes (almost interfaces) are extracted from causes, handlers, and states — while the specialised modules extend them as needed: e.g. states are needed only in read-only mode for handling, while the actual states are capable of producing derived/modified states.

More details can be found in separate commits.

nolar added 4 commits May 10, 2021 22:16
Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
This breaks the dependency of the "handling" routines to the specialised causes & handlers types.

Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
@nolar nolar added the refactoring Code cleanup without new features added label May 10, 2021
nolar added 2 commits May 10, 2021 23:26
Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
This includes everything that makes "handling" pure and isolated from the rest of the framework. Specialised handlers and causes are defined and used elsewhere, though they remain based on the protocols defined in the base classes.

Signed-off-by: Sergey Vasilyev <nolar@nolar.info>
@nolar nolar force-pushed the refactor-handler-execution branch from d8b88ee to 7924793 Compare May 10, 2021 21:27
@nolar nolar merged commit daf42e4 into main May 10, 2021
@nolar nolar deleted the refactor-handler-execution branch May 10, 2021 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactoring Code cleanup without new features added
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant