Sinri Edogawa 2019-03-26 17:37:59 +08:00
parent 2c2c23a8ca
commit fe81494136
2 changed files with 38 additions and 6 deletions

View File

@ -2,10 +2,23 @@
namespace Box\Spout\Writer\Common\Creator; namespace Box\Spout\Writer\Common\Creator;
use Box\Spout\Common\Creator\HelperFactory;
use Box\Spout\Common\Entity\Cell; use Box\Spout\Common\Entity\Cell;
use Box\Spout\Common\Entity\Row; use Box\Spout\Common\Entity\Row;
use Box\Spout\Common\Entity\Style\Style; use Box\Spout\Common\Entity\Style\Style;
use Box\Spout\Common\Helper\GlobalFunctionsHelper;
use Box\Spout\Writer\Common\Creator\Style\StyleBuilder;
use Box\Spout\Writer\CSV\Manager\OptionsManager as CSVOptionsManager;
use Box\Spout\Writer\CSV\Writer as CSVWriter;
use Box\Spout\Writer\ODS\Creator\HelperFactory as ODSHelperFactory;
use Box\Spout\Writer\ODS\Creator\ManagerFactory as ODSManagerFactory;
use Box\Spout\Writer\ODS\Manager\OptionsManager as ODSOptionsManager;
use Box\Spout\Writer\ODS\Writer as ODSWriter;
use Box\Spout\Writer\WriterInterface; use Box\Spout\Writer\WriterInterface;
use Box\Spout\Writer\XLSX\Creator\HelperFactory as XLSXHelperFactory;
use Box\Spout\Writer\XLSX\Creator\ManagerFactory as XLSXManagerFactory;
use Box\Spout\Writer\XLSX\Manager\OptionsManager as XLSXOptionsManager;
use Box\Spout\Writer\XLSX\Writer as XLSXWriter;
/** /**
* Class WriterEntityFactory * Class WriterEntityFactory
@ -30,7 +43,12 @@ class WriterEntityFactory
*/ */
public static function createCSVWriter() public static function createCSVWriter()
{ {
return (new WriterFactory())->getCSVWriter(); $optionsManager = new CSVOptionsManager();
$globalFunctionsHelper = new GlobalFunctionsHelper();
$helperFactory = new HelperFactory();
return new CSVWriter($optionsManager, $globalFunctionsHelper, $helperFactory);
} }
/** /**
@ -38,7 +56,14 @@ class WriterEntityFactory
*/ */
public static function createXLSXWriter() public static function createXLSXWriter()
{ {
return (new WriterFactory())->getXLSXWriter(); $styleBuilder = new StyleBuilder();
$optionsManager = new XLSXOptionsManager($styleBuilder);
$globalFunctionsHelper = new GlobalFunctionsHelper();
$helperFactory = new XLSXHelperFactory();
$managerFactory = new XLSXManagerFactory(new InternalEntityFactory(), $helperFactory);
return new XLSXWriter($optionsManager, $globalFunctionsHelper, $helperFactory, $managerFactory);
} }
/** /**
@ -46,7 +71,14 @@ class WriterEntityFactory
*/ */
public static function createODSWriter() public static function createODSWriter()
{ {
return (new WriterFactory())->getODSWriter(); $styleBuilder = new StyleBuilder();
$optionsManager = new ODSOptionsManager($styleBuilder);
$globalFunctionsHelper = new GlobalFunctionsHelper();
$helperFactory = new ODSHelperFactory();
$managerFactory = new ODSManagerFactory(new InternalEntityFactory(), $helperFactory);
return new ODSWriter($optionsManager, $globalFunctionsHelper, $helperFactory, $managerFactory);
} }

View File

@ -47,7 +47,7 @@ class WriterFactory
/** /**
* @return CSVWriter * @return CSVWriter
*/ */
public function getCSVWriter() private function getCSVWriter()
{ {
$optionsManager = new CSVOptionsManager(); $optionsManager = new CSVOptionsManager();
$globalFunctionsHelper = new GlobalFunctionsHelper(); $globalFunctionsHelper = new GlobalFunctionsHelper();
@ -60,7 +60,7 @@ class WriterFactory
/** /**
* @return XLSXWriter * @return XLSXWriter
*/ */
public function getXLSXWriter() private function getXLSXWriter()
{ {
$styleBuilder = new StyleBuilder(); $styleBuilder = new StyleBuilder();
$optionsManager = new XLSXOptionsManager($styleBuilder); $optionsManager = new XLSXOptionsManager($styleBuilder);
@ -75,7 +75,7 @@ class WriterFactory
/** /**
* @return ODSWriter * @return ODSWriter
*/ */
public function getODSWriter() private function getODSWriter()
{ {
$styleBuilder = new StyleBuilder(); $styleBuilder = new StyleBuilder();
$optionsManager = new ODSOptionsManager($styleBuilder); $optionsManager = new ODSOptionsManager($styleBuilder);