-
Notifications
You must be signed in to change notification settings - Fork 85
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
Implement logic for adding/removing notifiers for a given ObserverGraph #1023
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1023 +/- ##
==========================================
+ Coverage 73.05% 76.70% +3.65%
==========================================
Files 51 61 +10
Lines 6514 6698 +184
Branches 1309 1294 -15
==========================================
+ Hits 4759 5138 +379
+ Misses 1363 1215 -148
+ Partials 392 345 -47
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me. I recall that I looked over the code on this from the POC PR, so I don't have any issues with the implementation.
Thank you @ievacerny and @corranwebster! |
Closes #1021
Item 6 of #977
This PR adds a function
add_or_remove_notifiers
for adding/removing notifiers for a givenObserverGraph
.IObserver
interface is expanded to supportadd_or_remove_notifiers
.INotifier
interface to supportadd_or_remove_notifiers
. TheTraitEventNotifier
(in Add notifier for wrapping user handler for the observer framework #1000) andObserverChangeNotifier
(in Add notifier for maintaining nested notifiers in the observer framework #1007) implement theINotifier
interface introduced here. It is possible that this PR might need changes per review outcome of Add notifier for wrapping user handler for the observer framework #1000 and Add notifier for maintaining nested notifiers in the observer framework #1007. The formal registration can happen later... or not happen at all.Checklist
Update API reference (: Things here are still private. Module names are preceded with an underscore.docs/source/traits_api_reference
)Update User manual (: Things here are still private.docs/source/traits_user_manual
)Update type annotation hints in: Nothing here are trait-edtraits-stubs