Ejemplo n.º 1
0
 private bool TryGetCacheValue(BuildDescriptorParams descriptorParams, out ISparkViewEntry entry)
 {
     lock (this.cache)
     {
         return(this.cache.TryGetValue(descriptorParams, out entry));
     }
 }
Ejemplo n.º 2
0
 private void SetCacheValue(BuildDescriptorParams descriptorParams, ISparkViewEntry entry)
 {
     lock (this.cache)
     {
         this.cache[descriptorParams] = entry;
     }
 }
Ejemplo n.º 3
0
        protected override void beforeEach()
        {
            var template = MockRepository.GenerateMock <ITemplate>();
            var master   = MockRepository.GenerateMock <ITemplate>();

            template.Stub(x => x.ViewPath).Return("/Views/Home/index.spark");
            master.Stub(x => x.ViewPath).Return("/Views/Shared/appplication.spark");

            var descriptor = new ViewDescriptor(template)
            {
                Master = master
            };
            var definition = descriptor.ToViewDefinition();

            var resolver = MockFor <IViewDefinitionResolver>();

            resolver.Stub(x => x.Resolve(descriptor)).Return(definition);

            _entry        = MockRepository.GenerateMock <ISparkViewEntry>();
            _partialEntry = MockRepository.GenerateMock <ISparkViewEntry>();

            var provider = MockFor <IViewEntryProviderCache>();

            provider
            .Stub(x => x.GetViewEntry(definition.ViewDescriptor))
            .Return(_entry);
            provider
            .Stub(x => x.GetViewEntry(definition.PartialDescriptor))
            .Return(_partialEntry);


            Services.Inject(descriptor);
        }
Ejemplo n.º 4
0
 public void Precompile()
 {
     if (_entry == null)
     {
         _entry = _source();
     }
 }
Ejemplo n.º 5
0
 public void Store(ISparkViewEntry entry)
 {
     lock (_cache)
     {
         _cache[entry.Descriptor] = entry;
     }
 }
 public void Store(ISparkViewEntry entry)
 {
     lock (this._cache)
     {
         this._cache[entry.Descriptor] = entry;
     }
 }
Ejemplo n.º 7
0
 public void Precompile()
 {
     if (_entry == null)
     {
         _entry = _source();
     }
 }
Ejemplo n.º 8
0
        private string RenderView(SparkViewDescriptor descriptor)
        {
            _entry = _engine.CreateEntry(descriptor);
            var view     = _entry.CreateInstance();
            var contents = view.RenderView();

            _engine.ReleaseInstance(view);
            return(contents);
        }
Ejemplo n.º 9
0
        private ViewEngineResult BuildResult(HttpContextBase httpContext, ISparkViewEntry entry)
        {
            var view = entry.CreateInstance();

            if (view is NancySparkView)
            {
                ((NancySparkView)view).CacheService = this.CacheServiceProvider.GetCacheService(httpContext);
            }

            return(new ViewEngineResult(view as NancySparkView, this));
        }
        public ISparkViewEntry CreateEntry(SparkViewDescriptor descriptor)
        {
            ISparkViewEntry entry = this.CompiledViewHolder.Lookup(descriptor);

            if (entry == null)
            {
                entry = this.CreateEntryInternal(descriptor, true);
                this.CompiledViewHolder.Store(entry);
            }
            return(entry);
        }
Ejemplo n.º 11
0
        protected override void beforeEach()
        {
            _service     = MockFor <IViewModifierService>();
            _entrySource = MockFor <IViewEntrySource>();

            _sourceEntry = MockRepository.GenerateMock <ISparkViewEntry>();
            _entryView   = MockRepository.GenerateMock <FubuSparkView>();
            _serviceView = MockRepository.GenerateMock <IFubuSparkView>();

            _sourceEntry.Expect(x => x.CreateInstance()).Return(_entryView);
            _service.Expect(x => x.Modify(_entryView)).Return(_serviceView);
        }
