Make ProtoSerializer accessible
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 52/100
Direzione di ricerca
Inizia individuando le classi ProtoSerializer e ProtoDeserializer locali al package menzionate nell'issue, insieme all'entry point ProtobufFormat. Rendi entrambi i serializer accessibili ai consumer, preservando il comportamento esistente di toProto e della deserializzazione. Verifica che i chiamanti possano convertire direttamente tra CloudEvent e io.cloudevents.v1.proto.CloudEvent senza la conversione intermedia in un array di byte.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
We use the io.cloudevents:cloudevents-protobuf:4.0.1 lib to serialize and deserialize CloudEvents as protobuf messages. Unfortunately, there is no direct access to the ProtoSerializer and ProtoDeserializer classes. For our use case it would be very helpful if we could convert a io.cloudevents.CloudEvent into a io.cloudevents.v1.proto.CloudEvent protobuf message. Which is basically what the toProto method in ProtoSerializer does.
class ProtoSerializer { // <--- Can we make this class public?
public static CloudEvent toProto(io.cloudevents.CloudEvent ce) throws InvalidProtocolBufferException {
// ...
}
// ...
}
Unfortunately, this method is not accessible to consuming methods as the class is package-local, which does not allow us to call it from outside the io.cloudevents.protobuf package.
Currently, we can only use the ProtobufFormat to convert a CloudEvent to a byte[] which we can then decode as io.cloudevents.v1.proto.CloudEvent. This involves an unnecessary extra conversion step.
io.cloudevents.v1.proto.CloudEvent.parseFrom(new ProtobufFormat().serialize((io.cloudevents.CloudEvent) cloudEvent))
For symmetry reasons ProtoDeserializer should likely also be made public.
- Lingua principale
- Java
- Stelle
- 446
- Fork
- 172
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di cloudevents/sdk-java
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
cloudevents/sdk-java#731 · 1 reazione ·
-
bug
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
cloudevents/sdk-java#697 · 3 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
cloudevents/sdk-java#689 · 2 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
cloudevents/sdk-java#660 · 2 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
cloudevents/sdk-java#711 · 1 commento ·
Tutte le issue di cloudevents/sdk-java
Issue simili
-
Bug Java Platform: Java
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
getsentry/sentry-java#6138 · 1 commento ·
-
bug needs triage p2
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
GoogleCloudPlatform/DataflowTemplates#4273 · 1 commento ·
-
[Studio][Bug] Bulk-deleting a full page of alert rules steps the page back while more rules remain Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/rocketmq-dashboard#4654 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100