Порядок загрузки расширений

LUWRAIN поддерживает механизм расширений, которые позволяют дополнять функциональность системы. Расширения LUWRAIN бывают трёх типов:

  1. Расширения в виде откомпилированных jar-файлов.
  2. Расширения на языке JavaScript.
  3. Текстовые расширения.

Расширения (extensions) не следует путать с пакетами (packs). Эти термины тесно связаны, но выполняют различные функции. Расширение — это специальное понятие ядра LUWRAIN, которое служит задаче загрузке новых структур (приложений, команд и пр.). Пакеты, в свою очередь, не воспринимаются явным образом ядром LUWRAIN, они являются набором файлов с дополнительной информацией и предназначены для доставки расширений на компьютер пользователя. Другими словами, пакеты — это специально оформленные дистрибутивы, которые помогают в понятной форме загружать расширения и удалять их. Один пакет может содержать несколько расширений, причём разных типов.

Требования к расширениям

Расширения в виде jar-файлов предоставляют максимальные возможности для добавления нового функционала в LUWRAIN. В отличие от расширений на языке JavaScript и расширений в виде текстовых файлов, такие расширения не могут быть выгружены, т. е. не являются в полной мере динамическими. В соответствующем jar-файле должен присутствовать класс, который удовлетворяет интерфейсу org.luwrain.core.extensions.Extension. Jar-файл должен содержать манифест, в котором в секции org/luwrain есть атрибут Extensions, содержащий имя этого класса-расширения.

Правила написания расширений на языке JavaScript и в виде текстовых файлов приведены в соответствующих разделах документации:

© 2012–2018 Разработчики LUWRAIN
Дизайн от Strash