public function ProductRenamed(\Knp\Event\Event $event) { $statement = $this->pdo->prepare('UPDATE product SET name = :name WHERE id = :id;'); $statement->bindValue('id', $event->getEmitterId()); $statement->bindValue('name', $event->name); $statement->execute(); }
function it_reconstructs_current_state_of_an_object_by_replaying_its_past_events(Replayable $emitter, Event $isBorn, Event $hasLived, Event $isDead, \ArrayIterator $events) { $isBorn->getName()->willReturn('born'); $isBorn->getAttributes()->willReturn(['id' => 10]); $hasLived->getName()->willReturn('to be'); $hasLived->getAttributes()->willReturn([]); $isDead->getName()->willReturn('wild'); $isDead->getAttributes()->willReturn([]); $events->iterates([$isBorn, $hasLived, $isDead]); $emitter = $this->replay($events, 'spec\\Knp\\Event\\Player\\Replayable'); $emitter->getId()->shouldEqual(10); }
public function Deleted(Event $event) { $this->connection->delete($this->getTableName($event->getEmitterClass()), ['id' => $event->getEmitterId()]); }
function it_refuses_conflictual_sets($store, $versionTransporter, Event $event, Event $conflictual, Emitter $emitter) { $store->getCurrentVersion(Argument::cetera())->willReturn(3); $versionTransporter->getExpectedVersion(Argument::cetera())->willReturn(1); $this->shouldThrow('Knp\\Event\\Exception\\Concurrency\\Optimistic\\Conflict', 'addSet', [new Event\Set($emitter->getWrappedObject(), [$event->getWrappedObject(), $conflictual->getWrappedObject()])]); }
public function emit(Event $event) { $event->setEmitter($this); $this->events[] = $event; }