-
Notifications
You must be signed in to change notification settings - Fork 5
Implementing Connection, Management and Publisher modules #10
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
8820d8a
to
9e7bec5
Compare
Signed-off-by: Gabriele Santomaggio <[email protected]>
a51797f
to
2736559
Compare
2736559
to
078ca17
Compare
a4a15c8
to
17fe614
Compare
17fe614
to
4a953c7
Compare
37570f2
to
078b70d
Compare
As I'm extending the unit tests, I'm realizing that the arguments for queues and exchanges are not managed well and needs improvements. I'll work on it |
83dce6e
to
5ceedca
Compare
08adb16
to
f05c54e
Compare
6ac9a41
to
f80773d
Compare
f80773d
to
ecbc423
Compare
cfdd534
to
056d455
Compare
Merging as agreed with reviewers |
DanielePalaia
added a commit
that referenced
this pull request
Jan 14, 2025
* connection layer implementation * WIP * implementing Declare Exchange/Queue * test for gabriele * body encodiding Signed-off-by: Gabriele Santomaggio <[email protected]> * adding basic tests * implementing bind * adding user-defined exception * Adding debugging info * publisher implementation * adding publisher basic test * improve help_address utility functions * modify example * integrate qpid-proton lib * implementing purge operation * improving url helper * cleaning up qpid unecessary folders and files * some improvements * implementing queue_info * fixing queue arguments management * better management of arguments * improved arguments management during declare_queue * adding purge test * adding fixtures in tests * adding a publisher test * removing useless queue_type parameter * removing receiver from publisher --------- Signed-off-by: Gabriele Santomaggio <[email protected]> Co-authored-by: DanielePalaia <daniele985@@gmail.com> Co-authored-by: Gabriele Santomaggio <[email protected]>
DanielePalaia
added a commit
that referenced
this pull request
Jan 20, 2025
* connection layer implementation * WIP * implementing Declare Exchange/Queue * test for gabriele * body encodiding Signed-off-by: Gabriele Santomaggio <[email protected]> * adding basic tests * implementing bind * adding user-defined exception * Adding debugging info * publisher implementation * adding publisher basic test * improve help_address utility functions * modify example * integrate qpid-proton lib * implementing purge operation * improving url helper * cleaning up qpid unecessary folders and files * some improvements * implementing queue_info * fixing queue arguments management * better management of arguments * improved arguments management during declare_queue * adding purge test * adding fixtures in tests * adding a publisher test * removing useless queue_type parameter * removing receiver from publisher * consumer implementation * Implementing Connection, Management and Publisher modules (#10) * connection layer implementation * WIP * implementing Declare Exchange/Queue * test for gabriele * body encodiding Signed-off-by: Gabriele Santomaggio <[email protected]> * adding basic tests * implementing bind * adding user-defined exception * Adding debugging info * publisher implementation * adding publisher basic test * improve help_address utility functions * modify example * integrate qpid-proton lib * implementing purge operation * improving url helper * cleaning up qpid unecessary folders and files * some improvements * implementing queue_info * fixing queue arguments management * better management of arguments * improved arguments management during declare_queue * adding purge test * adding fixtures in tests * adding a publisher test * removing useless queue_type parameter * removing receiver from publisher --------- Signed-off-by: Gabriele Santomaggio <[email protected]> Co-authored-by: DanielePalaia <daniele985@@gmail.com> Co-authored-by: Gabriele Santomaggio <[email protected]> * consumer implementation * modification for testing purpose * change option Signed-off-by: Gabriele Santomaggio <[email protected]> * adding tests and improvementes * improving ack implementation * adding requeue with annotations test * adding dead lettering test * adding discard with annotations test * refactoring tests * improving AddressHelper utility functions * Change the class name for the consumer add documentation Signed-off-by: Gabriele Santomaggio <[email protected]> * adding validations for annotations --------- Signed-off-by: Gabriele Santomaggio <[email protected]> Co-authored-by: DanielePalaia <daniele985@@gmail.com> Co-authored-by: Gabriele Santomaggio <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This closes #1
This closes #4
This closes #5
This closes #6
This PR provides a connection layer to dial the AMQP server and to create a Sender and Receiver objects.
it also implements the various management operations: declare_queue, declare_exchange, bind/unbind, purge_queue, delete_queue, delete_exchange.
It also implements the Publisher layer to send messages to exchanges and/or queues.
We are avoiding using Interfaces for the various layers: binding ,exchanges, queues ecc... as it was suggested for the GO implementation
We are importing the qpid library code in order to treat a special case when we encode an empty body message.
See: #1. The library is imported in qpid/proton and I think we can avoid reviewing that original code
An example is provided in examples/getting_started/main.py