-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
completed SwitchOnFirst impl #1423
Conversation
reactor-core/src/main/java/reactor/core/publisher/FluxSwitchOnFirst.java
Outdated
Show resolved
Hide resolved
Codecov Report
@@ Coverage Diff @@
## master #1423 +/- ##
===========================================
- Coverage 84.27% 84.18% -0.1%
- Complexity 3895 3910 +15
===========================================
Files 358 359 +1
Lines 29435 29760 +325
Branches 5464 5527 +63
===========================================
+ Hits 24806 25052 +246
- Misses 3030 3078 +48
- Partials 1599 1630 +31
Continue to review full report at Codecov.
|
reactor-core/src/main/java/reactor/core/publisher/Operators.java
Outdated
Show resolved
Hide resolved
@OlegDokuka we'll hopefully have time to review in depth for 3.2.4 release, won't be able to in time for thursday's 3.2.3, but we haven't forgotten about this PR 😉 |
Hope this time it will not be like with AsyncFileFlux ;) |
Since it took a bit of time to understand this operator, here is a link to the original PR where this operator was added to rsocket-java: I find the description quite informative:
|
reactor-core/src/test/java/reactor/core/publisher/FluxSwitchOnFirstTest.java
Outdated
Show resolved
Hide resolved
reactor-core/src/test/java/reactor/core/publisher/FluxSwitchOnFirstTest.java
Outdated
Show resolved
Hide resolved
reactor-core/src/test/java/reactor/core/publisher/FluxSwitchOnFirstTest.java
Outdated
Show resolved
Hide resolved
reactor-core/src/test/java/reactor/core/publisher/FluxSwitchOnFirstTest.java
Show resolved
Hide resolved
reactor-core/src/main/java/reactor/core/publisher/FluxSwitchOnFirst.java
Outdated
Show resolved
Hide resolved
reactor-core/src/main/java/reactor/core/publisher/FluxSwitchOnFirst.java
Outdated
Show resolved
Hide resolved
reactor-core/src/main/java/reactor/core/publisher/FluxSwitchOnFirst.java
Outdated
Show resolved
Hide resolved
Co-Authored-By: OlegDokuka <shadowgun@i.ua>
please add more commit as you fix the review elements @OlegDokuka, we'll rebase/squash in the final step (or I'll squash when merging) |
1b97c49
to
f7e6a74
Compare
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.
Thanks for the changes! I found another small test issue (assumption instead of assertion), plus it is still missing some documentation and a test for toConditionalSubscriber
, otherwise LGTM
reactor-core/src/test/java/reactor/core/publisher/FluxSwitchOnFirstTest.java
Outdated
Show resolved
Hide resolved
@simonbasle WIP. I'm traveling right now, so trying to push commits in transition 😄 |
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.
please don't include a marble yet, there is an upcoming PR making contribution of marbles much easier and much more likely to produce similar-looking marbles.
Can you please remove both image files from this PR and add the operator to the list of missing SVG (see comment on the javadoc URL)?
Other issues listed in comments.
reactor-core/src/main/java/reactor/core/publisher/Operators.java
Outdated
Show resolved
Hide resolved
reactor-core/src/main/java/reactor/core/publisher/Operators.java
Outdated
Show resolved
Hide resolved
reactor-core/src/main/java/reactor/core/publisher/Operators.java
Outdated
Show resolved
Hide resolved
Co-Authored-By: OlegDokuka <shadowgun@i.ua>
Co-Authored-By: OlegDokuka <shadowgun@i.ua>
Co-Authored-By: OlegDokuka <shadowgun@i.ua>
Co-Authored-By: OlegDokuka <shadowgun@i.ua>
porting of the
SwitchOnFirst
operator's implementation with no fusion for now. This is a complete, tested, merge-ready implementation. Fuseable part will be submitted separately since it is a little bit tricky