Owin.Builder.AppBuilder.ConvertMultiHop C# (CSharp) Method

ConvertMultiHop() private method

private ConvertMultiHop ( Type signature, object app ) : object
signature System.Type
app object
return object
        private object ConvertMultiHop(Type signature, object app)
        {
            foreach (KeyValuePair<Tuple<Type, Type>, Delegate> conversion in _conversions)
            {
                object preConversion = ConvertOneHop(conversion.Key.Item2, app);
                if (preConversion == null)
                {
                    continue;
                }
                object intermediate = conversion.Value.DynamicInvoke(preConversion);
                if (intermediate == null)
                {
                    continue;
                }
                object postConversion = ConvertOneHop(signature, intermediate);
                if (postConversion == null)
                {
                    continue;
                }

                return postConversion;
            }
            return null;
        }