mirror of
https://github.com/kevinveenbirkenbach/infinito.git
synced 2025-04-16 10:16:22 +02:00
39 lines
934 B
PHP
39 lines
934 B
PHP
<?php
|
|
|
|
namespace Infinito\Domain\FixtureManagement\FixtureSource;
|
|
|
|
use Infinito\Entity\Source\SourceInterface;
|
|
use Infinito\Attribut\SlugAttributInterface;
|
|
|
|
/**
|
|
* This interface allows to save the configuration values of an fixture in a class.
|
|
*
|
|
* @author kevinfrantz
|
|
*/
|
|
interface FixtureSourceInterface
|
|
{
|
|
/**
|
|
* @return SourceInterface An source, which can be handled by Doctrine ORM persist
|
|
*/
|
|
public function getORMReadyObject(): SourceInterface;
|
|
|
|
/**
|
|
* It's necessary for tests and to address the object correct.
|
|
*
|
|
* @return SlugAttributInterface
|
|
*/
|
|
public static function getSlug(): string;
|
|
|
|
/**
|
|
* @see https://fontawesome.com
|
|
*
|
|
* @return string|null a fontawesome css class
|
|
*/
|
|
public static function getIcon(): string;
|
|
|
|
/**
|
|
* @return string A human readable name, if defined, otherwise a slug
|
|
*/
|
|
public function getName(): string;
|
|
}
|