[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 

Forum Read-Only! Check the new site and forum here!

6) Qual a diferença de um filtro PULL para um filtro PUSH ?  XML
Forum Index -> F.A.Q.
Author Message
boaglio


[Avatar]

Joined: 28/09/2005 11:05:16
Messages: 299
Location: Sao Paulo - Brazil
Offline

6) Qual a diferença de um filtro PULL para um filtro PUSH ?

Nas primeiras versões do Mentawai, todos os filtros eram PUSH, isto é, os filtros empurravam os dados para o input da action, mesmo que a action não os requisitasse.

Por exemplo, um filtro de conexão (ConnectionFilter) iria colocar uma conexão no input da action sempre que ele fosse executado, mesmo que a action nunca viesse a necessitar da conexão. Dessa forma se quiséssemos colocar o filtro de conexão como global, teríamos que aceitar esse efeito colateral, ou seja, algumas actions teriam que receber uma conexão em seu input, mesmo sem precisar.

A abordagem PULL é mais eficiente e limpa. Um filtro PULL só irá colocar um dado no input da action, no momento em que esse for requisitado do input, ou seja, se ele nunca for requisitado do input o filtro fica inócuo (sem efeito). PULL em inglês significa puxar, isto é, se a action não puxar os dados nada acontece.

Além de mais eficiente, esse tipo de abordagem permite que a maioria dos filtros sejam configurados como globais, reduzindo e simplificando a configuração das actions no ApplicationManager.

Obs: As versões PUSH dos filtros IoCFilter, DIFilter, VOFilter, ConnectionFilter e InjectionFilter foram depreciados e renomeados para PushIoCFilter, DependencyFilter, PushVOFilter, PushConnectionFilter e PushInjectionFilter.

http://www.boaglio.com
[WWW]
 
Forum Index -> F.A.Q.
Go to:   
Powered by JForum 2.1.6 © JForum Team