예제 #1
0
        protected override Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            _lastNodeVertex = GetSink(interceptor.GetHashCode(), () => "Interceptor", typeof(InterceptorSegment),
                                      interceptor.MessageType);

            if (_stack.Count > 0)
                _edges.Add(new Edge(_stack.Peek(), _lastNodeVertex, _lastNodeVertex.TargetType.Name));

            return Recurse(() => base.VisitInterceptor(interceptor));
        }
예제 #2
0
        protected override Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            _lastNodeVertex = GetSink(interceptor.GetHashCode(), () => "Interceptor", typeof(InterceptorSegment),
                                      interceptor.MessageType);

            if (_stack.Count > 0)
            {
                _edges.Add(new Edge(_stack.Peek(), _lastNodeVertex, _lastNodeVertex.TargetType.Name));
            }

            return(Recurse(() => base.VisitInterceptor(interceptor)));
        }
예제 #3
0
        protected override Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            if (interceptor == null)
                return null;

            Pipe output = Visit(interceptor.Output);
            if (_segmentsToUnbind.Contains(interceptor))
                return output;

            if (output != interceptor.Output)
            {
                return interceptor.Clone(output);
            }

            return interceptor;
        }
예제 #4
0
        protected virtual Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            if (interceptor == null)
            {
                return(null);
            }

            Pipe output = Visit(interceptor.Output);

            if (output != interceptor.Output)
            {
                return(interceptor.Clone(output));
            }

            return(interceptor);
        }
예제 #5
0
        protected override Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            if (interceptor == null)
            {
                return(null);
            }

            Pipe output = Visit(interceptor.Output);

            if (_segmentsToUnbind.Contains(interceptor))
            {
                return(output);
            }

            if (output != interceptor.Output)
            {
                return(interceptor.Clone(output));
            }

            return(interceptor);
        }
예제 #6
0
        protected override Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            WriteLine(interceptor);

            return(base.VisitInterceptor(interceptor));
        }
예제 #7
0
        protected virtual Pipe VisitInterceptor(InterceptorSegment interceptor)
        {
            if (interceptor == null)
                return null;

            Pipe output = Visit(interceptor.Output);
            if (output != interceptor.Output)
                return interceptor.Clone(output);

            return interceptor;
        }