BrickContent - стартовый кирич
Сборка ответа сервера на запрос клиента в платформе Абрикос начинается со стартового кирпича.
Стартовые кирпичи в платформе Абрикос поставляются с модулем, которые находятся в папке content этого модуля:
/modules/[имя модуля]/content/[имя стартового кирпича].html
Перегрузка стартового кирпича осуществляется в поставляемом шаблоне:
/tt/[имя шаблона]/override/[имя модуля]/content/[имя стартового кирпича].html
Параметры кирпича
В стартвовом кирпиче обязательным параметром является информация о кирпиче-обертке
<!--[*]
...
[tt=кирпич_обертка]имя_шаблона[/tt]
...
[*]-->
...
где,
кирпич_обертка - имя кирпича-обертки, в который
будет вставлен результа сборки стартового кирпича;
имя_шаблона (опционально) - имя шаблона, в котором находится кирпич-обертка.
Если имя шаблона не указано, то будет использован шаблон, установленный в настройках
платформы.
Процесс сборки страницы сервера
Поступивший запрос клиента обрабатывается ядром платформы, определяя, какой модуль будет собирать ответ. Такой модуль в платформе Абрикос называется - «Управляющий модуль».
Управляющий модуль парсит URL и определяет, какой стартовый кирпич начнет сборку страницы.
Если управляющий модуль не смог определить стартовый кирпич, он возвращает пустое имя стартового кирпича, что дает указание ядру вернуть 404-ю ошибку.
После того, как управляющий модуль вернул ядру имя стартового кирпича, ядро начинает сборку страницы - ответ сервера.
Ядро, парсит стартовый кирпич, определяя, в какой кирпич-обертку (шаблон) будет вставлен результат сборки стартового кирпича. Поэтому, обязательным условием при описании стартового кирпича, является наличие информации о кирпиче-обертке.
Далее, ядро платформы рекурсивно собирает информацию о всех свободных кирпичах, которые будут участвовать в сборке страницы-ответа.
После того, как вся структура будущей страницы построена, ядро начинает процесс самой сборки (строительство).
Строительство будущей страницы начинается с самых крайних кирпичей, занося результат в кирпич родителя.
В итоге, когда кирпич-обертка и стартовый кирпич обработают все вложенные свободные-кирпичи, результат стартого кирпича будет вставлен в кирпич-обертку, после чего ядро платформы отдаст эту страницу клиенту.
Чтобы проще понять этот процесс, достаточно представить строительство дома, в котором каждый элемент является самостоятельным, но в процессе возведении самого дома, становиться его материалом. Ядро платформы при этом выступает в роли завода по производству строительного материала. А сам компилятор страницы выступает в роли прораба, который по заданной схеме возводит дом.