Example #1
0
        public static AppFunc App(ISimpleBlogService service)
        {
            if (service == null)
                throw new ArgumentNullException("service");

            var app = new List<Func<AppFunc, AppFunc>>();

            var router = new RegexRouter(app);

            var renderers = new Renderers(service);
            router.Get(@"^\/()$", renderers.Index);
            router.Get(@"^\/()feed.(?<type>xml|json|js)$", renderers.Feed);
            router.Get(@"^\/()robots.txt$", renderers.Robots);
            router.Get(@"^\/([a-f0-9]{40})\/([a-z0-9_-]+)$", renderers.Article);
            router.Get(@"^\/([a-f0-9]{40})\/(.+\.[a-z]{2,4})$", renderers.StaticFile);
            router.Get(@"^\/()([a-z0-9_-]+)$", renderers.Article);
            router.Get(@"^\/()(.+\.[a-z]{2,4})$", renderers.StaticFile);
            router.Get(@"^\/()category\/([\%\.a-z0-9_-]+)$", renderers.Category);
            router.All(@"*", renderers.NotFound);

            return app.ToOwinApp();
        }
Example #2
0
 public Renderers(ISimpleBlogService service)
 {
     this.service = service;
     this.template = new RazorEngine.Templating.TemplateService();
 }