diff --git a/src/Spout/Writer/XLSX/Creator/InternalFactory.php b/src/Spout/Writer/XLSX/Creator/InternalFactory.php index e8b5546..d854a96 100644 --- a/src/Spout/Writer/XLSX/Creator/InternalFactory.php +++ b/src/Spout/Writer/XLSX/Creator/InternalFactory.php @@ -9,7 +9,7 @@ use Box\Spout\Writer\Common\Creator\InternalFactoryInterface; use Box\Spout\Writer\Common\Entity\Options; use Box\Spout\Writer\Common\Manager\OptionsManagerInterface; use Box\Spout\Writer\XLSX\Helper\FileSystemHelper; -use Box\Spout\Writer\XLSX\Helper\SharedStringsHelper; +use Box\Spout\Writer\XLSX\Manager\SharedStringsManager; use Box\Spout\Writer\XLSX\Manager\Style\StyleManager; use Box\Spout\Writer\XLSX\Manager\Style\StyleRegistry; use Box\Spout\Writer\XLSX\Manager\WorkbookManager; @@ -48,10 +48,10 @@ class InternalFactory implements InternalFactoryInterface $fileSystemHelper->createBaseFilesAndFolders(); $xlFolder = $fileSystemHelper->getXlFolder(); - $sharedStringsHelper = $this->createSharedStringsHelper($xlFolder); + $sharedStringsManager = $this->createSharedStringsManager($xlFolder); $styleManager = $this->createStyleManager($optionsManager); - $worksheetManager = $this->createWorksheetManager($optionsManager, $styleManager, $sharedStringsHelper); + $worksheetManager = $this->createWorksheetManager($optionsManager, $styleManager, $sharedStringsManager); return new WorkbookManager($workbook, $optionsManager, $worksheetManager, $styleManager, $fileSystemHelper, $this->entityFactory); } @@ -59,19 +59,19 @@ class InternalFactory implements InternalFactoryInterface /** * @param OptionsManagerInterface $optionsManager * @param StyleManager $styleManager - * @param SharedStringsHelper $sharedStringsHelper + * @param SharedStringsManager $sharedStringsManager * @return WorksheetManager */ private function createWorksheetManager( OptionsManagerInterface $optionsManager, StyleManager $styleManager, - SharedStringsHelper $sharedStringsHelper + SharedStringsManager $sharedStringsManager ) { $stringsEscaper = $this->createStringsEscaper(); $stringsHelper = $this->createStringHelper(); - return new WorksheetManager($optionsManager, $styleManager, $sharedStringsHelper, $stringsEscaper, $stringsHelper); + return new WorksheetManager($optionsManager, $styleManager, $sharedStringsManager, $stringsEscaper, $stringsHelper); } /** @@ -96,11 +96,12 @@ class InternalFactory implements InternalFactoryInterface /** * @param string $xlFolder Path to the "xl" folder - * @return SharedStringsHelper + * @return SharedStringsManager */ - private function createSharedStringsHelper($xlFolder) + private function createSharedStringsManager($xlFolder) { - return new SharedStringsHelper($xlFolder); + $stringEscaper = $this->createStringsEscaper(); + return new SharedStringsManager($xlFolder, $stringEscaper); } /** diff --git a/src/Spout/Writer/XLSX/Helper/SharedStringsHelper.php b/src/Spout/Writer/XLSX/Manager/SharedStringsManager.php similarity index 88% rename from src/Spout/Writer/XLSX/Helper/SharedStringsHelper.php rename to src/Spout/Writer/XLSX/Manager/SharedStringsManager.php index 292b663..167063e 100644 --- a/src/Spout/Writer/XLSX/Helper/SharedStringsHelper.php +++ b/src/Spout/Writer/XLSX/Manager/SharedStringsManager.php @@ -1,16 +1,17 @@ sharedStringsFilePointer = fopen($sharedStringsFilePath, 'w'); @@ -48,8 +50,7 @@ EOD; $header = self::SHARED_STRINGS_XML_FILE_FIRST_PART_HEADER . ' ' . self::DEFAULT_STRINGS_COUNT_PART . '>'; fwrite($this->sharedStringsFilePointer, $header); - /** @noinspection PhpUnnecessaryFullyQualifiedNameInspection */ - $this->stringsEscaper = \Box\Spout\Common\Escaper\XLSX::getInstance(); + $this->stringsEscaper = $stringsEscaper; } /** diff --git a/src/Spout/Writer/XLSX/Manager/WorkbookManager.php b/src/Spout/Writer/XLSX/Manager/WorkbookManager.php index a07670b..6b713e2 100644 --- a/src/Spout/Writer/XLSX/Manager/WorkbookManager.php +++ b/src/Spout/Writer/XLSX/Manager/WorkbookManager.php @@ -55,7 +55,7 @@ class WorkbookManager extends WorkbookManagerAbstract */ protected function closeRemainingObjects() { - $this->worksheetManager->getSharedStringsHelper()->close(); + $this->worksheetManager->getSharedStringsManager()->close(); } /** diff --git a/src/Spout/Writer/XLSX/Manager/WorksheetManager.php b/src/Spout/Writer/XLSX/Manager/WorksheetManager.php index c892d39..6a03dad 100644 --- a/src/Spout/Writer/XLSX/Manager/WorksheetManager.php +++ b/src/Spout/Writer/XLSX/Manager/WorksheetManager.php @@ -12,7 +12,6 @@ use Box\Spout\Writer\Common\Entity\Cell; use Box\Spout\Writer\Common\Entity\Worksheet; use Box\Spout\Writer\Common\Manager\WorksheetManagerInterface; use Box\Spout\Writer\Common\Entity\Style\Style; -use Box\Spout\Writer\XLSX\Helper\SharedStringsHelper; use Box\Spout\Writer\XLSX\Manager\Style\StyleManager; /** @@ -42,8 +41,8 @@ EOD; /** @var StyleManager Manages styles */ private $styleManager; - /** @var SharedStringsHelper Helper to write shared strings */ - private $sharedStringsHelper; + /** @var SharedStringsManager Helper to write shared strings */ + private $sharedStringsManager; /** @var \Box\Spout\Common\Escaper\XLSX Strings escaper */ private $stringsEscaper; @@ -56,30 +55,30 @@ EOD; * * @param OptionsManagerInterface $optionsManager * @param StyleManager $styleManager - * @param SharedStringsHelper $sharedStringsHelper + * @param SharedStringsManager $sharedStringsManager * @param \Box\Spout\Common\Escaper\XLSX $stringsEscaper * @param StringHelper $stringHelper */ public function __construct( OptionsManagerInterface $optionsManager, StyleManager $styleManager, - SharedStringsHelper $sharedStringsHelper, + SharedStringsManager $sharedStringsManager, \Box\Spout\Common\Escaper\XLSX $stringsEscaper, StringHelper $stringHelper) { $this->shouldUseInlineStrings = $optionsManager->getOption(Options::SHOULD_USE_INLINE_STRINGS); $this->styleManager = $styleManager; - $this->sharedStringsHelper = $sharedStringsHelper; + $this->sharedStringsManager = $sharedStringsManager; $this->stringsEscaper = $stringsEscaper; $this->stringHelper = $stringHelper; } /** - * @return SharedStringsHelper + * @return SharedStringsManager */ - public function getSharedStringsHelper() + public function getSharedStringsManager() { - return $this->sharedStringsHelper; + return $this->sharedStringsManager; } @@ -241,7 +240,7 @@ EOD; if ($this->shouldUseInlineStrings) { $cellXMLFragment = ' t="inlineStr">' . $this->stringsEscaper->escape($cellValue) . ''; } else { - $sharedStringId = $this->sharedStringsHelper->writeString($cellValue); + $sharedStringId = $this->sharedStringsManager->writeString($cellValue); $cellXMLFragment = ' t="s">' . $sharedStringId . ''; }