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
chore(refactor): prefer interfaces over concrete classes (#457)
* chore(refactor): protocol bindings use interfaces
This change modifies the protocol binding interfaces such as `Binding`,
`Serializer` and the like to use the `CloudEventV1` interface instead of the
implementation class `CloudEvent`. This should make extending the interfaces
simpler as this work has grown out of efforts around the implementation of
a second transport interface, Kafka.
See: #455
This commit also includes the addition of a generic type to the `Message`
interface, defaulting to `string`.
There is also some minor clean up involving what is exported from the
`message/http` modules. Now, instead of exporting the entire implementation,
only the `HTTP` binding implementation is exported, and it is then reexported
by `message`.
Also, a static `CloudEvent.cloneWith()` method has been added which the
instance methods now use.
Signed-off-by: Lance Ball <[email protected]>
* fixup: make the `cloneWith()` method is dependent on interfaces
Signed-off-by: Lance Ball <[email protected]>
* fixup: remove unnecessary cast
Signed-off-by: Lance Ball <[email protected]>
0 commit comments