X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=framework%2Fmain%2Fclasses%2Ftemplate%2Fclass_BaseTemplateEngine.php;h=8c09dfbf91a01dfa65b5c601a73932a3500a3181;hb=035b3221bff7b542e264a9d0a4a6d086833487ef;hp=05f39746b38f8c9f62244cfa3ebc6076d0d90de3;hpb=498e6b065ce47804bff4e1073592a2cc8e28f8ef;p=core.git diff --git a/framework/main/classes/template/class_BaseTemplateEngine.php b/framework/main/classes/template/class_BaseTemplateEngine.php index 05f39746..8c09dfbf 100644 --- a/framework/main/classes/template/class_BaseTemplateEngine.php +++ b/framework/main/classes/template/class_BaseTemplateEngine.php @@ -6,14 +6,13 @@ namespace Org\Mxchange\CoreFramework\Template\Engine; use Org\Mxchange\CoreFramework\Bootstrap\FrameworkBootstrap; use Org\Mxchange\CoreFramework\EntryPoint\ApplicationEntryPoint; use Org\Mxchange\CoreFramework\Factory\ObjectFactory; -use Org\Mxchange\CoreFramework\Handler\Stream\IoHandler; use Org\Mxchange\CoreFramework\Filesystem\FileNotFoundException; use Org\Mxchange\CoreFramework\Generic\NullPointerException; use Org\Mxchange\CoreFramework\Manager\ManageableApplication; use Org\Mxchange\CoreFramework\Object\BaseFrameworkSystem; use Org\Mxchange\CoreFramework\Registry\GenericRegistry; use Org\Mxchange\CoreFramework\Response\Responseable; -use Org\Mxchange\CoreFramework\Stacker\Stackable; +use Org\Mxchange\CoreFramework\Traits\Handler\Io\IoHandlerTrait; use Org\Mxchange\CoreFramework\Utils\String\StringUtils; // Import SPL stuff @@ -43,17 +42,15 @@ use \SplFileInfo; * along with this program. If not, see . */ abstract class BaseTemplateEngine extends BaseFrameworkSystem { + // Load traits + use IoHandlerTrait; + // Exception codes for the template engine const EXCEPTION_TEMPLATE_TYPE_IS_UNEXPECTED = 0x110; const EXCEPTION_TEMPLATE_CONTAINS_INVALID_VAR = 0x111; const EXCEPTION_INVALID_VIEW_HELPER = 0x112; const EXCEPTION_VARIABLE_IS_MISSING = 0x113; - /** - * The file I/O instance for the template loader - */ - private $fileIoInstance = NULL; - /** * The local path name where all templates and sub folders for special * templates are stored. We will internally determine the language plus @@ -173,16 +170,6 @@ abstract class BaseTemplateEngine extends BaseFrameworkSystem { */ private $languageSupport = true; - /** - * XML compacting is disabled by default - */ - private $xmlCompacting = false; - - /** - * Instance of the stacker - */ - private $stackInstance = NULL; - /** * Protected constructor * @@ -1556,33 +1543,6 @@ abstract class BaseTemplateEngine extends BaseFrameworkSystem { $this->setRawTemplateData($rawData); } - /** - * Renders the given XML content - * - * @param $content Valid XML content or if not set the current loaded raw content - * @return void - * @throws XmlParserException If an XML error was found - */ - public function renderXmlContent (string $content = NULL) { - // Is the content set? - if (is_null($content)) { - // Get current content - $content = $this->getRawTemplateData(); - } - - // Get a XmlParser instance - $parserInstance = ObjectFactory::createObjectByConfiguredName('xml_parser_class', array($this)); - - // Check if XML compacting is enabled - if ($this->isXmlCompactingEnabled()) { - // Yes, so get a decorator class for transparent compacting - $parserInstance = ObjectFactory::createObjectByConfiguredName('deco_compacting_xml_parser_class', array($parserInstance)); - } - - // Parse the XML document - $parserInstance->parseXmlContent($content); - } - /** * Enables or disables language support * @@ -1602,63 +1562,6 @@ abstract class BaseTemplateEngine extends BaseFrameworkSystem { return $this->languageSupport; } - /** - * Enables or disables XML compacting - * - * @param $xmlCompacting New XML compacting setting - * @return void - */ - public final function enableXmlCompacting (bool $xmlCompacting = true) { - $this->xmlCompacting = $xmlCompacting; - } - - /** - * Checks whether XML compacting is enabled - * - * @return $xmlCompacting Whether XML compacting is enabled or disabled - */ - public final function isXmlCompactingEnabled () { - return $this->xmlCompacting; - } - - /** - * Private getter for file IO instance - * - * @return $fileIoInstance An instance to the file I/O sub-system - */ - protected final function getFileIoInstance () { - return $this->fileIoInstance; - } - - /** - * Setter for file I/O instance - * - * @param $fileIoInstance An instance to the file I/O sub-system - * @return void - */ - public final function setFileIoInstance (IoHandler $fileIoInstance) { - $this->fileIoInstance = $fileIoInstance; - } - - /** - * Setter for stacker instance - * - * @param $stackInstance An instance of an stacker - * @return void - */ - protected final function setStackInstance (Stackable $stackInstance) { - $this->stackInstance = $stackInstance; - } - - /** - * Getter for stacker instance - * - * @return $stackInstance An instance of an stacker - */ - public final function getStackInstance () { - return $this->stackInstance; - } - /** * Removes all commentd, tabs and new-line characters to compact the content *