lib/generated/events.pb.ex

defmodule Cratis.Chronicle.Contracts.Events.EventType do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :Id, 1, type: :string
  field :Generation, 2, type: :uint32
  field :Tombstone, 3, type: :bool
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypeGenerationDefinition do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :Generation, 1, type: :uint32
  field :Schema, 2, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypeMigrationDefinition do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :FromGeneration, 1, type: :uint32
  field :ToGeneration, 2, type: :uint32

  field :Operations, 3,
    repeated: true,
    type: Cratis.Chronicle.Contracts.Events.EventTypeMigrationOperation

  field :UpcastJmesPath, 4, type: :string
  field :DowncastJmesPath, 5, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypeMigrationOperation do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :Operation, 1, type: :string
  field :Details, 2, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypeRegistration do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :Type, 1, type: Cratis.Chronicle.Contracts.Events.EventType
  field :Schema, 2, type: :string

  field :Generations, 3,
    repeated: true,
    type: Cratis.Chronicle.Contracts.Events.EventTypeGenerationDefinition

  field :Migrations, 4,
    repeated: true,
    type: Cratis.Chronicle.Contracts.Events.EventTypeMigrationDefinition

  field :EventStore, 5, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.GetAllEventTypesRequest do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :EventStore, 1, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.GetEventTypeGenerationsRequest do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :EventStore, 1, type: :string
  field :EventTypeId, 2, type: :string
end

defmodule Cratis.Chronicle.Contracts.Events.IEnumerable_EventType do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :items, 1, repeated: true, type: Cratis.Chronicle.Contracts.Events.EventType
end

defmodule Cratis.Chronicle.Contracts.Events.IEnumerable_EventTypeRegistration do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :items, 1, repeated: true, type: Cratis.Chronicle.Contracts.Events.EventTypeRegistration
end

defmodule Cratis.Chronicle.Contracts.Events.RegisterEventTypesRequest do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :EventStore, 1, type: :string
  field :Types, 2, repeated: true, type: Cratis.Chronicle.Contracts.Events.EventTypeRegistration
  field :DisableValidation, 3, type: :bool
end

defmodule Cratis.Chronicle.Contracts.Events.RegisterSingleEventTypeRequest do
  @moduledoc false
  use Protobuf, protoc_gen_elixir_version: "0.16.0", syntax: :proto3

  field :EventStore, 1, type: :string
  field :Type, 2, type: Cratis.Chronicle.Contracts.Events.EventTypeRegistration
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypes.Service do
  @moduledoc false

  use GRPC.Service,
    name: "Cratis.Chronicle.Contracts.Events.EventTypes",
    protoc_gen_elixir_version: "0.16.0"

  rpc :GetAll,
      Cratis.Chronicle.Contracts.Events.GetAllEventTypesRequest,
      Cratis.Chronicle.Contracts.Events.IEnumerable_EventType

  rpc :GetAllGenerationsForEventType,
      Cratis.Chronicle.Contracts.Events.GetEventTypeGenerationsRequest,
      Cratis.Chronicle.Contracts.Events.IEnumerable_EventTypeRegistration

  rpc :GetAllRegistrations,
      Cratis.Chronicle.Contracts.Events.GetAllEventTypesRequest,
      Cratis.Chronicle.Contracts.Events.IEnumerable_EventTypeRegistration

  rpc :ObserveAllRegistrations,
      Cratis.Chronicle.Contracts.Events.GetAllEventTypesRequest,
      stream(Cratis.Chronicle.Contracts.Events.IEnumerable_EventTypeRegistration)

  rpc :Register,
      Cratis.Chronicle.Contracts.Events.RegisterEventTypesRequest,
      Google.Protobuf.Empty

  rpc :RegisterSingle,
      Cratis.Chronicle.Contracts.Events.RegisterSingleEventTypeRequest,
      Google.Protobuf.Empty
end

defmodule Cratis.Chronicle.Contracts.Events.EventTypes.Stub do
  @moduledoc false

  use GRPC.Stub, service: Cratis.Chronicle.Contracts.Events.EventTypes.Service
end