Как создать точку расширения#
Модуль в котором необходима точка расширения - Модуль1.
Модуль расширения - Модуль2.
В модуле в котором необходима точка расширения создаем класс с объектом компаньоном
Модуль1_Ept.scala.Класс унаследовать от класса
ExtensionPoint.Объект компаньон унаследовать от PkgFactory[
Модуль1_Ept].Создать метод точки расширения:
val extentionMethodExamlpe = declFunc("extentionMethodExamlpe") {
(sf: SuperFunc[NString], arg1: NString, arg2: NString) =>
sf().getOrElse(None.ns)
}
В модуле расширении создать класс
Модуль2_Модуль1Ext.scala.Унаследовать класс от класса
Extension.Создать метод расширения:
subFunc("extentionMethodExamlpe") { (sf: SuperFunc[NString], arg1: NString, arg2: NString) =>
...
}
В файле
src/main/resources/META-INF/extensions.xmlмодуля расширения зарегистрировать новую точку расширения:
<exts>
<ext class="ru.bitec.app.Модуль2.Модуль2_Модуль1Ext" targetEpt="`Модуль1`_Ept"/>
</exts>