Example #1
0
        public BehaviorChain BuildChain()
        {
            var chain = new BehaviorChain();

            chain.Route = new RouteDefinition(Url);
            chain.UrlCategory.Category = Key;


            IViewToken viewToken = File.ToViewToken();

            if (viewToken.ViewModel != typeof(Topic))
            {
                throw new InvalidOperationException("The view model has to be Topic here.");
            }

            if (Project.Name != "Host")
            {
                applyChrome(chain);
            }



            chain.AddToEnd(new TopicBehaviorNode(this, new ViewNode(viewToken)));

            return(chain);
        }
        public static IViewToken Resolve(this IViewToken token)
        {
            if (token is ProfileViewToken)
            {
                return(token.As <ProfileViewToken>().View);
            }

            return(token);
        }
Example #3
0
        private BehaviorChain chainWithOutput <T>(IViewToken token) where T : class
        {
            var chain = new BehaviorChain();

            chain.AddToEnd(ActionCall.For <StubController <T> >(x => x.Post(null)));
            chain.Output.Writers.AddToEnd(new ViewNode(token));

            return(chain);
        }
        public static ViewNode AddView(this OutputNode outputNode, IViewToken view, Type conditionType = null)
        {
            var node = new ViewNode(view);
            if (conditionType != null && conditionType != typeof(Always))
            {
                node.Condition(conditionType);
            }

            outputNode.Writers.AddToEnd(node);

            return node;
        }
Example #5
0
        public static ViewNode AddView(this OutputNode outputNode, IViewToken view, Type conditionType = null)
        {
            var node = new ViewNode(view);

            if (conditionType != null && conditionType != typeof(Always))
            {
                node.Condition(conditionType);
            }

            outputNode.Writers.AddToEnd(node);

            return(node);
        }
Example #6
0
        public void filter_just_returns_the_same()
        {
            var views = new IViewToken[]{
                MockRepository.GenerateMock<IViewToken>(),
                MockRepository.GenerateMock<IViewToken>(),
                MockRepository.GenerateMock<IViewToken>(),
                MockRepository.GenerateMock<IViewToken>(),
                MockRepository.GenerateMock<IViewToken>(),
                MockRepository.GenerateMock<IViewToken>()
            };

            var original = new ViewBag(views);

            new DefaultProfile().Filter(original).ShouldBeTheSameAs(original);
        }
Example #7
0
        public void filter_just_returns_the_same()
        {
            var views = new IViewToken[] {
                MockRepository.GenerateMock <IViewToken>(),
                MockRepository.GenerateMock <IViewToken>(),
                MockRepository.GenerateMock <IViewToken>(),
                MockRepository.GenerateMock <IViewToken>(),
                MockRepository.GenerateMock <IViewToken>(),
                MockRepository.GenerateMock <IViewToken>()
            };

            var original = new ViewBag(views);

            new DefaultProfile().Filter(original).ShouldBeTheSameAs(original);
        }
Example #8
0
        private BehaviorChain buildChainForView(IViewToken view)
        {
            BehaviorChain chain = null;


            if (view.ViewModel.HasAttribute <UrlPatternAttribute>())
            {
                var route = view.ViewModel.GetAttribute <UrlPatternAttribute>().BuildRoute(view.ViewModel);
                chain = new RoutedChain(route, view.ViewModel, view.ViewModel);
            }
            else
            {
                chain = BehaviorChain.ForResource(view.ViewModel);
            }

            chain.Tags.Add("ActionlessView");
            chain.UrlCategory.Category = Categories.VIEW;
            return(chain);
        }
Example #9
0
        private BehaviorChain buildChainForView(IViewToken view)
        {
            BehaviorChain chain = null;

            if (view.ViewModel.HasAttribute<UrlPatternAttribute>())
            {
                var route = view.ViewModel.GetAttribute<UrlPatternAttribute>().BuildRoute(view.ViewModel);
                chain = new RoutedChain(route, view.ViewModel, view.ViewModel);
            }
            else
            {
                chain = BehaviorChain.ForResource(view.ViewModel);
            }

            chain.Tags.Add("ActionlessView");
            chain.UrlCategory.Category = Categories.VIEW;
            return chain;
        }
Example #10
0
 public RenderAction(IViewToken viewFactory)
 {
     _viewFactory = viewFactory;
 }
Example #11
0
 public void SetUp()
 {
     theInner = MockRepository.GenerateMock<IViewToken>();
     theToken = new ProfileViewToken(theInner, "filtered name");
 }
Example #12
0
        private BehaviorChain buildChainForView(IViewToken view)
        {
            if (view.ViewModel.HasAttribute<UrlPatternAttribute>())
            {
                var url = view.ViewModel.GetAttribute<UrlPatternAttribute>().Pattern;
                return new RoutedChain(new RouteDefinition(url), view.ViewModel);
            }

            return BehaviorChain.ForResource(view.ViewModel);
        }
Example #13
0
 public void SetUp()
 {
     theInner = MockRepository.GenerateMock <IViewToken>();
     theToken = new ProfileViewToken(theInner, "filtered name");
 }
        public static void AddView(this IOutputNode node, IViewToken token)
        {
            var writer = typeof (ViewWriter<>).CloseAndBuildAs<IMediaWriter>(token, node.ResourceType);

            node.Add(writer);
        }
Example #15
0
        public static void AddView(this IOutputNode node, IViewToken token, IConditional conditional)
        {
            var writer = typeof (ViewWriter<>).CloseAndBuildAs<object>(token, node.ResourceType);

            node.Add(writer, conditional);
        }
Example #16
0
 public ProfileViewToken(IViewToken view, string filteredName)
 {
     _view         = view;
     _filteredName = filteredName;
 }
Example #17
0
        public SpecialView(IViewToken view)
        {
            _def = new ObjectDef(typeof(SpecialViewWriter <>), typeof(T));

            _def.DependencyByType <IViewFactory>(view.ToViewFactoryObjectDef());
        }
Example #18
0
 public ProfileViewToken(IViewToken view, string filteredName)
 {
     _view = view;
     _filteredName = filteredName;
 }
Example #19
0
 public bool IsExcluded(IViewToken token)
 {
     return(_excludes.Any(x => x(token)));
 }
Example #20
0
 public ViewNode(IViewToken token)
 {
     _token = token;
 }
Example #21
0
 public FubuPageActivator(IServiceLocator services, IViewToken view)
 {
     _services = services;
     _view     = view;
 }
Example #22
0
        public static void AddView(this IOutputNode node, IViewToken token)
        {
            var writer = typeof(ViewWriter <>).CloseAndBuildAs <IMediaWriter>(token, node.ResourceType);

            node.Add(writer);
        }
Example #23
0
 public ViewNode(IViewToken token)
 {
     _token = token;
 }
Example #24
0
        public static void AddView(this IOutputNode node, IViewToken token, IConditional conditional)
        {
            var writer = typeof(ViewWriter <>).CloseAndBuildAs <object>(token, node.ResourceType);

            node.Add(writer, conditional);
        }