syntax = "proto3"; package event_store.client.projections; option java_package = "com.eventstore.dbclient.proto.projections"; import "google/protobuf/struct.proto"; import "shared.proto"; service Projections { rpc Create (CreateReq) returns (CreateResp); rpc Update (UpdateReq) returns (UpdateResp); rpc Delete (DeleteReq) returns (DeleteResp); rpc Statistics (StatisticsReq) returns (stream StatisticsResp); rpc Disable (DisableReq) returns (DisableResp); rpc Enable (EnableReq) returns (EnableResp); rpc Reset (ResetReq) returns (ResetResp); rpc State (StateReq) returns (StateResp); rpc Result (ResultReq) returns (ResultResp); rpc RestartSubsystem (event_store.client.Empty) returns (event_store.client.Empty); } message CreateReq { Options options = 1; message Options { oneof mode { event_store.client.Empty one_time = 1; Transient transient = 2; Continuous continuous = 3; } string query = 4; message Transient { string name = 1; } message Continuous { string name = 1; bool track_emitted_streams = 2; } } } message CreateResp { } message UpdateReq { Options options = 1; message Options { string name = 1; string query = 2; oneof emit_option { bool emit_enabled = 3; event_store.client.Empty no_emit_options = 4; } } } message UpdateResp { } message DeleteReq { Options options = 1; message Options { string name = 1; bool delete_emitted_streams = 2; bool delete_state_stream = 3; bool delete_checkpoint_stream = 4; } } message DeleteResp { } message StatisticsReq { Options options = 1; message Options { oneof mode { string name = 1; event_store.client.Empty all = 2; event_store.client.Empty transient = 3; event_store.client.Empty continuous = 4; event_store.client.Empty one_time = 5; } } } message StatisticsResp { Details details = 1; message Details { int64 coreProcessingTime = 1; int64 version = 2; int64 epoch = 3; string effectiveName = 4; int32 writesInProgress = 5; int32 readsInProgress = 6; int32 partitionsCached = 7; string status = 8; string stateReason = 9; string name = 10; string mode = 11; string position = 12; float progress = 13; string lastCheckpoint = 14; int64 eventsProcessedAfterRestart = 15; string checkpointStatus = 16; int64 bufferedEvents = 17; int32 writePendingEventsBeforeCheckpoint = 18; int32 writePendingEventsAfterCheckpoint = 19; } } message StateReq { Options options = 1; message Options { string name = 1; string partition = 2; } } message StateResp { google.protobuf.Value state = 1; } message ResultReq { Options options = 1; message Options { string name = 1; string partition = 2; } } message ResultResp { google.protobuf.Value result = 1; } message ResetReq { Options options = 1; message Options { string name = 1; bool write_checkpoint = 2; } } message ResetResp { } message EnableReq { Options options = 1; message Options { string name = 1; } } message EnableResp { } message DisableReq { Options options = 1; message Options { string name = 1; bool write_checkpoint = 2; } } message DisableResp { }