Commit Graph

339 Commits

Author SHA1 Message Date
Dave Syer 7f65c92dec
Introduce CloudEventContext (#296)
* Introduce CloudEventContext

Signed-off-by: Dave Syer <dsyer@vmware.com>

* Extract some code into a base class

Signed-off-by: Dave Syer <dsyer@vmware.com>

* Ensure extensions get copied in constructor

Signed-off-by: Dave Syer <dsyer@vmware.com>

* Introduce a CloudEventContextReaderAdapter

Signed-off-by: Dave Syer <dsyer@vmware.com>

* Use inheritance instead of composition

Signed-off-by: Dave Syer <dsyer@vmware.com>
2020-11-23 21:05:26 +01:00
Francesco Guardiani 394347db07
CloudEventAttributesWriter and CloudEventExtensionsWriter accepts only not nil attributes/extensions (#287)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-23 11:28:56 +01:00
Francesco Guardiani baf3b56d6d
Introduce CloudEventDataMapper.identity() (#286)
* CloudEventDataMapper cannot be null
Cleanup of all mapper != null and replaced with CloudEventDataMapper.NOOP
Fixed all the missing wildcards

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* I forgot a bunch of them

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* CloudEventDataMapper.NOOP to CloudEventDataMapper.identity

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Now it should be fine

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-19 18:24:14 +01:00
Francesco Guardiani c1ff628511
Javadoc'ed + Cleanup of the api module (#267)
* Javadoc'ed more and more the api module
Cleanup the CloudEventRWException
More tests on the API module

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Use parseTime

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Better docs on the Extensions

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-13 14:31:32 +01:00
Francesco Guardiani 42a732623b
Improvements to CloudEventReader (#263)
* Extracted readAttributes and readExtensions from CloudEventReader
Added CloudEventUtils#toContextReader to create a context reader starting from a CloudEvent
Improved documentation of *Reader interfaces
Renamed MessageReader#visit to the proper name MessageReader#read

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Typo

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-13 09:54:07 +01:00
Francesco Guardiani c7baada605
Json mapper (#258)
* Implemented Pojo mapper using jackson
Added other exception kinds

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fixup for the rebase

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed comment

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Equals and hash code

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fixed rebase issues

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-11 08:54:01 +01:00
Francesco Guardiani 3bd9a6922f
CloudEventUtils.mapData(event, mapper) (#257)
* Generified the return value of CloudEventDataMapper
Added toData(CloudEventDataMapper) method to map the data

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Moved to CloudEventUtils

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* public static

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Test

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* wildcard bound

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-11 08:48:45 +01:00
github-actions[bot] b3cdfc1ded
Bump to 2.0.0-SNAPSHOT (#255)
Signed-off-by: GitHub <noreply@github.com>

Co-authored-by: slinkydeveloper <slinkydeveloper@users.noreply.github.com>
2020-11-09 14:13:56 +01:00
github-actions[bot] f52356e93a
Bump to 2.0.0-milestone4 (#254)
Signed-off-by: GitHub <noreply@github.com>

Co-authored-by: slinkydeveloper <slinkydeveloper@users.noreply.github.com>
2020-11-09 14:06:44 +01:00
Francesco Guardiani de2052c4d6
CloudEventDataMapper (#252)
* Defined an interface to perform mapping of data

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* All code compiles and run

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Added a sample + fixed copyrights

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* More test

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-11-09 09:37:37 +01:00
Francesco Guardiani f9e31efaa3
Introduce CloudEventData (#250)
* Introduce CloudEventData

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Javadocs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed to

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Applied changes throughout the sdk

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fix javadoc

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-10-29 10:01:39 +01:00
Zhixuan Lai a09b03bd2f
Serialize time to RFC3339 compliant string (#249)
Signed-off-by: Zhixuan Lai <zhixuan@squareup.com>

Co-authored-by: Zhixuan Lai <zhixuan@squareup.com>
2020-09-30 13:03:13 +02:00
github-actions[bot] 3cea0245b3
Bump to 2.0.0-SNAPSHOT (#247)
Signed-off-by: GitHub <noreply@github.com>

Co-authored-by: slinkydeveloper <slinkydeveloper@users.noreply.github.com>
2020-09-29 12:54:27 +02:00
github-actions[bot] 7abf0c82ed
Bump to 2.0.0-milestone3 (#246)
Signed-off-by: GitHub <noreply@github.com>

Co-authored-by: slinkydeveloper <slinkydeveloper@users.noreply.github.com>
2020-09-29 12:26:16 +02:00
Francesco Guardiani 2982f07f55
Renamed methods of writes to coerce with the builder apis (#237)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-28 08:58:57 +02:00
Francesco Guardiani 69e605e2ef Release 2.0.0-SNAPSHOT
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
(cherry picked from commit 08aed3bc40)
2020-09-01 12:05:36 +02:00
Francesco Guardiani b54a46fd07 Release 2.0.0-milestone2
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-01 11:56:36 +02:00
Francesco Guardiani 08aed3bc40 Release 2.0.0-SNAPSHOT
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-01 11:44:18 +02:00
Francesco Guardiani f20208aec7 Release 2.0.0-milestone2
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-01 11:44:18 +02:00
Francesco Guardiani 75171b9705
Switch `ZonedDateTime` to `OffsetDateTime` (#216)
* Switch `ZonedDateTime` to `OffsetDateTime`. Fix #214

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed useless date format

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed time format

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-09-01 10:10:35 +02:00
Francesco Guardiani 39b9fc159c
Simplified poms (#205)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-08-11 10:14:39 +02:00
Francesco Guardiani 4c98031c3b
Fix #200 (#202)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-08-10 16:10:37 +02:00
Francesco Guardiani 0ce5f9535d
Dependency bumps (#203)
* Updates

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Let's avoid to upgrade junit5, it seems that surefire plugin doesn't like it...

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-08-04 18:03:28 +02:00
Francesco Guardiani 58a6426fe8
Reorganized some readmes/docs (#193)
* Added javadocs links both to READMEs and docs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed old docs of v1 of the sdk

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-07-08 11:12:26 +02:00
Francesco Guardiani f42020333a
Back to SNAPSHOT (#189)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-25 15:54:22 +02:00
Francesco Guardiani 900decaed0
Release 2.0.0-milestone1 (#187)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-25 15:01:48 +02:00
Francesco Guardiani 98a6b87d5b
Javadoc-ed cloudevents-api (#181)
* Javadoc-ed cloudevents-api

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* nit

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-23 17:20:09 +02:00
Francesco Guardiani c632f56f8b
Added Automatic-Module-Name to manifests of published modules (#179)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-22 16:29:42 +02:00
Matej Vasek 7d85d19f1a
fix: sub-second resolution `time` attribute (#176)
* fix: sub-second resolution `time` attribute

Fixes parsing of dates like: 2018-04-26T14:48:09.1234Z

Signed-off-by: Matej Vasek <mvasek@redhat.com>

* test: added test for datetime parsing formatting

Signed-off-by: Matej Vasek <mvasek@redhat.com>
2020-06-18 16:59:12 +02:00
slinkydeveloper 28dcc2a009 Renamed package io.cloudevents.visitor to io.cloudevents.rw
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-09 11:37:07 +02:00
slinkydeveloper 57bb81cc5c Rename Visitor/Visitable to Writer/Reader
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-04 16:56:19 +02:00
Francesco Guardiani 34cd81455b
Reorganized some READMEs (#160)
* Reorganized some READMEs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Suggestions

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Progress

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Last fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-01 11:34:23 +02:00
Francesco Guardiani 73d90d11bb
Reworked a bit the Extension interface (#158)
* Reworked a bit the `Extension` interface

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Renamed readFromEvent as readFrom

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Removed Extension extends CloudEventExtensions

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* getValue() throws an exception if the key is not recognized by the materialized extension

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* typo

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-06-01 09:22:54 +02:00
Francesco Guardiani 0fdfcc378d
Moved cloudevents-api to cloudevents-core (#155)
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

Proposed set of apis for CloudEvent

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

Changes

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

Javadocs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

Removed CloudEventBuilder.java

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

Nits

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-05-22 16:30:36 +02:00
Francesco Guardiani 199f8c02e0
Revert "Proposal for reworking the unstructured read/write of events (#146)" (#149)
This reverts commit cd5777791c.
2020-05-15 15:56:48 +02:00
Francesco Guardiani cd5777791c
Proposal for reworking the unstructured read/write of events (#146)
* Proposal for handling unstructured read/write of events

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* cloudevents-json-jackson fixed

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Everything builds

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Added two utility methods to Message

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Signature was wrong

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-05-15 11:41:41 +02:00
Francesco Guardiani a485edffdb
Integration with Jakarta RESTful Web Services (#145)
* Bootstrapped http/restful-ws module

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Bootstrapped http/restful-ws module

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Going forward with jax-rs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Going forward with jax-rs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Trying another jaxrs impl

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Flush fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Reverted Jersey, now all works as it should

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Constant

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-05-04 08:55:54 +02:00
Francesco Guardiani 30ca27afd8
Formatted code and added copyright headers (#140)
* Formatted code and added headers

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Updated all copyright years with 2018-Present

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-28 13:56:06 +02:00
Sergei Egorov ba2db45f38
Introduce JSR-305 compatible nullability, remove `Optional` (#138)
* Introduce JSR-305 compatible nullability, remove `Optional`

Closes #123.

Signed-off-by: Sergei Egorov <segorov@pivotal.io>

* fix wrong indentation

Signed-off-by: Sergei Egorov <segorov@pivotal.io>

* fix wrong indentation (2)

Signed-off-by: Sergei Egorov <segorov@pivotal.io>
2020-04-28 12:02:30 +02:00
Francesco Guardiani 5c28b36967
Reworked Kafka module (#134)
* WIP kafka

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Worked on some abstractions to simplify implementation of Message

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Reworked kafka module

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Applied suggestions + documented Kafka module usage

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Renaming

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Docs fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* small fixes

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* small fixes

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-28 10:33:00 +02:00
Francesco Guardiani 2b5e72c50a
Reworked Vert.x Integration (#129)
* Started http-vertx module reworking

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Vertx integration done

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Adjusted the READMEs

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Case sensitivity fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-24 12:17:49 +02:00
Francesco Guardiani 924dbed6e7
Test for implementation of equals (#126)
* Test for equals

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Maven fix

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Funny pom issues

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fixed pom issues

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-22 17:05:04 +02:00
Francesco Guardiani cd913f368f
Changed version to 2.0.0-SNAPSHOT (#127)
* Changed version to 2.0.0-SNAPSHOT

Changed the README for the V2 to specify the sdk is currently under development

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fixed poms

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>

* Fixed json-jackson pom

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-22 16:59:41 +02:00
slinkydeveloper d207ecc311 Fixed structuredToEvent test
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-21 18:49:51 +02:00
slinkydeveloper 92c205a941 Json deserialization works
Json roundtrip works
Added extensions to tests

Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-21 18:43:03 +02:00
slinkydeveloper 4df01cd279 Progress on implementing serialization
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-20 21:01:10 +02:00
slinkydeveloper 7dcfdba30d Tests ready, starting implementing
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-20 19:26:24 +02:00
slinkydeveloper 30c5fcf1e4 Json added mock data
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-20 19:11:14 +02:00
slinkydeveloper 0f94976f7b All tests in cloudevents-api pass!
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-20 17:45:40 +02:00
slinkydeveloper 41f48a5c84 cloudevents-api does not depend on jackson anymore
Signed-off-by: Francesco Guardiani <francescoguard@gmail.com>
2020-04-20 16:57:58 +02:00