You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
6d50a78 refactor: normalize container field names (Jose Celano)
74e174d refactor: [#1444] udp server event listener start in app start (Jose Celano)
2fa4e15 refactor: [#1444] udp core event listener start in app start (Jose Celano)
07c5858 refactor: [#1444] http core event listener start in app start. Step 4 (Jose Celano)
2d9af45 chore: [#1444] event listener has to be run manually on tests (Jose Celano)
19bb37d refactor: [#1444] renaem variables (Jose Celano)
6d49a13 refactor: [#1444] rename fields (Jose Celano)
5906037 refactor: [#1444] http core event listener start in app start. Step 3 (Jose Celano)
b2cf5d9 refactor: [#1444] rename variable (Jose Celano)
07d1314 refactor: [#1444] http core event listener start in app start. Step 2 (Jose Celano)
17fb909 refactor: [#1444] http core event listener start in app start. Step 1 (Jose Celano)
Pull request description:
Move the spawning of new tasks for event listeners from app container instantiation to job execution.
This will enable us to easily add more event listeners in the future. Additionally, it enhances the way the tracker handles spawned tasks. We should have control over all JoinHandles for all tasks.
This promotes a cleaner task lifecycle. Some good practices:
- There should always be an owner, responsible for the spawned tasks. No orphan tasks.
- It should be possible to gracefully shut down the task.
- The state of the task should be known.
- Sometimes the owner needs to retrieve data (for example, status) from the task (when it starts or while it's active) or send the task additional commands.
### Subtasks
- [x] HTTP Tracker Core event listener
- [x] Step 1: Separate factory from spawning task in the current `setup::factory` function.
- [x] Step 2: Split factory function into factory and running listener.
- [x] Step 3: Add `Keeper` to `HttpTrackerCoreContainer` (so we can run the listener later).
- [x] Step 4: Move task creation to app start.
- [x] Step 5. Start event listener in test environment.
- [x] UDP Tracker Core event listener (Step 1 to 4)
- [x] UDP Tracker Server event listener (Step 1 to 4)
NOTE: This PR will not include the refactor to allow multiple listeners. See #1385.
ACKs for top commit:
josecelano:
ACK 6d50a78
Tree-SHA512: 7cc637227caf3fc2e86041a25b2e2b0cdf52819dc587b972494c54f3e8337c99472bd38fc0dc76ce4b9811161cdfdf4fb4d1c65fcedea0a90f77584a88f06994
0 commit comments