Sha256: 0dbe468213ad00aac84439aca7bdaabca0121b08319b9aae883d20d5a9d5511e

Contents?: true

Size: 630 Bytes

Versions: 2

Compression:

Stored size: 630 Bytes

Contents

class ValueAdded < Sequent::Event
  attrs some_value: String
end

class SomeCommand < Sequent::Command
  attrs some_value: String
end

class DummyAggregate < Sequent::AggregateRoot
  def set_value(value)
    apply ValueAdded, some_value: value
  end

  on ValueAdded do |event|
    @some_value = event.some_value
  end
end

class DummyCommandHandler < Sequent::CommandHandler
  on SomeCommand do |command|
    aggregate = repository.add_aggregate(DummyAggregate.new command.aggregate_id)
    aggregate.set_value(command.some_value)
  end
end

Sequent.configure do |config|
  config.command_handlers << DummyCommandHandler.new
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
sequent-rails-0.1.1 spec/dummy/app/domains/dummy.rb
sequent-rails-0.1.0 spec/dummy/app/domains/dummy.rb