private void ProcessPostFilters(ChannelRequest channelRequest, ChannelResponse channelResponse) { foreach (IChannelFilter filter in _postFilters) { filter.ChannelRequest = channelRequest; filter.ChannelResponse = channelResponse; filter.Process(); } }
public void Intercept(IInvocation invocation) { ChannelRequest channelRequest = new ChannelRequest(); ChannelResponse channelResponse = new ChannelResponse(); channelRequest.Invocation = invocation; channelRequest.ServiceName = ServiceName; ProcessPreFilters(channelRequest, channelResponse); try { channelResponse.Content = _transport.SendChannelRequest(channelRequest.Content); } catch (Exception) { throw; } ProcessPostFilters(channelRequest, channelResponse); }
public static ChannelRequest GetChannelRequest(CastleInterception.IInvocation invocation) { ChannelRequest result = new ChannelRequest(); result.Message = new RequestMessage(); result.Invocation = invocation; result.ServiceName = typeof(FakeProxy).Name; return result; }