-
Notifications
You must be signed in to change notification settings - Fork 9
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
CORE-18320 Support for a flow specific timeout on Flow Message API #1394
Conversation
…lient can specify a flow session specific timeout on Flow Message API. If set, it will be passed to the initiated party to also use it. If the client does not provide a timeout value then the value from Corda Configuration is used.
Scanning for breaking API changes introduced by this PR Scan Succeeded |
Non-blocking downstream job failed for corda-non-functional-test https://ci02.dev.r3.com/job/Corda5/job/corda-api-compatibility/job/PR-1394/14/ has failed for PR 1394 build 14 Please investigate if your changes may have broken compilation on https://github.com/corda/corda-non-functional-test |
Non-blocking downstream job failed for corda-e2e-test https://ci02.dev.r3.com/job/Corda5/job/corda-api-compatibility/job/PR-1394/15/ has failed for PR 1394 build 15 Please investigate if your changes may have broken compilation on https://github.com/corda/corda-e2e-tests |
Jenkins build for PR 1394 build 25 Build Successful: |
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.
The method overloading is not ideal like you already said. Could we potentially add a field flowSessionConfig/sessionProperties Map<String, String> or something like that to the initiateFlow API? I think it's too late for requireClose but there may be more things we want to configure per session in the future.
data/avro-schema/src/main/resources/avro/net/corda/data/flow/state/session/SessionState.avsc
Outdated
Show resolved
Hide resolved
The compatibility scan failed due to the API change. Is this just a warning or something that needs to be addressed? |
https://r3holdco.slack.com/archives/C039J1A3ZQB/p1702390578322899
|
Yes, we might add that to make it future-proof, in case we'll need to add more properties. It might be better to use |
…t' into mbrkic-r3/CORE-18320/flow-timeout
…ate, they will be stored in "sessionProperties".
…ORE-18320/flow-timeout
…ORE-18320/flow-timeout # Conflicts: # gradle.properties
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.
LGTM
application/src/main/java/net/corda/v5/application/messaging/FlowMessaging.java
Show resolved
Hide resolved
application/src/main/java/net/corda/v5/application/messaging/FlowSessionConfiguration.java
Outdated
Show resolved
Hide resolved
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
Support for a flow specific timeout on Flow Message API. Client can specify a flow session specific timeout on Flow Message API. If set, it will be passed to the initiated party to also use it. If the client does not provide a timeout value then the value from Corda Configuration is used.
A new class
FlowSessionConfiguration
is introduced to store session configuration. Methods that used configuration parameterrequireClose
will be deprecated with another PR.Avro schema for
SessionState
was modified, fieldrequireClose
was removed as this value will be stored insessionProperties
.