Diferença entre módulo e plugin no Petrel Ocean

Diferença entre módulo e plugin no Petrel Ocean

Comecei a mexer no Petrel Ocean agora há pouco, e quero saber qual a diferença entre o Plug-in e o Módulo.

Pelo menos por enquanto, eles parecem iguais.

Alguém pode me dar algumas idéias?

Responder1

A classe Plugin contém propriedades que fornecem identidade ao plugin e são usadas pelo gerenciador de plug-ins. O plug-in contém todos os módulos em módulos IEnumerable. A interface IModule define métodos das fases do ciclo de vida do módulo. Durante a inicialização do Petrel, o Ocean Core carregará os módulos conforme definido em um arquivo de configuração pelo gerenciador de plug-ins baseado na classe Plugin.

Responder2

O plugin é novo, o IModule é antigo.

O Plugin Manager lida com o Plugin, então é esse que você deve usar.

Responder3

Se você planeja implantar seu plug-in por meio da Ocean Store, será necessário derivar da classe Plugin. É claro que seu plug-in também DEVE implementar o IModule, pois é onde residem os métodos que controlam o ciclo de vida.

Responder4

Pluginé uma entidade agregadora de IModule, ou seja, um plug-in Ocean pode consistir em vários módulos, cada um deles licenciado separadamente.

Plugincontém informações adicionais - Author, Contact, PluginUri, que ajudam o Petrel a informar melhor os usuários quando um plug-in causa um problema (por exemplo, exceção não tratada). A propósito, Pluginé apenas um contêiner de informações, pois não contém nenhum método para substituir.

Pluginpermite declarar Dependencies, para definir a ordem de carregamento dos plug-ins Ocean no Petrel.

E por fim, um plug-in Ocean com Pluginclasse definida e empacotada como PIP, contém um metarquivo em formato XML, com todas as Pluginpropriedades, permitindo que o Petrel verifique antecipadamente determinadas condições, sem realmente instalá-lo. Um exemplo é AppVersiona propriedade, que define a versão do aplicativo host (por exemplo, Petrel), com a qual este plug-ins é compilado.

informação relacionada