hjwp / eventstoreio

grpc client for eventstoredb
2 stars 0 forks source link

How does an append request works? #1

Closed stefanondisponibile closed 3 years ago

stefanondisponibile commented 3 years ago

It isn't prefectly clear to me, I've tried looking also here to understand. Are options sent as the first element of the stream?

message AppendReq {
    oneof content {
        Options options = 1;
        ProposedMessage proposed_message = 2;
    }

    message Options {
        event_store.client.shared.StreamIdentifier stream_identifier = 1;
        oneof expected_stream_revision {
            uint64 revision = 2;
            event_store.client.shared.Empty no_stream = 3;
            event_store.client.shared.Empty any = 4;
            event_store.client.shared.Empty stream_exists = 5;
        }
    }
    message ProposedMessage {
        event_store.client.shared.UUID id = 1;
        map<string, string> metadata = 2;
        bytes custom_metadata = 3;
        bytes data = 4;
    }
}

However, are the plans to wrap the grpc calls around some kind of client for this library? I'm asking 'cause I'd be willing to help :)

hjwp commented 3 years ago

i really didn't get very far i'm afraid! but if you join the DDD-CQRS-ES slack, you might be able to get some help from one of the eventstoredb people, matt. I'll introduce you... https://j.mp/ddd-es-cqrs

stefanondisponibile commented 3 years ago

That sounds cool! Unfortunately that link doesn't let me join the channel though:

Screenshot-20201229203006-1370x383

Do I need a different kind of invitation?

hjwp commented 3 years ago

oh try this one? https://join.slack.com/t/ddd-cqrs-es/shared_invite/zt-jcgt2kif-lx6AsFAixIVxaRQ0z1KVYw

hjwp commented 3 years ago

also, apparently the docs just got updated https://developers.eventstore.com/clients/grpc/getting-started/

stefanondisponibile commented 3 years ago

eheh thank you @hjwp , but that doesn't work either. I guess I'll try to contact them directly for the issue about the link (I've tried also from their official repo). I saw the docs, but they're exposing just the C# and NodeJs clients and by the protos I didn't get an actual idea of how a stream append may work (basically when to send oneof options or proposed_message in the append request. Happy New Year by the way! ✨