Compartilhar via


Suplemento cenários de pipeline

O modelo de objeto de pipeline suplemento fornece a flexibilidade para hospedar aplicativos e suplementos interoperar das seguintes maneiras:

  • Compatibilidade com versões anteriores.Versões mais recentes dos hosts ou suplementos podem operar com os representantes mais antigos.

  • Isolamento.Você pode mover um ou mais add-ins em um domínio do aplicativo em processo de host ou em um processo isolado.

  • O compartilhamento.Você pode usar um suplemento em vários pipelines de comunicação.

A ilustração a seguir mostra um pipeline simples de comunicação e seus segmentos.

Canal de comunicação padrão

Compatibilidade com Versões Anteriores

Há dois cenários que demonstram a compatibilidade com versões anteriores.

Novo host, suplementos antigos

A ilustração a seguir mostra como um novo host pode trabalhar com um suplemento antigo.

Pipeline de comunicação com o novo host e suplemento antigo

Nesse cenário de compatibilidade com versões anteriores, o novo host (host v2) pode trabalhar com um antigo suplemento (Add-in v1) porque o seu adaptador no lado do suplemento (Adicionar no lado v1 adaptador-> v2) converte os tipos em um formato que o suplemento antigo possa compreender.

O novo adicionar-in (suplemento v2) possui seus próprio modo de exibição e o adaptador de segmentos para comunicação com o novo host.

Host antigo, novos suplementos

A ilustração a seguir mostra como um host antigo pode trabalhar com novos suplementos.

Pipeline de comunicações com host antigo e novo suplemento

Nesse cenário de compatibilidade com versões anteriores, o novo suplemento (Add-in v2) pode trabalhar com o host (host v1) antigo porque seu adaptador no lado do suplemento (Adicionar no lado v2 adaptador-> v1) converte os tipos em um formato que o host antigo possa compreender.

Vários níveis de isolamento

Você pode ativar add-ins em um domínio do aplicativo ou o novo processo utilizando sobrecargas de apropriado do Activate método. Esse isolamento pode ser necessário pelas seguintes razões:

  • Para lidar com situações onde o aplicativo host altera e suas dependências novas não pode ser acomodado por antigos adicionar-ins.Por exemplo, isso pode acontecer quando o aplicativo host para uma nova versão do .NET Framework.

  • Para obter confiabilidade fazendo com que o suplemento executar em seu próprio processo.

  • Crie uma caixa de proteção para o suplemento.Por exemplo, um aplicativo host e um suplemento têm diferentes níveis de confiança, conforme especificado pelo AddInSecurityLevel enumeração.

A ilustração a seguir mostra um pipeline de comunicação com os dois suplementos, um deles é um processo isolado.Na ilustração, OOP indica um processo isolado.

Pipeline de comunicação com o suplemento isolado

Nesse cenário, um desenvolvedor de pipeline tem duas versões diferentes do contrato e adaptadores: um é otimizado para comunicação entre domínios de aplicativo e o Outros é otimizado para comunicação entre processos.Nem os suplementos nem o host precisa estar ciente das diferenças porque eles usam os modos de exibição mesmos independentemente do contrato e o nível de isolamento.

Suplementos compartilhados

Você pode usar um suplemento com vários hosts, desde que o suplemento seja compatível com os hosts.Por exemplo, você pode usar um suplemento compartilhado para implementar uma barra de ferramentas que fornece uma Pesquisar na Internet para um host de aplicativo Web Web.Outro exemplo é um suplemento compartilhado que oferece filtros de spam e proteção contra vírus para servidores de email ou clientes de email.

Para habilitar o suplemento operar com seu novo host, você deve criar um novo adaptador no lado do suplemento que converte de seu modo de exibição do suplemento para o contrato do host.

A ilustração a seguir mostra como um suplemento (Add-in A) pode ser compartilhado por dois aplicativos de host (Host A e Host B).

Canal de comunicação com o suplemento compartilhado

Consulte também

Conceitos

Desenvolvimento de pipeline