public function appendSnapshotEvent($type, DomainEventMessageInterface $snapshotEvent) { $eventFile = $this->fileResolver->openEventFileForReading($type, $snapshotEvent->getAggregateIdentifier()); $snapshotEventFile = $this->fileResolver->openSnapshotFileForWriting($type, $snapshotEvent->getAggregateIdentifier()); $snapshotEventWriter = new FilesystemSnapshotEventWriter($eventFile, $snapshotEventFile, $this->serializer); $snapshotEventWriter->writeSnapshotEvent($snapshotEvent); }
protected function handle(DomainEventMessageInterface $event) { $this->identifier = $event->getAggregateIdentifier(); $this->invocationCount++; }
/** * Initialize an Event entry for the given <code>event</code>. * * @param string $type The type identifier of the aggregate root the event belongs to * @param DomainEventMessageInterface $event The event to store in the EventStore * @param SerializedObjectInterface $payload The serialized payload of the Event * @param SerializedObjectInterface $metaData The serialized metaData of the Event */ public function __construct($type, DomainEventMessageInterface $event, SerializedObjectInterface $payload, SerializedObjectInterface $metaData) { $this->eventIdentifier = $event->getIdentifier(); $this->type = $type; //$this->payloadType = $payload->getContentType(); $this->payloadType = $payload->getType()->getName(); $this->payloadRevision = $payload->getType()->getRevision(); $this->payload = $payload->getData(); $this->aggregateIdentifier = $event->getAggregateIdentifier(); $this->scn = $event->getScn(); $this->metaData = $metaData->getData(); $this->timestamp = $event->getTimestamp(); }
protected function handle(DomainEventMessageInterface $event) { $this->identifier = $event->getAggregateIdentifier(); $this->handledEvents[] = $event; }
private function findRedundantSnapshots($type, DomainEventMessageInterface $snapshotEvent, $maxSnapshotsArchived, EntityManager $entityManager) { $query = $entityManager->createQuery("SELECT e.scn FROM " . $this->snapshotEventEntryEntityName() . " e " . "WHERE e.type = :type AND e.aggregateIdentifier = :aggregateIdentifier " . "ORDER BY e.scn DESC")->setFirstResult($maxSnapshotsArchived - 1)->setMaxResults(1)->setParameters(array(':type' => $type, ':aggregateIdentifier' => $snapshotEvent->getAggregateIdentifier())); return $query->getResult(); }