Добавление интерфейса в пакет спецификации Jrules - PullRequest
0 голосов
/ 20 июля 2011

Я искал настройки, я вручную воссоздаю проект Java, который есть в моем проекте спецификации Jrules, однако я не вижу способа реализовать пользовательский интерфейс.(

1 Ответ

0 голосов
/ 18 апреля 2012

Нет.Ваша спецификация основана на вашем XOM (классы JAVA), поэтому в основном:
Вы пишете свои правила на основе спецификации, и спецификация сопоставляется с XOM для времени выполнения.
Вы никогда не создадите экземпляр интерфейса, поэтому нет никакого способачтобы вы добавили его в спецификацию и использовали его для создания правила, потому что вы никогда не сможете выполнить его таким образом.
Вы можете только импортировать класс, реализующий ваш интерфейс, и озвучить его в своей спецификации.
Это означает, что во время выполнения движок будет знать, какой класс (экземпляр) использовать.

Кстати: имейте в виду, что ваша спецификация должна быть настолько малой, насколько это возможно.
На спецификацию можно ссылаться (как в проекте JAVA))
Вы должны импортировать в свою спецификацию ТОЛЬКО и ТОЛЬКО классы, которые потребуются пользователям для создания правила.
Не распространяйте спецификацию и не вербализируйте ее по умолчанию.В противном случае вы получите правильный непригодный интерфейс при использовании автозаполнения.За исключением случаев, когда вы используете категории, но даже подумаете, очень хорошая практика - иметь небольшую спецификацию, в которую включен только «полезный класс для создания правил».

Имея в виду ссылки, я имею в виду, что у вас может быть проект правил BOM1правило отклоняет спецификацию BOM2 и BOM3, содержащую только спецификации.И «правильный» проект правил, содержащий только правила и ссылки:
BOM1, BOM2 и BOM3, например.

Не усложняйте:)

...