/** * @param StoryId $storyId * @param \Prooph\Done\Shared\StoryName $storyName * @return StoryWasStarted */ public static function withStoryIdAndName(StoryId $storyId, StoryName $storyName) { $self = self::occur($storyId->toString(), ['story_name' => $storyName->toString()]); $self->storyId = $storyId; $self->storyName = $storyName; return $self; }
/** * @param StoryId $storyId * @return Story */ public function get(StoryId $storyId) { return $this->getAggregateRoot($storyId->toString()); }
/** * @param Message $message * @param StoryId $ownStoryId * @param StoryId $otherStoryId * @return Story */ public static function receivedMessageForDifferentStory(Message $message, StoryId $ownStoryId, StoryId $otherStoryId) { return new self(sprintf('Story %s received message %s (%s) for different story %s', $ownStoryId->toString(), $message->messageName(), $message->uuid()->toString(), $otherStoryId->toString())); }
/** * @return string representation of the unique identifier of the aggregate root */ protected function aggregateId() { return $this->storyId->toString(); }