Mono doOnEmpty in Reactor?How to subscribe to inner Flux/Mono automatically?Wrapping blocking I/O in project reactorReactor. List of Monos, retry on failHow to save in reactive way using Project reactorHow switch Mono<A>.empty() to another type item Mono<B>Using Mono methods with dynamic parametersSpring webflux “Only one connection receive subscriber allowed” if return server response from switchIfEmptyProject Reactor: doOnNext (or the others doOnXXX) asyncReactor: Expand a ParallelFluxGetting first onNext signal from list of Mono
Is camera lens focus an exact point or a range?
How will losing mobility of one hand affect my career as a programmer?
Should I install hardwood flooring or cabinets first?
Can a significant change in incentives void an employment contract?
Find last 3 digits of this monster number
How can "mimic phobia" be cured or prevented?
Create all possible words using a set or letters
How to express sadness?
Can we have a perfect cadence in a minor key?
When quoting, must I also copy hyphens used to divide words that continue on the next line?
Gibbs free energy in standard state vs. equilibrium
Visiting the UK as unmarried couple
Is there a conventional notation or name for the slip angle?
What is this type of notehead called?
What (else) happened July 1st 1858 in London?
What's the difference between 違法 and 不法?
Did US corporations pay demonstrators in the German demonstrations against article 13?
Can I sign legal documents with a smiley face?
Is XSS in canonical link possible?
Can I use my Chinese passport to enter China after I acquired another citizenship?
How do I extrude a face to a single vertex
Customize circled numbers
Proof of Lemma: Every nonzero integer can be written as a product of primes
Is there a word to describe the feeling of being transfixed out of horror?
Mono doOnEmpty in Reactor?
How to subscribe to inner Flux/Mono automatically?Wrapping blocking I/O in project reactorReactor. List of Monos, retry on failHow to save in reactive way using Project reactorHow switch Mono<A>.empty() to another type item Mono<B>Using Mono methods with dynamic parametersSpring webflux “Only one connection receive subscriber allowed” if return server response from switchIfEmptyProject Reactor: doOnNext (or the others doOnXXX) asyncReactor: Expand a ParallelFluxGetting first onNext signal from list of Mono
Is there any operator on Mono
that would allow me to log fact that mono was empty?
I cannot use hasElement()
because I need result and I don't want to introduce hacky solutions like abusing switchIfEmpty
project-reactor
add a comment |
Is there any operator on Mono
that would allow me to log fact that mono was empty?
I cannot use hasElement()
because I need result and I don't want to introduce hacky solutions like abusing switchIfEmpty
project-reactor
add a comment |
Is there any operator on Mono
that would allow me to log fact that mono was empty?
I cannot use hasElement()
because I need result and I don't want to introduce hacky solutions like abusing switchIfEmpty
project-reactor
Is there any operator on Mono
that would allow me to log fact that mono was empty?
I cannot use hasElement()
because I need result and I don't want to introduce hacky solutions like abusing switchIfEmpty
project-reactor
project-reactor
asked Mar 7 at 9:11
pixelpixel
9,9722193147
9,9722193147
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You could use doOnSuccess
and test if data is null
.doOnSuccess(data ->
if (data == null)
//onEmpty behavior
)
1
note thatdoOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call anotherFlux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. butswitchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)
– Simon Baslé
Mar 11 at 10:30
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55039964%2fmono-doonempty-in-reactor%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You could use doOnSuccess
and test if data is null
.doOnSuccess(data ->
if (data == null)
//onEmpty behavior
)
1
note thatdoOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call anotherFlux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. butswitchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)
– Simon Baslé
Mar 11 at 10:30
add a comment |
You could use doOnSuccess
and test if data is null
.doOnSuccess(data ->
if (data == null)
//onEmpty behavior
)
1
note thatdoOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call anotherFlux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. butswitchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)
– Simon Baslé
Mar 11 at 10:30
add a comment |
You could use doOnSuccess
and test if data is null
.doOnSuccess(data ->
if (data == null)
//onEmpty behavior
)
You could use doOnSuccess
and test if data is null
.doOnSuccess(data ->
if (data == null)
//onEmpty behavior
)
answered Mar 7 at 9:50
Alexander PankinAlexander Pankin
1,04129
1,04129
1
note thatdoOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call anotherFlux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. butswitchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)
– Simon Baslé
Mar 11 at 10:30
add a comment |
1
note thatdoOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call anotherFlux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. butswitchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)
– Simon Baslé
Mar 11 at 10:30
1
1
note that
doOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call another Flux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. but switchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)– Simon Baslé
Mar 11 at 10:30
note that
doOnSuccess
is only valid if the desired behavior is indeed a side effect (like updating some metrics or something like that). it is for example highly undesirable to call another Flux
/Mono
subscribe
, as it would prevent said publisher to propagate its errors to the main sequence. but switchIfEmpty
should work in that case (as it only acts if the source is effectively empty, otherwise keeping the source value)– Simon Baslé
Mar 11 at 10:30
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55039964%2fmono-doonempty-in-reactor%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown