예제 #1
0
        public BehaviorGraph()
        {
            _settings = new SettingsCollection(null);
            _settings.Replace(SessionStateRequirement.RequiresSessionState);

            RouteIterator = new SortByRouteRankIterator(); // can override in a registry

            TypeResolver = new TypeResolver();
            _services.AddService <ITypeResolver>(TypeResolver);
        }
예제 #2
0
        public BehaviorGraph()
        {
            _log = new ConfigLog(this);

            _settings = new SettingsCollection(null);
            _settings.Replace(SessionStateRequirement.RequiresSessionState);

            RouteIterator = new SortByRouteRankIterator(); // can override in a registry

            TypeResolver = new TypeResolver();
            _services.AddService <ITypeResolver>(TypeResolver);

            Types = new TypePool(null); // need a default for some tests
        }
예제 #3
0
        public BehaviorGraph(IConfigurationObserver observer)
        {
            RouteIterator = new SortByRouteRankIterator(); // can override in a registry
            Observer      = observer;

            _chainsForType.OnMissing = findChainsByType;

            _chainsForTypeAndCategory.OnMissing =
                type =>
                new Cache <string, IEnumerable <BehaviorChain> >(
                    category => { return(ChainsFor(type).Where(x => x.UrlCategory.Category == category).ToList()); });

            _chainsForMethod = new Cache <Type, ChainGroup>(type => new ChainGroup(type, this));

            _creators =
                new Cache <Type, BehaviorChain>(
                    type => { return(Behaviors.SingleOrDefault(x => x.UrlCategory.Creates.Contains(type))); });
        }
예제 #4
0
 public BehaviorGraph(IConfigurationObserver observer)
 {
     RouteIterator = new SortByRouteRankIterator(); // can override in a registry
     Observer      = observer;
 }