Context handling improvements #273
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The closures registered in the compatibility class are hooks. They also do not have any error handling.
This PR extracts dedicated hook classes for these interactions, adds error handling in case of failures, and then moves their registration into the
registerHooksmethod.As a potential failure example, imagine the service provider fails and never creates the
Coreclass (possible!), the hooks would then cause issues whenever they ran. The error handling now ensures we do not impact the consuming application.