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
Implement Recoverable connection for AMQP operations. (Azure#2657)
This PR does three different things:
It renames the ConnectionManager type to RecoverableConnection to better reflect what is going on.
It splits out the authorization functionality from ConnectionManager into a new struct named Authorizer to simplify the logic in connection_manager.rs
It consolidates all the AMQP active protocol interactions to RecoverableConnection. This was done to (a) simplify the AMQP interactions for each of the specific protocol elements and (b) lay the foundation for connection, session, and link recovery. See the rather large comment on the RecoverableConnection for more details on how this all works and fits together.
There are a few bonus changes in this PR as well:
Adds a send_ref function to the AmqpSender struct which allows sending a reference to a message (saving a message clone).
AmqpOrderedMap::iter() passes references to the inner elements to be consistent with the standard collection iter() method.
Copy file name to clipboardExpand all lines: sdk/core/azure_core_amqp/CHANGELOG.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,10 @@
6
6
7
7
### Breaking Changes
8
8
9
+
-`AmqpClaimsBasedSecurity` now takes ownership of the associated session rather than simply referencing the associated session. This means that all CBS authentication operations should be performed on dedicated AmqpSession objects.
10
+
11
+
-`AmqpOrderedMap::iter` now iterates over references to key and value, not clones of the key and value, thus eliminating unnecessary clones.
0 commit comments