.. _spec_solution_project_overrides:
Проектное перекрытие
===========================
Проектное перекрытие (переопределение) прикладного кода позволяет выполнить замену классов, из базовой поставки
решения, на классы, разработанные под нужды конкретного проекта.
Переопределены могут быть следующие классы:
- :term:`Api`
- :term:`Avi`
- :term:`Pkg`
- :term:`Lib`
Для объявления перекрытия, в ресурсах прикладного модуля необходимо создать файл ``META-INF/overrides.xml``.
.. code-block:: xml
где:
- ``{override_class_name}`` - каноническое имя перекрывающего класса.
- ``{base_class_name}`` - каноническое имя базового (перекрываемого) класса.
Файлы ``META-INF/overrides.xml`` считываются сервером приложений в момент загрузки образа решения.
Приоритет перекрытия
-----------------------
Приоритет перекрытия определяет какое из перекрытий будет применено, если в нескольких прикладных модулях содержатся
перекрытия одного класса из базовой поставки.
В файлах ``META-INF/overrides.xml`` приоритеты указываются в атрибутах:
1. ````.
2. ```__