-
Notifications
You must be signed in to change notification settings - Fork 162
feat: Transport Return Route - Framework Configuration #896
feat: Transport Return Route - Framework Configuration #896
Conversation
Codecov Report
@@ Coverage Diff @@
## master #896 +/- ##
==========================================
+ Coverage 91.17% 91.18% +0.01%
==========================================
Files 86 86
Lines 5268 5300 +32
==========================================
+ Hits 4803 4833 +30
- Misses 249 250 +1
- Partials 216 217 +1
Continue to review full report at Codecov.
|
@@ -12,6 +12,8 @@ import ( | |||
"fmt" | |||
"testing" | |||
|
|||
"github.com/hyperledger/aries-framework-go/pkg/didcomm/common/service" |
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.
wrong location
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.
@@ -18,6 +18,8 @@ import ( | |||
"strings" | |||
"testing" | |||
|
|||
"github.com/hyperledger/aries-framework-go/pkg/didcomm/protocol/decorator" |
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.
wrong location
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.
- Aries framework level option to set the transport return route value [none, all, thread]; Added the option at framework level(edge agent doesn't have inbound capability) rather than each DIDComm message type. - Pass the framework option to Outbound Dispatcher - Outbound dispatcher injects the transport decorator to the outbound message before packing Signed-off-by: Rolson Quadras <[email protected]>
cd67ce4
to
106115c
Compare
@@ -128,6 +130,21 @@ func WithInboundTransport(inboundTransport transport.InboundTransport) Option { | |||
} | |||
} | |||
|
|||
// WithTransportReturnRoute injects transport return route option to the Aries framework. Acceptable values - "none", |
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.
Do we need a TODO for more dynamically setting the TransportReturnRoute (in the protocol clients) or do we expect to always use the same setting (for a particular framework?
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.
We can enhance this to support route option at message/protocol layer by passing a {messageType, returnValue}
config. eg, {didexchange, all},{introduce, none}
. Created an issue - #899
@@ -128,6 +130,21 @@ func WithInboundTransport(inboundTransport transport.InboundTransport) Option { | |||
} | |||
} | |||
|
|||
// WithTransportReturnRoute injects transport return route option to the Aries framework. Acceptable values - "none", | |||
// "all" or "thread". RFC - https://github.com/hyperledger/aries-rfcs/tree/master/features/0092-transport-return-route |
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.
Does thread actually work at a global level? Also I don't see return_route_thread attribute :).
thread: Send all messages matching the cryptographic key and thread specified in the return_route_thread attribute.
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.
We can intercept Thread
at inbound layer as it's a decorator. Currently planning to use senderKey for all to map it with incoming conection. For thread, we can map senderKey-threadID combo.
Part of #858
Signed-off-by: Rolson Quadras [email protected]