/// <summary> /// Initializes a new instance of the <see cref="ScriptRegistrar"/> class. /// </summary> /// <param name="scripts">The scripts.</param> /// <param name="scriptableComponents">The scriptable components.</param> /// <param name="viewContext">The view context.</param> /// <param name="assetItemMerger">The asset merger.</param> /// <param name="scriptWrapper">The script wrapper.</param> public ScriptRegistrar(WebAssetCollection scripts, IList <IScriptableComponent> scriptableComponents, ViewContext viewContext, IWebAssetCollectionResolver resolver, ScriptWrapperBase scriptWrapper) { this.resolver = resolver; if (viewContext.HttpContext.Items[Key] != null) { throw new InvalidOperationException(Resources.TextResource.OnlyOneScriptRegistrarIsAllowedInASingleRequest); } viewContext.HttpContext.Items[Key] = this; OutputScriptFiles = true; DefaultGroup = new WebAssetGroup("default", false) { DefaultPath = WebAssetDefaultSettings.ScriptFilesPath }; Scripts = scripts; Scripts.Insert(0, DefaultGroup); this.scriptableComponents = scriptableComponents; ViewContext = viewContext; ScriptWrapper = scriptWrapper; AssetHandlerPath = WebAssetHttpHandler.DefaultPath; OnDocumentReadyActions = new List <Action>(); OnDocumentReadyStatements = new List <string>(); OnWindowUnloadActions = new List <Action>(); OnWindowUnloadStatements = new List <string>(); }
/// <summary> /// Initializes a new instance of the <see cref="ScriptRegistrar"/> class. /// </summary> /// <param name="scripts">The scripts.</param> /// <param name="scriptableComponents">The scriptable components.</param> /// <param name="viewContext">The view context.</param> /// <param name="assetItemMerger">The asset merger.</param> /// <param name="scriptWrapper">The script wrapper.</param> public ScriptRegistrar(WebAssetCollection scripts, IList<IScriptableComponent> scriptableComponents, ViewContext viewContext, IWebAssetCollectionResolver resolver, ScriptWrapperBase scriptWrapper) { this.resolver = resolver; if (viewContext.HttpContext.Items[Key] != null) { throw new InvalidOperationException(Resources.TextResource.OnlyOneScriptRegistrarIsAllowedInASingleRequest); } viewContext.HttpContext.Items[Key] = this; OutputScriptFiles = true; DefaultGroup = new WebAssetGroup("default", false) { DefaultPath = WebAssetDefaultSettings.ScriptFilesPath }; Scripts = scripts; Scripts.Insert(0, DefaultGroup); this.scriptableComponents = scriptableComponents; ViewContext = viewContext; ScriptWrapper = scriptWrapper; AssetHandlerPath = WebAssetHttpHandler.DefaultPath; OnDocumentReadyActions = new List<Action>(); OnDocumentReadyStatements = new List<string>(); OnWindowUnloadActions = new List<Action>(); OnWindowUnloadStatements = new List<string>(); }
/// <summary> /// Initializes a new instance of the <see cref="StyleSheetRegistrar"/> class. /// </summary> /// <param name="styleSheets">The style sheets.</param> /// <param name="viewContext">The view context.</param> /// <param name="assetItemMerger">The asset merger.</param> public StyleSheetRegistrar(WebAssetCollection styleSheets, ViewContext viewContext, IWebAssetCollectionResolver resolver) { this.resolver = resolver; if (viewContext.HttpContext.Items[Key] != null) { throw new InvalidOperationException(Resources.TextResource.OnlyOneStyleSheetRegistrarIsAllowedInASingleRequest); } viewContext.HttpContext.Items[Key] = this; DefaultGroup = new WebAssetGroup("default", false) { DefaultPath = WebAssetDefaultSettings.StyleSheetFilesPath }; StyleSheets = styleSheets; styleSheets.Insert(0, DefaultGroup); ViewContext = viewContext; AssetHandlerPath = WebAssetHttpHandler.DefaultPath; }
public void Should_be_able_to_insert_item() { _collection.Insert(0, "~/scripts/script.js"); Assert.NotEmpty(_collection); }