Рассылка для плагинов

Тема в разделе ".NET", создана пользователем miherlosev, 27 авг 2009.

  1. miherlosev

    miherlosev Гость

    Есть главное приложение. Есть плагины. Плагин - dll, в которой зашит некоторый класс, реализующий интерфейс IPlugin.
    Гланое приложение грузит плагины следующим образом
    1)Смотрит все dll в файле с плагинами
    2)Грузит их
    3)Вынимает все типы из сборки и если тип(класс) поддерживает интерфейс IPlugin создает экземпляр этого типа - это и будет экземпляр плагина.

    Как сделать следующие вещи:
    1)Мне нужно, чтобы плагины "узнали" о том что произошло какое-то событие в хостовом приложении
    2)Список событий на которое подписывается плагин можно было более-менне легко настраивать.

    Я использую .NET.
     
  2. etc

    etc Гость

    Нафига? есть же атрибуты асэмблаевские.
    Для этого надо делать систему оповещения.
    Вот тут непонятно. Что такое "легко настраивать"?
     
  3. miherlosev

    miherlosev Гость

    1)Мой вариант кажется мне предпочтительней( вынимам все типы из сборки и т.д.), т.к. в одной ассембле может быть несколько плагинов
    2)"Делать систему оповещения" - опишите пожалуйста принцип ее работы (или можно ссылочку)
    3)Легко настраивать - каждый плагин сам подписывается на те события которые ему нужны
     
  4. etc

    etc Гость

    1 - отделять мух от котлет в первую очередь, т.е. если длл не содержит атрибут, то циклить по типам нет смысла, ну да хозяин барин.
    2 - дык простые ивенты, вот вам и система оповещения, не на виндовых же событиях раскручивать ...
    3 - эээ, я то думал ... см 2.
     
  5. miherlosev

    miherlosev Гость

    Спасибо за информацию, сделал.
    Применил паттерн программирования ObServer
     
Загрузка...

Поделиться этой страницей