* Implemented connection handle table to fix half closed session problem
* Correctly handle session begin after connection is open
* Split out amqp settle mode to separate header; added test coverage for AMQP Transfer and Detach performatives
* Use absolute path for settle mode header
* Return pointer to message rather than message; cleaned up API surface to remove uAMQP details
* ASAN configuration via CMAKE preset, not environment variable
* clang-tidy fixes
* Add link pollable; Fixed several memory leaks
* Rule of 5 fixes for AMQP and EventHubs types; moved message handle type to _detail namespace.
* Update sdk/core/azure-core-amqp/CHANGELOG.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* clang-13 version of cstdlib doesn't define integer types in global namespace
* Added clang-13 and clang-15 variants to mix
* Pull request feedback
* Update sdk/core/azure-core/inc/azure/core/uuid.hpp
* Update sdk/core/azure-core/inc/azure/core/base64.hpp
---------
Co-authored-by: Larry Osterman <larryo@LOTHAIR-HOME.ntdev.corp.microsoft.com>
There are two significant parts to this fix. The first is that the Connection object now has a method EnableAsyncOperation which registers the connection with a background thread which polls the connection. The EnableAsyncOperation needs to be callable from outside the connection because in normal client operation, the calls to open the connection are all internal to uAMQP. That means that the message sender and receiver need to call it when they're opened (and closed).
The other major part of this change is that the AsyncOperationQueue now has a WaitForRequest API which does not normally poll (there is a test hook which enables polling but that is not normally used in most scenarios).
The other part of this change fixes some concurrency issues associated with the Log::Stream functionality.
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/src/logger.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/test/ut/CMakeLists.txt
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/test/ut/logging_test.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Added ASAN as an option, converted transports to be bases to ensure consistancy
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Added link credit support to message sender and receiver; reworked message receiver creation to move to the partition client object
* Added round trip test, including filters; fixed a hang with the consumer client caused by no messages; fixed checkpoint store storage names.
* EventDataBatch is created from EventProducer. Fixes#4868
* SendEventDataBatch renamed to Send; pass in Context on methods which require a context
* Added producer client send APIs without requiring an explicit event data batch
* close message receiver in destructor if it is open
* Consumer client and producer client only create message sender and receiver when needed
* doxygen fixes
* enable doxygen errors now that doxygen is updated.
---------
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Added amqp_definitions_fields to list of 'special' uAMQP headers
* Tidy up x64-static-debug-perftests preset
* Moved test functions to private and use friend functions for tests; Renamed Management to ManagementClient and made it constructable from Session.
---------
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
# This pull request moves the core AMQP functionality to main. It is still very much a work in progress, but moving it to main will reduce the complexity associated with working in feature branches.
---------
Co-authored-by: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com>
Co-authored-by: Konrad Jamrozik <kojamroz@microsoft.com>
Co-authored-by: Victor Vazquez <victor.vazquez@microsoft.com>
Co-authored-by: Daniel Jurek <djurek@microsoft.com>
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
Co-authored-by: George Arama <50641385+gearama@users.noreply.github.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
Co-authored-by: Ahson Khan <ahkha@microsoft.com>