mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-14 22:21:20 +00:00
31 lines
841 B
PHP
31 lines
841 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace GildedRose;
|
|
|
|
use GildedRose\GildedRoseItem\BrieItem;
|
|
use GildedRose\GildedRoseItem\BackstagePassItem;
|
|
use GildedRose\GildedRoseItem\ConjuredItem;
|
|
use GildedRose\GildedRoseItem\SulfurasItem;
|
|
use GildedRose\GildedRoseItem\DefaultItem;
|
|
|
|
class GildedRoseItemFactory
|
|
{
|
|
public function createGildedRoseItem(Item $item): GildedRoseItem
|
|
{
|
|
switch ($item->name) {
|
|
case BrieItem::NAME:
|
|
return new BrieItem($item);
|
|
case BackstagePassItem::NAME:
|
|
return new BackstagePassItem($item);
|
|
case SulfurasItem::NAME:
|
|
return new SulfurasItem($item);
|
|
case ConjuredItem::NAME:
|
|
return new ConjuredItem($item);
|
|
default:
|
|
return new DefaultItem($item);
|
|
}
|
|
}
|
|
}
|