Добавление интерфейса в пакет спецификации Jrules
Я искал настройки, я вручную воссоздаю Java-проект, который есть в моем проекте Jrules BOM, однако я не вижу способа реализации пользовательского интерфейса.:(
1 ответ
Нет. Ваша спецификация основана на вашем XOM (классы JAVA), поэтому в основном:
Вы пишете свои правила на основе спецификации, и эта спецификация сопоставляется с XOM для времени выполнения.
Вы никогда не создадите экземпляр интерфейса, поэтому у вас нет возможности добавить его в спецификацию и использовать его для создания правила, потому что вы никогда не сможете выполнить его таким образом.
Вы можете только импортировать класс, реализующий ваш интерфейс, и выразить его в своей спецификации.
Это означает, что во время выполнения движок будет знать, какой класс (экземпляр) использовать.
Кстати, имейте в виду, что ваша спецификация должна быть как можно меньше.
На БОМ можно ссылаться (так же, как проект JAVA)
Вы должны импортировать в свою спецификацию ТОЛЬКО и ТОЛЬКО классы, которые потребуются пользователям для создания правила.
Не распространяйте спецификацию и не произносите ее по умолчанию. В противном случае вы получите подходящий непригодный интерфейс при использовании автозаполнения. За исключением случаев, когда вы используете категории, но даже подумаете, очень хорошая практика - иметь небольшую спецификацию, в которую включен только "полезный класс для создания правил".
Имея в виду ссылки, я имею в виду, что у вас может быть проект правил BOM1, проект правил BOM2 и BOM3, содержащий только спецификации. И "правильный" проект правил, содержащий только правила и ссылки:
Например, BOM1, BOM2 и BOM3.
Будь проще:)