slovocast/app/src/Domain/Factory/EpisodeFactory.php

43 lines
971 B
PHP

<?php
namespace Slovocast\Domain\Factory;
use Slovocast\Domain\Entity\Episode;
use Slovocast\Domain\FactoryInterface;
class EpisodeFactory implements FactoryInterface
{
public static function fromArray(array $props): Episode
{
$episode = new Episode(
$props['title'],
$props['link'],
(int) $props['length'],
$props['description'],
$props['serialNumber'],
(bool) $props['explicit'],
$props['publishedDate'],
$props['episodeType']
);
if ($props['id']) {
$episode->setId($props['id']);
}
if ($props['created_at']) {
$episode->setCreatedAt($props['createdAt']);
}
if ($props['updated_id']) {
$episode->setUpdatedAt($props['updatedAt']);
}
return $episode;
}
public static function toArray(Episode $episode): array
{
return [];
}
}