Цитата:
Сообщение от
ax_mct
Интересно. Спасибо.
Я правильно понимаю что проверка конфликта решений ISV не на этапе компиляции, а как runtime error?
Ну, на этапе компиляции и раньше не было. Раньше два ISV могли подписаться на один и тот же метод, и вернуть результат unconditionally.
Это приводило к ситуации "Last man wins" (ну или first man, не суть)
С введением конструктора EventHandlerResult::singleResponse() теперь упадет ошибка, что, мол, попытка повторного вызова - это подобно тому, как это сделано в SysExtension framework
К сожалению, с Replaceable так не получается, то есть опять возвращаемся к First Man Wins - если безусловно не вызывать next() и ваш код вызовется первым, то у остальных не будет шанса, даже если по условиям ваш код ничего бы доп не сделал.
Да и вообще, сосуществование нескольких ISV решений - сложная тема. Если у кого-то есть идеи, как ее решить, я бы с удовольствием послушал.