diff --git a/Mvc.NoFun.sln b/Mvc.NoFun.sln
index 8f4533fd52..99fecfc678 100644
--- a/Mvc.NoFun.sln
+++ b/Mvc.NoFun.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
-VisualStudioVersion = 14.0.22526.0
+VisualStudioVersion = 14.0.22604.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{DAAE4C74-D06F-4874-A166-33305D2643CE}"
EndProject
@@ -54,6 +54,8 @@ Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.AspNet.Mvc.Xml",
EndProject
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.AspNet.Mvc.Xml.Test", "test\Microsoft.AspNet.Mvc.Xml.Test\Microsoft.AspNet.Mvc.Xml.Test.kproj", "{22019146-BDFA-442E-8C8E-345FB9644578}"
EndProject
+Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Microsoft.AspNet.PageExecutionInstrumentation", "src\Microsoft.AspNet.PageExecutionInstrumentation\Microsoft.AspNet.PageExecutionInstrumentation.kproj", "{4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -276,6 +278,18 @@ Global
{22019146-BDFA-442E-8C8E-345FB9644578}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{22019146-BDFA-442E-8C8E-345FB9644578}.Release|x86.ActiveCfg = Release|Any CPU
{22019146-BDFA-442E-8C8E-345FB9644578}.Release|x86.Build.0 = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Debug|x86.Build.0 = Debug|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|x86.ActiveCfg = Release|Any CPU
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -301,5 +315,6 @@ Global
{860119ED-3DB1-424D-8D0A-30132A8A7D96} = {3BA657BF-28B1-42DA-B5B0-1C4601FCF7B1}
{9C632DF0-DC06-410B-95AE-B5423702E84F} = {32285FA4-6B46-4D6B-A840-2B13E4C8B58E}
{22019146-BDFA-442E-8C8E-345FB9644578} = {3BA657BF-28B1-42DA-B5B0-1C4601FCF7B1}
+ {4DA2D7C1-A7B6-4C01-B57D-89E6EA4609DE} = {32285FA4-6B46-4D6B-A840-2B13E4C8B58E}
EndGlobalSection
EndGlobal
diff --git a/src/Microsoft.AspNet.Mvc.Razor/project.json b/src/Microsoft.AspNet.Mvc.Razor/project.json
index 9606627223..c3e5bff9cf 100644
--- a/src/Microsoft.AspNet.Mvc.Razor/project.json
+++ b/src/Microsoft.AspNet.Mvc.Razor/project.json
@@ -8,6 +8,7 @@
"Microsoft.AspNet.Mvc.Common": { "version": "6.0.0-*", "type": "build" },
"Microsoft.AspNet.Mvc.Core": "6.0.0-*",
"Microsoft.AspNet.Mvc.Razor.Host": "6.0.0-*",
+ "Microsoft.AspNet.PageExecutionInstrumentation" : "1.0.0-*",
"Microsoft.CodeAnalysis.CSharp": "1.0.0-rc1-*",
"Microsoft.Framework.Runtime.Roslyn.Common": "1.0.0-*"
},
diff --git a/src/Microsoft.AspNet.Mvc.Razor/Services/IBufferedTextWriter.cs b/src/Microsoft.AspNet.PageExecutionInstrumentation/IBufferedTextWriter.cs
similarity index 93%
rename from src/Microsoft.AspNet.Mvc.Razor/Services/IBufferedTextWriter.cs
rename to src/Microsoft.AspNet.PageExecutionInstrumentation/IBufferedTextWriter.cs
index c0fbae88eb..eb15688d58 100644
--- a/src/Microsoft.AspNet.Mvc.Razor/Services/IBufferedTextWriter.cs
+++ b/src/Microsoft.AspNet.PageExecutionInstrumentation/IBufferedTextWriter.cs
@@ -3,14 +3,12 @@
using System.IO;
using System.Threading.Tasks;
-using Microsoft.Framework.Runtime;
namespace Microsoft.AspNet.Mvc.Razor
{
///
/// Specifies the contracts for a that buffers its content.
///
- [AssemblyNeutral]
public interface IBufferedTextWriter
{
///
@@ -21,13 +19,13 @@ namespace Microsoft.AspNet.Mvc.Razor
///
/// Copies the buffered content to the .
///
- /// The writer to copy the contents to./param>
+ /// The writer to copy the contents to.
void CopyTo(TextWriter writer);
///
/// Asynchronously copies the buffered content to the .
///
- /// The writer to copy the contents to./param>
+ /// The writer to copy the contents to.
/// A representing the copy operation.
Task CopyToAsync(TextWriter writer);
}
diff --git a/src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionContext.cs b/src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionContext.cs
similarity index 94%
rename from src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionContext.cs
rename to src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionContext.cs
index 51990d628f..29cf842941 100644
--- a/src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionContext.cs
+++ b/src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionContext.cs
@@ -1,14 +1,11 @@
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-using Microsoft.Framework.Runtime;
-
namespace Microsoft.AspNet.PageExecutionInstrumentation
{
///
/// Specifies the contracts for a execution context that instruments web page execution.
///
- [AssemblyNeutral]
public interface IPageExecutionContext
{
///
diff --git a/src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionListenerFeature.cs b/src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionListenerFeature.cs
similarity index 85%
rename from src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionListenerFeature.cs
rename to src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionListenerFeature.cs
index 70e80076b6..1c58a0cbec 100644
--- a/src/Microsoft.AspNet.Mvc.Razor/Services/IPageExecutionListenerFeature.cs
+++ b/src/Microsoft.AspNet.PageExecutionInstrumentation/IPageExecutionListenerFeature.cs
@@ -2,14 +2,12 @@
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.IO;
-using Microsoft.Framework.Runtime;
namespace Microsoft.AspNet.PageExecutionInstrumentation
{
///
/// Specifies the contracts for a HTTP feature that provides the context to instrument a web page.
///
- [AssemblyNeutral]
public interface IPageExecutionListenerFeature
{
///
@@ -18,16 +16,15 @@ namespace Microsoft.AspNet.PageExecutionInstrumentation
///
/// The output for the web page.
/// A that wraps .
- ///
TextWriter DecorateWriter(TextWriter writer);
///
/// Creates a for the specified .
///
- /// The path of the .
+ /// The path of the page.
/// The obtained from .
///
- ///
+ /// The .
IPageExecutionContext GetContext(string sourceFilePath, TextWriter writer);
}
}
\ No newline at end of file
diff --git a/src/Microsoft.AspNet.PageExecutionInstrumentation/Microsoft.AspNet.PageExecutionInstrumentation.kproj b/src/Microsoft.AspNet.PageExecutionInstrumentation/Microsoft.AspNet.PageExecutionInstrumentation.kproj
new file mode 100644
index 0000000000..18f473c9d9
--- /dev/null
+++ b/src/Microsoft.AspNet.PageExecutionInstrumentation/Microsoft.AspNet.PageExecutionInstrumentation.kproj
@@ -0,0 +1,20 @@
+
+
+
+ 14.0
+ $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
+
+
+
+ 4da2d7c1-a7b6-4c01-b57d-89e6ea4609de
+
+
+
+
+
+
+
+ 2.0
+
+
+
\ No newline at end of file
diff --git a/src/Microsoft.AspNet.PageExecutionInstrumentation/project.json b/src/Microsoft.AspNet.PageExecutionInstrumentation/project.json
new file mode 100644
index 0000000000..ffa57dddbb
--- /dev/null
+++ b/src/Microsoft.AspNet.PageExecutionInstrumentation/project.json
@@ -0,0 +1,15 @@
+{
+ "description": "Abstractions for page instrumentation.",
+ "version": "1.0.0-*",
+ "compilationOptions": {
+ "warningsAsErrors": true
+ },
+ "frameworks": {
+ "aspnet50": { },
+ "aspnetcore50": {
+ "dependencies": {
+ "System.IO": "4.0.0-beta-*"
+ }
+ }
+ }
+}