Exemplo n.º 1
0
        public Api(WebServer server)
        {
            server.Add("/login", Login);
            server.Add("/register", Register);
            server.Add("/signout", SignOut);

            Router apiRouter = server.AddRouter("/api");

            apiRouter.Add("/kids", Kids)
            .Add("/user", User)
            .Add("/events", Events)
            .Add("/event", Event)
            .Add("/email_available", EmailAvailable)
            .Add("/add_kid", AddKid)
            .Add("/create_event", CreateEvent)
            .Add("/schedule_event", ScheduleEvent)
            .Add("/own_events", OwnEvents)
            .Add("/own_event", OwnEvent)
            .Add("/book_event", BookEvent)
            .Add("/categories", Categories)
            .Add("/user_update", UserUpdate)
            .Add("/pay", Pay);

            /*
             * Admin APIs
             */
            apiRouter.Add("/users", Users)
            .Add("/ban_user", BanUser);
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            WebServer     ws = new WebServer("http://*:8080/");
            GitController c  = new GitController();

            ws.Add(c);
            StreamServer d = new StreamServer();

            while (true)
            {
            }
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            int    port     = 83;
            string siteRoot = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..\\..\\SiteRoot");

            System.Console.WriteLine("The simplest possible web server using WebSiteSimple instead of");
            System.Console.WriteLine("custom web site data and session objects.");
            System.Console.WriteLine("SiteRoot [" + siteRoot + "]");
            System.Console.WriteLine("Port [" + port.ToString() + "]");
            System.Console.WriteLine("Home URL http://localhost:{0}/index.html", port);

            WebSiteSimple webSite = new WebSiteSimple(siteRoot);

            WebServer webServer = new WebServer();

            webServer.DiagOutput = new ConsoleDiagOutput();
            webServer.Add("localhost", port, webSite);

            System.Console.Out.WriteLine("Press ENTER to exit...");
            System.Console.In.ReadLine();
            webServer.Stop();
        }
Exemplo n.º 4
0
        static void Main(string[] args)
        {
            int    port     = 82;
            string siteRoot = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..\\..\\SiteRoot");

            System.Console.WriteLine("A web server supporting a web site with a subclassed WebSiteData<>");
            System.Console.WriteLine("and a custom TSession type, whose members are accessed by a custom debug page.");
            System.Console.WriteLine("Also has a custom page showing how to write dynamic output and access");
            System.Console.WriteLine("the WebSiteData<> and TSession data.");
            System.Console.WriteLine("SiteRoot [" + siteRoot + "]");
            System.Console.WriteLine("Port [" + port.ToString() + "]");
            System.Console.WriteLine("Home URL http://localhost:{0}/index.html", port);

            CustomWebSite webSite = new CustomWebSite(siteRoot);

            WebServer webServer = new WebServer();

            webServer.DiagOutput = new ConsoleDiagOutput();
            webServer.Add("localhost", port, webSite);

            System.Console.Out.WriteLine("Press ENTER to exit...");
            System.Console.In.ReadLine();
            webServer.Stop();
        }
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            chance = new ConcurrentChance();

            server          = WebServer.Create <UserSession>(Options.Host, Options.Port, Options.SessionLifetime);
            server.LogLevel = LogLevels.All;
            server.OnLog   += (s, arg) => Console.WriteLine(arg.Line);

            /*
             * Register content providers
             */
            StaticResourceProvider css = new StaticResourceProvider(GetPath("app/css"), "/css", ContentType.Css);

            server.Add("/css/*.css", css.OnRequest);

            StaticResourceProvider js = new StaticResourceProvider(GetPath("app/js"), "/js", ContentType.Javascript);

            server.Add("/js/*.js", js.OnRequest);

            StaticResourceProvider png = new StaticResourceProvider(GetPath("app/img"), "/img", ContentType.Image);

            server.Add("/img/*", png.OnRequest);

            WatermarkedResourceProvider evtImg = new WatermarkedResourceProvider(Options.StoragePath("eventimg"), "/eventimg");

            server.Add("/eventimg/*", evtImg.OnRequest);

            ResizedResourceProvider evtThumb = new ResizedResourceProvider(Options.StoragePath("eventimg"), "/eventthumb",
                                                                           Options.EventThumbnailWidth, Options.EventThumbnailHeight);

            server.Add("/eventthumb/*", evtThumb.OnRequest);

            /*
             * Start event scheduler
             */
            scheduler = new EventScheduler();
            scheduler.Start();



            /*
             * Register API
             */
            Api api = new Api(server);


            HtmlProvider pages = new HtmlProvider();

            server.Add("/", pages.Index);
            server.Add("/index", pages.Index);
            server.Add("/events", pages.Events);
            server.Add("/event/*", pages.Event);
            server.Add("/profile", pages.Profile);
            server.Add("/admin", pages.Admin);


            server.Start();
            Console.WriteLine("Press CTRL-C to shut down.");

            /*
             * Main thread now awaits SIGTERM
             */
            if (IsLinux())
            {
                SignalWaiter.Instance.WaitExitSignal();
                Shutdown();
            }
            else
            {
                Console.CancelKeyPress += (s, e) => Shutdown();
                while (true)
                {
                    Thread.Sleep(1000);
                }
            }
        }