public string Render <TViewData>(string template, TViewData data) { var settings = new SparkSettings(); settings.AddNamespace("Topshelf.Dashboard"); settings.PageBaseType = typeof(TopshelfView).FullName; var engine = new SparkViewEngine(settings) { ViewFolder = _viewFolder, }; ISparkView instance = engine.CreateInstance(new SparkViewDescriptor().AddTemplate(template)); var view = (TopshelfView <TViewData>)instance; view.SetModel(data); var sb = new StringBuilder(); using (var writer = new StringWriter(sb)) view.RenderView(writer); return(sb.ToString()); }
private static void RenderToResponse(IHttpEntity response, ISparkView templateBase) { Encoding targetEncoding = Encoding.UTF8; response.ContentType.CharSet = targetEncoding.HeaderName; TextWriter writer = null; bool ownsWriter = false; try { if (response is ISupportsTextWriter) { writer = ((ISupportsTextWriter) response).TextWriter; } else { writer = new DeterministicStreamWriter(response.Stream, targetEncoding, StreamActionOnDispose.None); ownsWriter = true; } templateBase.RenderView(writer); } finally { if (ownsWriter) writer.Dispose(); } }
private static void RenderToResponse(IHttpEntity response, ISparkView templateBase) { Encoding targetEncoding = Encoding.UTF8; response.ContentType.CharSet = targetEncoding.HeaderName; TextWriter writer = null; bool ownsWriter = false; try { if (response is ISupportsTextWriter) { writer = ((ISupportsTextWriter)response).TextWriter; } else { writer = new DeterministicStreamWriter(response.Stream, targetEncoding, StreamActionOnDispose.None); ownsWriter = true; } templateBase.RenderView(writer); } finally { if (ownsWriter) { writer.Dispose(); } } }
public static string RenderView(this ISparkView view) { var writer = new StringWriter(); view.RenderView(writer); return(writer.ToString()); }
protected virtual string RenderTheView(ISparkView view) { var writer = new StringWriter(); view.RenderView(writer); writer.Flush(); return(writer.GetStringBuilder().ToString()); }
public void ReleaseInstance(ISparkView view) { if (LanguageFactory != null) { LanguageFactory.InstanceReleased(Compiler, view); } Activator.Release(Compiler.CompiledType, view); }
private static string Render(ISparkView view) { var builder = new StringBuilder(); using (var writer = new StringWriter(builder)) { view.RenderView(writer); writer.Flush(); } return builder.ToString(); }
public ISparkView CreateInstance() { ISparkView view = this.Activator.Activate(this.Compiler.CompiledType); if (this.LanguageFactory != null) { this.LanguageFactory.InstanceCreated(this.Compiler, view); } return(view); }
private static string Render(ISparkView view) { var builder = new StringBuilder(); using (var writer = new StringWriter(builder)) { view.RenderView(writer); writer.Flush(); } return(builder.ToString()); }
private void SetModel <TModel>(TModel model, ISparkView view) where TModel : class { var fubuPage = view as FubuSparkView <TModel>; if (fubuPage == null) { return; } fubuPage.ServiceLocator = _services; fubuPage.SetModel(model); }
public override void InstanceReleased(ViewCompiler compiler, ISparkView view) { if (compiler is PythonViewCompiler && view is IScriptingSparkView) { PythonEngineManager.InstanceReleased( (PythonViewCompiler)compiler, (IScriptingSparkView)view); } else { base.InstanceCreated(compiler, view); } }
public void ReleaseInstance(ISparkView view) { if (view == null) { throw new ArgumentNullException("view"); } ISparkViewEntry entry = this.CompiledViewHolder.Lookup(view.GeneratedViewId); if (entry != null) { entry.ReleaseInstance(view); } }
public override void InstanceCreated(ViewCompiler compiler, ISparkView view) { if (compiler is PythonViewCompiler && view is IScriptingSparkView) { PythonEngineManager.InstanceCreated( (PythonViewCompiler) compiler, (IScriptingSparkView) view); } else { base.InstanceCreated(compiler, view); } }
public void UsesTheSparkEngineToCreateAView() { var expectedSparkView = new TestSparkResourceView(); var sparkViewEngine = MockRepository.GenerateStub <ISparkViewEngine>() .StubCreateInstance(expectedSparkView); sparkViewEngine.StubCreateInstance(expectedSparkView); var resolver = new SparkViewResolverBuilder().With(sparkViewEngine).Build(); ISparkView resolvedView = resolver.Create(null, null); Assert.That(resolvedView, Is.EqualTo(expectedSparkView)); }
public override void InstanceCreated(ViewCompiler compiler, ISparkView view) { if (compiler is RubyViewCompiler && view is IScriptingSparkView) { RubyEngineManager.InstanceCreated( (RubyViewCompiler)compiler, (IScriptingSparkView)view); } else { base.InstanceCreated(compiler, view); } }
public void RenderUsesCorrectlyNamedViewFromResolverToWriteToWriter() { string viewName = "fooView"; var viewData = new { X = "b", Y = new { A = "C" } }; var sparkViewResolver = MockRepository.GenerateStub <ISparkViewResolver>(); ISparkView sparkview = MockRepository.GenerateStub <ISparkView>(); sparkViewResolver.Stub(x => x.Create(viewName, viewData)).Return(sparkview); var configuration = new Dictionary <string, string> { { "TemplateName", viewName } }; var sparkRenderer = new SparkRendererBuilder().With(sparkViewResolver).Build(); TextWriter writer = MockRepository.GenerateStub <TextWriter>(); sparkRenderer.Render(viewData, writer, configuration); sparkview.AssertWasCalled(x => x.RenderView(writer)); }
public ViewEngineResult(ISparkView view, SparkViewFactory factory) { View = view; Factory = factory; }
public virtual void InstanceReleased(ViewCompiler compiler, ISparkView view) { }
public ViewContext(ActionContext actionContext, ISparkView view) : base(actionContext.HttpContext, actionContext.RouteData, actionContext.ActionNamespace, actionContext.ActionName) { View = view; }
public void Release(Type type, ISparkView view) { }
public void ReleaseInstance(ISparkView view) { if (view == null) throw new ArgumentNullException("view"); var entry = CompiledViewHolder.Current.Lookup(view.GeneratedViewId); if (entry != null) entry.ReleaseInstance(view); }
public void ReleaseInstance(ISparkView view) { throw new System.NotImplementedException(); }
public virtual void InstanceCreated(ViewCompiler compiler, ISparkView view) { }
public void Release(Type type, ISparkView view) { kernel.ReleaseComponent(view); }
public ViewContext(ActionContext actionContext, ISparkView view, TextWriter writer) : base(actionContext.HttpContext, actionContext.RouteData, actionContext.ActionNamespace, actionContext.ActionName) { Writer = writer; View = view; }
public ViewSearchResult(ISparkView view, ActionContext actionContext) { View = view; ActionContext = actionContext; }
public void Release(Type type, ISparkView view) { throw new NotImplementedException(); }
public ViewContext(ActionContext actionContext, ISparkView view) : base(actionContext.ActionNamespace, actionContext.ActionName) { View = view; }
public void Render(object viewData, TextWriter writer, IDictionary <string, string> configuration) { ISparkView sparkView = _sparkViewResolver.Create(configuration[SparkConfigKeys.TemplateName], viewData); sparkView.RenderView(writer); }
public virtual void ReleaseView(ActionContext actionContext, ISparkView view) { this.Engine.ReleaseInstance(view); }
public override void InstanceReleased(ViewCompiler compiler, ISparkView view) { if (compiler is RubyViewCompiler && view is IScriptingSparkView) { RubyEngineManager.InstanceReleased( (RubyViewCompiler)compiler, (IScriptingSparkView)view); } else { base.InstanceCreated(compiler, view); } }
public void ReleaseInstance(ISparkView view) { if (LanguageFactory != null) LanguageFactory.InstanceReleased(Compiler, view); Activator.Release(Compiler.CompiledType, view); }
public ViewContext(ActionContext actionContext, ISparkView view) : base(actionContext.HttpContext, actionContext.ViewPath) { View = view; }
public static ISparkViewEngine StubCreateInstance(this ISparkViewEngine sparkViewEngine, ISparkView view) { sparkViewEngine.Stub(x => x.CreateInstance(null)).IgnoreArguments().Return(view); return(sparkViewEngine); }