[Patterns] : Abstract Factory + Proxy Dynamique
Voila suite a mon petit post précédent, je me suis pencher sur le probleme de l'interception des mes appels à une couche metier pour y effectué des operations techniques. Aprés un rapide tour d'horizon sur le tout nouveau 'Policy Injection Application Block' des "Enterprises Library 3.0" (voir quelques post plus bas), j'ai rejeter cette belle brique qui m'obigerait a faire heriter mes classes de "MarshalByRefObject" (Tiens ca ressemble a du remoting), je me suis penchais sur le projet "Castle.DynamicProxy" qui est bien plus permissif. Le petit désavantage de ces Framework c'est la lourdeure de leur code :
IMyInterface proxy = (IMyInterface) new ProxyGenerator().CreateProxy( typeof(IMyInterface), new StandardInterceptor(), new MyInterfaceImpl() );
(Pas simple d'instancier un objet Proxifié)
Enfin, je me suis dis que comme mes objet metier étaient instanciés par une abstract factory, celle-ci pourrait se charger de proxifier l'object avant de le renvoyer.
Ce qui donne le nouveau source qui est attaché à se post.
En esperant que ceci peut vous aider.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :