As a follow up, since no one shared their opinion, here's what I did:
1. as I described it in b)
2. calls are cached the first time a method is called
3. when empty array is returned either target implementation is called
directly, or (when called for method without target implementation,
like abstract method or interface) a NotImplementedException is
thrown.
Also when calling target method directly a check for leaking this is
being made if necessary, and if target is returned, method returns
reference to proxy instead.
4. Serialization is handled the following way: I didnt add any code to
serialization, for deserialization only the InterceptorSelector is
obtained from ProxyGenerationOptions. This way the information about
cached interceptors is being lost, but it should be recreated when
method is called again, so no loss here, at least I don't see one.
5. I removed the UseSelector property.
the patch is here: 
http://support.castleproject.org/projects/DYNPROXY/issues/view/DYNPROXY-ISSUE-37

Feel free to review it, and apply it, or come back to me with more
feedback.

Cheers,
Krzysztof
http://kozmic.pl
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Castle Project Development List" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to