/// <summary> /// 触发服务降级事件 /// </summary> /// <param name="request"></param> /// <param name="delegate"></param> /// <param name="serviceResolveFailException"></param> /// <returns></returns> bool InvokeFallbackRequestPipeline(FeignClientHttpRequest request, Delegate @delegate, ServiceResolveFailException serviceResolveFailException) { IFallbackProxy fallbackProxy = @delegate.Target as IFallbackProxy; FallbackRequestEventArgs <TService> eventArgs; if (fallbackProxy == null) { //可能因为method parameters length=0 , 故没有生成匿名调用类 eventArgs = new FallbackRequestEventArgs <TService>(this, request, Fallback, null, @delegate.Method); } else { eventArgs = new FallbackRequestEventArgs <TService>(this, request, Fallback, fallbackProxy, null); } OnFallbackRequest(eventArgs); return(eventArgs.IsTerminated); }
bool InvokeFallbackRequestPipeline(FeignClientRequest request, Delegate @delegate) { IFallbackProxy fallbackProxy = @delegate.Target as IFallbackProxy; FallbackRequestEventArgs eventArgs; if (fallbackProxy == null) { //可能因为method parameters length=0 , 故没有生成匿名调用类 eventArgs = new FallbackRequestEventArgs(this, request, _fallback, null, @delegate.Method); } else { eventArgs = new FallbackRequestEventArgs(this, request, _fallback, fallbackProxy, null); } OnFallbackRequest(eventArgs); return(eventArgs.IsTerminated); }
protected internal virtual void OnFallbackRequest(FallbackRequestEventArgs <TService> e) { _serviceFeignClientPipeline?.OnFallbackRequest(this, e); _serviceIdFeignClientPipeline?.OnFallbackRequest(this, e); _globalFeignClientPipeline?.OnFallbackRequest(this, e); }
protected internal override void OnFallbackRequest(FallbackRequestEventArgs e) { _serviceTypeFeignClientPipeline?.OnFallbackRequest(this, e); base.OnFallbackRequest(e); }