Ejemplo n.º 12
0
        private ViewEngineResult BuildResult(RequestContext requestContext, ISparkViewEntry entry)
        {
            var view = (IView)entry.CreateInstance();

            if (view is SparkView)
            {
                var sparkView = (SparkView)view;
                sparkView.ResourcePathManager = Engine.ResourcePathManager;
                sparkView.CacheService        = CacheServiceProvider.GetCacheService(requestContext);
            }
            return(new ViewEngineResult(view, this));
        }
Ejemplo n.º 13
0
        protected virtual ISparkView InstantiateTheView <TViewModel>(SparkViewDescriptor descriptor, TViewModel viewModel)
            where TViewModel : class
        {
            _viewEngine.Settings.PageBaseType = typeof(SparkView <>).MakeGenericType(viewModel.GetType()).ToPrettyString();

            ISparkViewEntry entry = _viewEngine.CreateEntry(descriptor);
            var             view  = (SparkView <TViewModel>)entry.CreateInstance();

            view.ResourcePathManager = _viewEngine.ResourcePathManager;
            view.Model = viewModel;
            return(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);
            }
        }
Ejemplo n.º 15
0
 private string RenderView(SparkViewDescriptor descriptor)
 {
     _entry = _engine.CreateEntry(descriptor);
     var view = _entry.CreateInstance();
     var contents = view.RenderView();
     _engine.ReleaseInstance(view);
     return contents;
 }
Ejemplo n.º 16
0
 private bool TryGetCacheValue(BuildDescriptorParams descriptorParams, out ISparkViewEntry entry)
 {
     lock (_cache) return _cache.TryGetValue(descriptorParams, out entry);
 }
Ejemplo n.º 17
0
 private void SetCacheValue(BuildDescriptorParams descriptorParams, ISparkViewEntry entry)
 {
     lock (_cache) _cache[descriptorParams] = entry;
 }
Ejemplo n.º 18
0
 private ViewEngineResult BuildResult(ISparkViewEntry entry)
 {
     var view = (IView)entry.CreateInstance();
     if (view is SparkView)
     {
         ((SparkView)view).ResourcePathManager = Engine.ResourcePathManager;
     }
     return new ViewEngineResult(view, this);
 }
Ejemplo n.º 19
0
 private ViewEngineResult BuildResult(RequestContext requestContext, ISparkViewEntry entry)
 {
     var view = (IView)entry.CreateInstance();
     if (view is SparkView)
     {
         var sparkView = (SparkView)view;
         sparkView.ResourcePathManager = Engine.ResourcePathManager;
         sparkView.CacheService = CacheServiceProvider.GetCacheService(requestContext);
     }
     return new ViewEngineResult(view, this);
 }
Ejemplo n.º 20
0
 public Mapping(int hashCode, ISparkViewEntry entry)
 {
     Add(hashCode, entry);
 }
Ejemplo n.º 21
0
 public void Add(int hashCode, ISparkViewEntry entry)
 {
     _entries[hashCode] = entry;
 }
Ejemplo n.º 22
0
 public Mapping(int hashCode, ISparkViewEntry entry)
 {
     Add(hashCode, entry);
 }
Ejemplo n.º 23
0
        private ViewEngineResult BuildResult(HttpContextBase httpContext, ISparkViewEntry entry)
        {
            ISparkView view = entry.CreateInstance();
            if (view is SparkView)
            {
                var sparkView = (SparkView) view;
                sparkView.ResourcePathManager = Engine.ResourcePathManager;
                sparkView.CacheService = CacheServiceProvider.GetCacheService(httpContext);
            }
            var page = view as IFubuPage;
            if (page != null)
                page.ServiceLocator = _serviceLocator;

            return new ViewEngineResult(view, this);
        }
Ejemplo n.º 24
0
 public void Add(int hashCode, ISparkViewEntry entry)
 {
     _entries[hashCode] = entry;
 }
Ejemplo n.º 25
0
 private ViewEngineResult BuildResult(RequestContext requestContext, ISparkViewEntry entry)
 {
     var view = (IView)entry.CreateInstance();
     if (view is TestSparkView)
     {
         var sparkView = (TestSparkView)view;
         sparkView.ResourcePathManager = engine.ResourcePathManager;
     }
     return new ViewEngineResult(view, this);
 }