Skip to content

Conversation

@Alfusainey
Copy link
Contributor

@Alfusainey Alfusainey commented Nov 13, 2020

An initial patch implementing the AMQP 1.0 protocol binding for cloud events. This patch implements the MessageReader and MessageWriter interfaces to support the reading and writing of cloud events to and from an AMQP representation

@slinkydeveloper I did a demo integration test using a vertx-proton client and server to send and receive cloud event messages. once this is merged, i will provide a sample README

Signed-off-by: Alfusainey Jallow alf.jallow@gmail.com

@slinkydeveloper slinkydeveloper added this to the 2.0.0 milestone Nov 13, 2020
@slinkydeveloper slinkydeveloper added the enhancement New feature or request label Nov 13, 2020
@slinkydeveloper slinkydeveloper self-requested a review November 13, 2020 08:53
Copy link
Member

@slinkydeveloper slinkydeveloper left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR looks reaaaally nice and I'm super excited about it, thanks for your contribution!!!

I left a bunch of questions and style comments. Sorry in advance for the comments related to my poor knowledge of amqp 😄

@slinkydeveloper slinkydeveloper linked an issue Nov 13, 2020 that may be closed by this pull request
@matzew
Copy link
Member

matzew commented Nov 13, 2020

REally nice work! Glad to see this coming!

@Alfusainey
Copy link
Contributor Author

i updated the PR to incorporate the comments. i also renamed the class names to include Proton so that it is clear which amqp library the implementation uses

Copy link
Member

@slinkydeveloper slinkydeveloper left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small nits and we can merge

Signed-off-by: Alfusainey Jallow <alf.jallow@gmail.com>
Now the classes include proton in their names

Signed-off-by: Alfusainey Jallow <alf.jallow@gmail.com>
Signed-off-by: Alfusainey Jallow <alf.jallow@gmail.com>
@Alfusainey
Copy link
Contributor Author

@slinkydeveloper unfortunately, i have to add -Dmaven.javadoc.skip=true to skip building the javadoc locally since not all APIs in this project have proper Javadoc comments (this was added in revision 554198d). I feel that adding the comments in PR may distract from the original issue we are solving here. WDYT?

@slinkydeveloper
Copy link
Member

@Alfusainey I'm looking now at the errors and it seems they're related to this pr, let me show you

@Alfusainey
Copy link
Contributor Author

@Alfusainey I'm looking now at the errors and it seems they're related to this pr, let me show you

@slinkydeveloper the build is actually failing to generate javadoc for the cloudevents-api module. here is a summary:

[ERROR] Exit code: 1 - javadoc: error - The code being documented uses modules but the packages defined in http://docs.oracle.com/javase/8/docs/api/ are in the unnamed module.
[ERROR] sdk-java/api/src/main/java/io/cloudevents/CloudEvent.java:31: warning: no @return
[ERROR]     CloudEventData getData();
[ERROR]                    ^
[ERROR] sdk-java/api/src/main/java/io/cloudevents/rw/CloudEventReader.java:38: warning: no @param for <V>
[ERROR]     default <V extends CloudEventWriter<R>, R> R read(CloudEventWriterFactory<V, R> writerFactory) throws CloudEventRWException {
[ERROR]                                                  ^
[ERROR] sdk-java/api/src/main/java/io/cloudevents/rw/CloudEventReader.java:38: warning: no @param for <R>
[ERROR]     default <V extends CloudEventWriter<R>, R> R read(CloudEventWriterFactory<V, R> writerFactory) throws CloudEventRWException {
[ERROR]                                                  ^
[ERROR] sdk-java/api/src/main/java/io/cloudevents/rw/CloudEventReader.java:38: warning: no @return
[ERROR]     default <V extends CloudEventWriter<R>, R> R read(CloudEventWriterFactory<V, R> writerFactory) throws CloudEventRWException {
[ERROR]                                                  ^
[ERROR] sdk-java/api/src/main/java/io/cloudevents/rw/CloudEventReader.java:45: warning: no @param for <V>
[ERROR]     <V extends CloudEventWriter<R>, R> R read(CloudEventWriterFactory<V, R> writerFactory, @Nullable CloudEventDataMapper mapper) throws CloudEventRWException;
[ERROR]                                          ^
[ERROR] sdk-java/api/src/main/java/io/cloudevents/rw/CloudEventReader.java:45: warning: no @param for <R>
[ERROR]     <V extends CloudEventWriter<R>, R> R read(CloudEventWriterFactory<V, R> writerFactory, @Nullable CloudEventDataMapper mapper) throws CloudEventRWException;

any idea what am doing wrong?

@Alfusainey
Copy link
Contributor Author

i needed to modify the maven-javadoc-plugin configuration for the build to work for me (https://stackoverflow.com/a/61884267/8462878). i will not commit this change though :-)

Signed-off-by: Alfusainey Jallow <alf.jallow@gmail.com>
@slinkydeveloper
Copy link
Member

@slinkydeveloper the build is actually failing to generate javadoc for the cloudevents-api module

So on your machine javadoc tool fails for warnings? Interesting... Anyway, we plan to fix javadoc properly soon #264 so hopefully this will be fixed asap.

@slinkydeveloper slinkydeveloper merged commit 20ebdbf into cloudevents:master Nov 16, 2020
@slinkydeveloper
Copy link
Member

@Alfusainey thanks again for this contribution 🚀

@slinkydeveloper slinkydeveloper modified the milestones: 2.0.0, 2.0.0.CR1 Nov 16, 2020
@Alfusainey
Copy link
Contributor Author

@Alfusainey thanks again for this contribution 🚀

you're welcome, and thanks a lot for taking the time to review it! I will be hanging around this project from now on 😄

@Alfusainey Alfusainey deleted the issue-30 branch November 16, 2020 17:12
@slinkydeveloper
Copy link
Member

Oh yeah, feel free to check out the other good first issues https://github.com/cloudevents/sdk-java/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22 and also join the cncf slack if you want to https://cloud-native.slack.com/archives/CCXF3CBL1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AMQP 1.0 transport

3 participants