diff options
Diffstat (limited to 'samples/OpenIdOfflineProvider')
-rw-r--r-- | samples/OpenIdOfflineProvider/App.xaml.cs | 7 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/Controllers/HomeController.cs | 7 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/Controllers/ProviderController.cs | 7 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/MainWindow.xaml.cs | 59 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj | 20 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/Startup.cs | 21 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/TextWriterLogProvider.cs (renamed from samples/OpenIdOfflineProvider/TextLogProvider.cs) | 79 | ||||
-rw-r--r-- | samples/OpenIdOfflineProvider/packages.config | 3 |
8 files changed, 107 insertions, 96 deletions
diff --git a/samples/OpenIdOfflineProvider/App.xaml.cs b/samples/OpenIdOfflineProvider/App.xaml.cs index 9878681..43fb9a9 100644 --- a/samples/OpenIdOfflineProvider/App.xaml.cs +++ b/samples/OpenIdOfflineProvider/App.xaml.cs @@ -5,15 +5,14 @@ //----------------------------------------------------------------------- namespace DotNetOpenAuth.OpenIdOfflineProvider { - using System.Windows; + using System.Windows; - using DotNetOpenAuth.Logging; + using DotNetOpenAuth.Logging; - /// <summary> + /// <summary> /// Interaction logic for App.xaml /// </summary> public partial class App : Application { - /// <summary> /// Initializes a new instance of the <see cref="App"/> class. /// </summary> diff --git a/samples/OpenIdOfflineProvider/Controllers/HomeController.cs b/samples/OpenIdOfflineProvider/Controllers/HomeController.cs index 96473b3..7c202dc 100644 --- a/samples/OpenIdOfflineProvider/Controllers/HomeController.cs +++ b/samples/OpenIdOfflineProvider/Controllers/HomeController.cs @@ -18,9 +18,10 @@ namespace DotNetOpenAuth.OpenIdOfflineProvider.Controllers { using Validation; public class HomeController : ApiController { - private static readonly ILog Logger = LogProvider.GetCurrentClassLogger(); - public HttpResponseMessage Get() { - Logger.Info("Discovery on OP Identifier detected."); + private static readonly ILog Logger = LogProvider.GetCurrentClassLogger(); + + public HttpResponseMessage Get() { + Logger.Info("Discovery on OP Identifier detected."); var opEndpoint = this.Url.Link("default", new { controller = "provider" }); var opEndpointUri = new Uri(opEndpoint); return new HttpResponseMessage() { diff --git a/samples/OpenIdOfflineProvider/Controllers/ProviderController.cs b/samples/OpenIdOfflineProvider/Controllers/ProviderController.cs index 6502842..2a86ade 100644 --- a/samples/OpenIdOfflineProvider/Controllers/ProviderController.cs +++ b/samples/OpenIdOfflineProvider/Controllers/ProviderController.cs @@ -1,6 +1,6 @@ //----------------------------------------------------------------------- // <copyright file="ProviderController.cs" company="Andrew Arnott"> -// Copyright (c) Andrew Arnott. All rights reserved. +// Copyright (c) Andrew Arnott. All rights reserved. // </copyright> //----------------------------------------------------------------------- @@ -23,7 +23,8 @@ namespace DotNetOpenAuth.OpenIdOfflineProvider.Controllers { public class ProviderController : ApiController { private static readonly ICryptoKeyAndNonceStore store = new MemoryCryptoKeyAndNonceStore(); - private static readonly ILog Logger = LogProvider.GetCurrentClassLogger(); + private static readonly ILog Logger = LogProvider.GetCurrentClassLogger(); + private MainWindow MainWindow { get { return MainWindow.Instance; } } @@ -40,7 +41,7 @@ namespace DotNetOpenAuth.OpenIdOfflineProvider.Controllers { var provider = new OpenIdProvider(store); IRequest request = await provider.GetRequestAsync(this.Request); if (request == null) { - Logger.Error("A request came in that did not carry an OpenID message."); + Logger.Error("A request came in that did not carry an OpenID message."); return new HttpResponseMessage(HttpStatusCode.BadRequest) { Content = new StringContent("<html><body>This is an OpenID Provider endpoint.</body></html>", Encoding.UTF8, "text/html"), }; diff --git a/samples/OpenIdOfflineProvider/MainWindow.xaml.cs b/samples/OpenIdOfflineProvider/MainWindow.xaml.cs index 0fe63c5..cb9ed24 100644 --- a/samples/OpenIdOfflineProvider/MainWindow.xaml.cs +++ b/samples/OpenIdOfflineProvider/MainWindow.xaml.cs @@ -1,42 +1,29 @@ //----------------------------------------------------------------------- // <copyright file="MainWindow.xaml.cs" company="Outercurve Foundation"> -// Copyright (c) Outercurve Foundation. All rights reserved. +// Copyright (c) Outercurve Foundation. All rights reserved. // </copyright> //----------------------------------------------------------------------- namespace DotNetOpenAuth.OpenIdOfflineProvider { - using System; - using System.ComponentModel; - using System.Globalization; - using System.Linq; - using System.Net; - using System.Net.Http.Headers; - using System.Runtime.InteropServices; - using System.ServiceModel; - using System.Threading.Tasks; - using System.Web; - using System.Web.Http; - using System.Windows; - using System.Windows.Input; - - using DotNetOpenAuth.Logging; - - using Microsoft.Owin.Hosting; - - using Owin; - - using Validation; - public class Startup { - // This code configures Web API. The Startup class is specified as a type - // parameter in the WebApp.Start method. - public void Configuration(IAppBuilder appBuilder) { - // Configure Web API for self-host. - HttpConfiguration config = new HttpConfiguration(); - config.Routes.MapHttpRoute("default", "{controller}/{id}", new { controller = "Home", id = RouteParameter.Optional }); - appBuilder.UseWebApi(config); - } - } - /// <summary> + using System; + using System.ComponentModel; + using System.Globalization; + using System.Linq; + using System.Net; + using System.Net.Http.Headers; + using System.Runtime.InteropServices; + using System.ServiceModel; + using System.Threading.Tasks; + using System.Web; + using System.Windows; + using System.Windows.Input; + + using DotNetOpenAuth.Logging; + + using Microsoft.Owin.Hosting; + using Validation; + + /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window, IDisposable { @@ -50,15 +37,15 @@ namespace DotNetOpenAuth.OpenIdOfflineProvider { /// </summary> private ILog _logger; - private IDisposable hostServer; + private IDisposable hostServer; - /// <summary> + /// <summary> /// Initializes a new instance of the <see cref="MainWindow"/> class. /// </summary> public MainWindow() { this.InitializeComponent(); LogProvider.SetCurrentLogProvider(new TextWriterLogProvider(new TextBoxTextWriter(this.logBox))); - _logger = LogProvider.GetLogger(typeof(MainWindow)); + this._logger = LogProvider.GetLogger(typeof(MainWindow)); Instance = this; this.StartProviderAsync(); } diff --git a/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj b/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj index e502922..8cdfc5b 100644 --- a/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj +++ b/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj @@ -5,7 +5,7 @@ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\src\</SolutionDir> - <NuGetPackageImportStamp>d651fa8e</NuGetPackageImportStamp> + <NuGetPackageImportStamp>a77eaf87</NuGetPackageImportStamp> </PropertyGroup> <Import Project="$(ProjectRoot)tools\DotNetOpenAuth.props" /> <PropertyGroup> @@ -88,18 +88,10 @@ <RequiredTargetFramework>3.5</RequiredTargetFramework> </Reference> <Reference Include="System.Net.Http" /> - <Reference Include="System.Net.Http.Extensions"> - <HintPath>..\..\src\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Extensions.dll</HintPath> - <Private>True</Private> - </Reference> <Reference Include="System.Net.Http.Formatting, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>..\..\src\packages\Microsoft.AspNet.WebApi.Client.5.2.2\lib\net45\System.Net.Http.Formatting.dll</HintPath> </Reference> - <Reference Include="System.Net.Http.Primitives"> - <HintPath>..\..\src\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Primitives.dll</HintPath> - <Private>True</Private> - </Reference> <Reference Include="System.Net.Http.WebRequest" /> <Reference Include="System.ServiceModel" /> <Reference Include="System.Web" /> @@ -147,7 +139,8 @@ <Compile Include="Controllers\HomeController.cs" /> <Compile Include="Controllers\ProviderController.cs" /> <Compile Include="Controllers\UserController.cs" /> - <Compile Include="TextLogProvider.cs" /> + <Compile Include="Startup.cs" /> + <Compile Include="TextWriterLogProvider.cs" /> <Page Include="CheckIdWindow.xaml"> <SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator> @@ -234,11 +227,4 @@ <Import Project="$(ProjectRoot)tools\DotNetOpenAuth.targets" /> <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))\EnlistmentInfo.targets" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))' != '' " /> <Import Project="$(SolutionDir)\.nuget\nuget.targets" /> - <Import Project="..\..\src\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets" Condition="Exists('..\..\src\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" /> - <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> - <PropertyGroup> - <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> - </PropertyGroup> - <Error Condition="!Exists('..\..\src\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\src\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets'))" /> - </Target> </Project>
\ No newline at end of file diff --git a/samples/OpenIdOfflineProvider/Startup.cs b/samples/OpenIdOfflineProvider/Startup.cs new file mode 100644 index 0000000..2477442 --- /dev/null +++ b/samples/OpenIdOfflineProvider/Startup.cs @@ -0,0 +1,21 @@ +//----------------------------------------------------------------------- +// <copyright file="Startup.cs" company="Outercurve Foundation"> +// Copyright (c) Outercurve Foundation. All rights reserved. +// </copyright> +//----------------------------------------------------------------------- + +namespace DotNetOpenAuth.OpenIdOfflineProvider { + using System.Web.Http; + using Owin; + + public class Startup { + // This code configures Web API. The Startup class is specified as a type + // parameter in the WebApp.Start method. + public void Configuration(IAppBuilder appBuilder) { + // Configure Web API for self-host. + HttpConfiguration config = new HttpConfiguration(); + config.Routes.MapHttpRoute("default", "{controller}/{id}", new { controller = "Home", id = RouteParameter.Optional }); + appBuilder.UseWebApi(config); + } + } +}
\ No newline at end of file diff --git a/samples/OpenIdOfflineProvider/TextLogProvider.cs b/samples/OpenIdOfflineProvider/TextWriterLogProvider.cs index c927a43..f24cf88 100644 --- a/samples/OpenIdOfflineProvider/TextLogProvider.cs +++ b/samples/OpenIdOfflineProvider/TextWriterLogProvider.cs @@ -1,4 +1,10 @@ -namespace DotNetOpenAuth.OpenIdOfflineProvider { +//----------------------------------------------------------------------- +// <copyright file="TextWriterLogProvider.cs" company="Outercurve Foundation"> +// Copyright (c) Outercurve Foundation. All rights reserved. +// </copyright> +//----------------------------------------------------------------------- + +namespace DotNetOpenAuth.OpenIdOfflineProvider { using System; using System.IO; using System.Text.RegularExpressions; @@ -28,7 +34,7 @@ private static bool _providerIsAvailableOverride = true; internal TextWriterLogProvider(TextBoxTextWriter writer) { - _writer = writer; + this._writer = writer; } /// <summary> @@ -43,7 +49,7 @@ } public ILog GetLogger(string name) { - return new TextWriterLogger(_writer); + return new TextWriterLogger(this._writer); } public class TextWriterLogger : ILog { @@ -53,88 +59,101 @@ private IDateTimeProvider _dateTimeProvider; internal TextWriterLogger(TextBoxTextWriter writer) { - _writer = writer; - _skipLevel = 1; + this._writer = writer; + this._skipLevel = 1; this.DateTimeProvider = new UtcDateTimeProvider(); this.TextWriterFormatter = new DefaultTextWriterFormatter(); } + public interface IDateTimeProvider { + DateTime GetCurrentDateTime(); + } + + public interface ITextWriterFormatter { + void WriteText(TextWriter writer, LogLevel level, DateTime dateTime, string text); + } + public TextWriter Writer { get { - return _writer; + return this._writer; } set { - _writer = value; + this._writer = value; } } public ITextWriterFormatter TextWriterFormatter { get { - return _textWriterFormatter; + return this._textWriterFormatter; } + set { - if (value == null) + if (value == null) { throw new ArgumentNullException(); - _textWriterFormatter = value; + } + this._textWriterFormatter = value; } } public IDateTimeProvider DateTimeProvider { get { - return _dateTimeProvider; + return this._dateTimeProvider; } + set { - if (value == null) + if (value == null) { throw new ArgumentNullException(); - _dateTimeProvider = value; + } + this._dateTimeProvider = value; } } + public bool Log(LogLevel logLevel, Func<string> messageFunc, Exception exception) { if (messageFunc == null) { - //nothing to log.. + // nothing to log.. return true; } string[] lines = Regex.Split(messageFunc(), "\r\n|\r|\n"); foreach (var line in lines) { - this.TextWriterFormatter.WriteText(_writer, logLevel, this.DateTimeProvider.GetCurrentDateTime(), line); + this.TextWriterFormatter.WriteText(this._writer, logLevel, this.DateTimeProvider.GetCurrentDateTime(), line); } - _writer.Flush(); + this._writer.Flush(); return true; } - public interface IDateTimeProvider { - DateTime GetCurrentDateTime(); - } - public interface ITextWriterFormatter { - void WriteText(TextWriter writer, LogLevel level, DateTime dateTime, string text); - } + public class DefaultTextWriterFormatter : ITextWriterFormatter { public void WriteText(TextWriter writer, LogLevel level, DateTime dateTime, string text) { - string sLevel; + string logLevelAbbreviation; switch (level) { case LogLevel.Info: default: - sLevel = "I"; + logLevelAbbreviation = "I"; break; case LogLevel.Debug: - sLevel = "D"; + logLevelAbbreviation = "D"; break; case LogLevel.Warn: - sLevel = "W"; + logLevelAbbreviation = "W"; break; case LogLevel.Error: - sLevel = "E"; + logLevelAbbreviation = "E"; break; } - writer.WriteLine("{0}:{1} {2} [{4}]: {3}", - sLevel, dateTime.ToShortDateString(), dateTime.ToLongTimeString(), - text, Thread.CurrentThread.GetHashCode()); + writer.WriteLine( + "{0}:{1} {2} [{4}]: {3}", + logLevelAbbreviation, + dateTime.ToShortDateString(), + dateTime.ToLongTimeString(), + text, + Thread.CurrentThread.GetHashCode()); } } + public class UtcDateTimeProvider : IDateTimeProvider { public DateTime GetCurrentDateTime() { return DateTime.UtcNow; diff --git a/samples/OpenIdOfflineProvider/packages.config b/samples/OpenIdOfflineProvider/packages.config index 68ea9b0..b091a83 100644 --- a/samples/OpenIdOfflineProvider/packages.config +++ b/samples/OpenIdOfflineProvider/packages.config @@ -4,9 +4,6 @@ <package id="Microsoft.AspNet.WebApi.Core" version="5.2.2" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi.Owin" version="5.2.2" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi.OwinSelfHost" version="5.2.2" targetFramework="net45" /> - <package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" /> - <package id="Microsoft.Bcl.Build" version="1.0.21" targetFramework="net45" /> - <package id="Microsoft.Net.Http" version="2.2.28" targetFramework="net45" /> <package id="Microsoft.Owin" version="2.0.2" targetFramework="net45" /> <package id="Microsoft.Owin.Host.HttpListener" version="2.0.2" targetFramework="net45" /> <package id="Microsoft.Owin.Hosting" version="2.0.2" targetFramework="net45" /> |