1: <?php
2:
3: declare(strict_types = 1);
4:
5: namespace CloudCastle\XmlGenerator;
6:
7: /**
8: * Класс Config
9: * @version 0.0.1
10: * @package CloudCastle\XmlGenerator
11: * @generated Зорин Алексей, please DO NOT EDIT!
12: * @author Зорин Алексей <zorinalexey59292@gmail.com>
13: * @copyright 2022 разработчик Зорин Алексей Евгеньевич.
14: */
15: class Config
16: {
17:
18: /**
19: * Путь файла для сохранения
20: * @var string|null
21: */
22: private string $file = __DIR__ . DIRECTORY_SEPARATOR . 'xml-files' . DIRECTORY_SEPARATOR . 'test.xml';
23:
24: /**
25: * Метод создания файла
26: * @var string
27: */
28: private string $type = 'filesystem';
29:
30: /**
31: * Освобождать память после выполнения или нет
32: * @var bool
33: */
34: private bool $flush = true;
35:
36: /**
37: * Задать путь для сохранения файла
38: * @param string $file Путь к файлу для сохранения
39: * @return void
40: */
41: public function setFile(?string $file = null): void
42: {
43: if ($file) {
44: $this->file = $file;
45: }
46: }
47:
48: /**
49: * Получить путь для заданного файла
50: * @return string
51: */
52: public function getFile(): string
53: {
54: return $this->file;
55: }
56:
57: /**
58: * Задать метод создания xml файла
59: * @param string $type Тип метода создания xml файла. filesystem - Создать файл на диске, иначе создать в память
60: * @return void
61: */
62: public function setType(string $type = 'filesystem'): void
63: {
64: if (mb_strtolower($type) != 'filesystem') {
65: $this->type = 'memory';
66: } else {
67: $this->type = 'filesystem';
68: }
69: }
70:
71: /**
72: * Получить метод создания файла
73: * @return string
74: */
75: public function getType(): string
76: {
77: return $this->type;
78: }
79:
80: /**
81: * Получить значение использования памяти
82: * @return bool
83: */
84: public function getFlush(): bool
85: {
86: return $this->flush;
87: }
88:
89: /**
90: * Задать значение использования памяти
91: * @param bool $flush Освобождать память после генерации или нет? true - освобождать (по умолчанию), false - не освобождать.
92: * @return void
93: */
94: public function setFlush(bool $flush = true): void
95: {
96: $this->flush = $flush;
97: }
98:
99: }
100: