Esempio n. 1
0
        public override void Execute(string src, Uri uri, HttpListenerContext p, WebConfig wc, StreamWriter sw)
        {
            var bcp = new CSharpCodeProvider();
            var ass = AssemblyInitializer.Init(bcp, src, sw, ini);

            var page = AssemblyPageResolver.Resolve(ass);

            page.Response = sw;

            uri = new Uri("http://localhost/" + Path.GetFileName(uri.LocalPath));

            page.Info        = new HttpInfo(Get.Create(uri), uri, wc.DataDir, p);
            page.IncludePage = new Action <string>(f =>
            {
                new Language().Execute(File.ReadAllText(wc.DataDir + f), uri, p, wc, sw);
            });
            page.Redirect = new Action <string>(f =>
            {
                p.Response.Redirect(f);
            });
            page.Isset = new Predicate <object>(b => {
                return(StandardScriptApi.isset(b));
            });

            page.Get = page.Info.Get;

            page.OnLoad();
        }
Esempio n. 2
0
        public override void Execute(string src, Uri uri, HttpListenerContext p, WebConfig wc, StreamWriter sw)
        {
            var eng  = IronScheme.RuntimeExtensions.ScriptEngine.CompileCode(src);
            var mod  = eng.MakeModule("web");
            var sapi = new StandardScriptApi(uri, p, sw);

            foreach (var v in sapi.Variables)
            {
                mod.SetVariable(v.Key, v.Value);
            }

            eng.Execute(mod);
        }
Esempio n. 3
0
        public override void Execute(string src, Uri uri, HttpListenerContext p, WebConfig wc, StreamWriter sw)
        {
            Microsoft.Scripting.Hosting.ScriptEngine py = IronRuby.Ruby.CreateEngine();
            Microsoft.Scripting.Hosting.ScriptScope  s  = py.CreateScope();

            var sapi = new StandardScriptApi(uri, p, sw);

            foreach (var item in sapi.Variables)
            {
                s.SetVariable(item.Key, item.Value);
            }

            py.Execute(src, s);
        }
Esempio n. 4
0
        public override void Execute(string src, Uri uri, HttpListenerContext p, WebConfig wc, StreamWriter sw)
        {
            var en   = new ECLang.Engine();
            var sapi = new StandardScriptApi(uri, p, sw);

            foreach (var item in sapi.Functions)
            {
                en.AddItem(item.Key, item.Value);
            }
            foreach (var item in sapi.Variables)
            {
                en.AddItem(item.Key, item.Value);
            }
            foreach (var item in sapi.Types)
            {
                en.AddItem(item.Key, item.Value);
            }

            en.Execute(src);
        }
Esempio n. 5
0
        public override void Execute(string src, Uri uri, HttpListenerContext p, WebConfig wc, StreamWriter sw)
        {
            VBScript.VBScriptEngine engine = new VBScriptEngine();

            var sapi = new StandardScriptApi(uri, p, sw);

            engine.Add("require", new Action <string>(pa => engine.Execute(File.ReadAllText(pa))));
            engine.Add("eval", new Func <string, object>(pa => engine.Evaluate(pa)));

            foreach (var f in sapi.Functions)
            {
                engine.Add(f.Key, f.Value);
            }
            foreach (var f in sapi.Variables)
            {
                engine.Add(f.Key, f.Value);
            }
            foreach (var f in sapi.Types)
            {
                engine.Add(f.Key, f.Value);
            }
        }