Hi, To address your case of wanting to execute code before and after the fault and result methods of IResponder, would it be sufficient to create an implementation of IResponder that takes another IResponder and wraps that object's fault and response methods. Something like:
class ResponderWrapper implements IResponder { private var _wrappedResponder; public ResponderWrapper(wrapped:IResponder) { _wrappedResponder = wrapped; } public function fault() { // your pre-execution code here _wrappedResponder.fault() // your post-execution code here } // and similarly for result. } You then use ResponderWrapper in place of the 'wrapped' IResponder. Further flexibility could be achieved by passing in additional parameters that are functions defining the pre and post execution operations when constructing this object. I have found this kind of 'decorator' approach quite useful in the past. Regarding the use of 'apply' - I think you are correct that you cannot use 'apply' on a method, for methods 'this' always is the owning object, even if you are referring to a method via a variable of type function. HTH Stephen