private static TransitionList CreateDefaultRoutes()
        {
            var list = new TransitionList();

            list.Register(HttpState.BeforeStart, new[] { new TransitionRoute(HttpPipelineAction.NEXT, HttpState.Initialcheck) });

            return(list);
        }
        public TransitionTable(TransitionList overrides, IPipelineActionCreator creator)
        {
            if (overrides == null)
            {
                throw new ArgumentNullException(nameof(overrides), $"Parameter TransitionList is null");
            }

            _creator = creator;

            _map = overrides;

            if (!_map.ContainsState(HttpState.BeforeStart))
            {
                _map.Register(HttpState.BeforeStart, new[] { new TransitionRoute(HttpPipelineAction.NEXT, HttpState.Initialcheck) });
            }

            _current = _map.FirstNode;
        }