class EventStoreClient::GRPC::Commands::Projections::Create
Public Instance Methods
call(name, streams)
click to toggle source
# File lib/event_store_client/adapters/grpc/commands/projections/create.rb, line 17 def call(name, streams) data = <<~STRING fromStreams(#{streams}) .when({ $any: function(s,e) { linkTo("#{name}", e) } }) STRING options = { query: data, continuous: { name: name, track_emitted_streams: true } } res = Try do service.create(request.new(options: options), metadata: metadata) end res.error? ? res.to_result : Success() rescue ::GRPC::Unknown => e Failure(:conflict) if e.message.include?('Conflict') end