design-patterns
28 строк · 672.0 Байт
1<?php
2
3namespace App\Creational\AbstractFactory;
4
5use App\Creational\AbstractFactory\Classes\WinCsvWriter;
6use App\Creational\AbstractFactory\Classes\WinJsonWriter;
7use App\Creational\AbstractFactory\Interfaces\CsvWriter;
8use App\Creational\AbstractFactory\Interfaces\JsonWriter;
9use App\Creational\AbstractFactory\Interfaces\WriterFactory;
10
11class WinWriterFactory implements WriterFactory
12{
13/**
14* @return CsvWriter
15*/
16public function createCsvWriter(): CsvWriter
17{
18return new WinCsvWriter();
19}
20
21/**
22* @return JsonWriter
23*/
24public function createJsonWriter(): JsonWriter
25{
26return new WinJsonWriter();
27}
28}