Esempio n. 1
0
        public ScriptedMiddlewareActivator(RequestDelegate next, IFileProvider scripts, IApplicationRuntime runtime, string scriptName)
        {
            _next    = next;
            _runtime = runtime;
            var codeSrc = new FileInfoCodeSource(scripts.GetFileInfo(scriptName));
            var image   = ScriptedMiddleware.CompileModule(runtime.Engine.GetCompilerService(), codeSrc);

            _module = new LoadedModule(image);
        }
Esempio n. 2
0
        public async Task InvokeAsync(HttpContext context)
        {
            var engine   = _runtime.Engine;
            var instance = new ScriptedMiddleware(_next, _module);
            var machine  = MachineInstance.Current;

            engine.Environment.LoadMemory(machine);
            engine.InitializeSDO(instance);
            await instance.InvokeAsync(context);
        }
        public async Task InvokeAsync(HttpContext context)
        {
            var engine   = _runtime.Engine;
            var instance = new ScriptedMiddleware(_next, _module);
            var machine  = MachineInstance.Current;

            machine.PrepareThread(engine.Environment);
            try
            {
                _runtime.DebugCurrentThread();
                engine.InitializeSDO(instance);
                await instance.InvokeAsync(context);
            }
            finally
            {
                _runtime.StopDebugCurrentThread();
            }
        }
 public async Task InvokeAsync(HttpContext context)
 {
     var instance = new ScriptedMiddleware(_next, _module, _runtime);
     await instance.InvokeAsync(context);
 }