diff options
Diffstat (limited to 'src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs')
-rw-r--r-- | src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs b/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs index 05a33bc..d96e5c9 100644 --- a/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs +++ b/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/OpenIdProvider.cs @@ -11,7 +11,6 @@ namespace DotNetOpenAuth.OpenId.Provider { using System.Collections.Specialized; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; - using System.Diagnostics.Contracts; using System.Linq; using System.Threading; using System.Web; @@ -20,13 +19,13 @@ namespace DotNetOpenAuth.OpenId.Provider { using DotNetOpenAuth.Messaging.Bindings; using DotNetOpenAuth.OpenId.ChannelElements; using DotNetOpenAuth.OpenId.Messages; + using Validation; using RP = DotNetOpenAuth.OpenId.RelyingParty; /// <summary> /// Offers services for a web page that is acting as an OpenID identity server. /// </summary> [SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling", Justification = "By design")] - [ContractVerification(true)] public sealed class OpenIdProvider : IDisposable, IOpenIdHost { /// <summary> /// The name of the key to use in the HttpApplication cache to store the @@ -55,8 +54,6 @@ namespace DotNetOpenAuth.OpenId.Provider { /// </summary> public OpenIdProvider() : this(OpenIdElement.Configuration.Provider.ApplicationStore.CreateInstance(HttpApplicationStore)) { - Contract.Ensures(this.SecuritySettings != null); - Contract.Ensures(this.Channel != null); } /// <summary> @@ -66,8 +63,6 @@ namespace DotNetOpenAuth.OpenId.Provider { public OpenIdProvider(IOpenIdApplicationStore applicationStore) : this((INonceStore)applicationStore, (ICryptoKeyStore)applicationStore) { Requires.NotNull(applicationStore, "applicationStore"); - Contract.Ensures(this.SecuritySettings != null); - Contract.Ensures(this.Channel != null); } /// <summary> @@ -78,8 +73,6 @@ namespace DotNetOpenAuth.OpenId.Provider { private OpenIdProvider(INonceStore nonceStore, ICryptoKeyStore cryptoKeyStore) { Requires.NotNull(nonceStore, "nonceStore"); Requires.NotNull(cryptoKeyStore, "cryptoKeyStore"); - Contract.Ensures(this.SecuritySettings != null); - Contract.Ensures(this.Channel != null); this.SecuritySettings = OpenIdElement.Configuration.Provider.SecuritySettings.CreateSecuritySettings(); this.behaviors.CollectionChanged += this.OnBehaviorsChanged; @@ -102,8 +95,7 @@ namespace DotNetOpenAuth.OpenId.Provider { [EditorBrowsable(EditorBrowsableState.Advanced)] public static IOpenIdApplicationStore HttpApplicationStore { get { - Requires.ValidState(HttpContext.Current != null && HttpContext.Current.Request != null, MessagingStrings.HttpContextRequired); - Contract.Ensures(Contract.Result<IOpenIdApplicationStore>() != null); + RequiresEx.ValidState(HttpContext.Current != null && HttpContext.Current.Request != null, MessagingStrings.HttpContextRequired); HttpContext context = HttpContext.Current; var store = (IOpenIdApplicationStore)context.Application[ApplicationStoreKey]; if (store == null) { @@ -131,8 +123,7 @@ namespace DotNetOpenAuth.OpenId.Provider { /// </summary> public ProviderSecuritySettings SecuritySettings { get { - Contract.Ensures(Contract.Result<ProviderSecuritySettings>() != null); - Contract.Assume(this.securitySettings != null); + Assumes.True(this.securitySettings != null); return this.securitySettings; } @@ -325,9 +316,9 @@ namespace DotNetOpenAuth.OpenId.Provider { [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily", Justification = "Code Contract requires that we cast early.")] [EditorBrowsable(EditorBrowsableState.Never)] public void SendResponse(IRequest request) { - Requires.ValidState(HttpContext.Current != null, MessagingStrings.CurrentHttpContextRequired); + RequiresEx.ValidState(HttpContext.Current != null, MessagingStrings.CurrentHttpContextRequired); Requires.NotNull(request, "request"); - Requires.True(request.IsResponseReady, "request"); + Requires.That(request.IsResponseReady, "request", OpenIdStrings.ResponseNotReady); this.ApplyBehaviorsToResponse(request); Request requestInternal = (Request)request; @@ -346,9 +337,9 @@ namespace DotNetOpenAuth.OpenId.Provider { /// <exception cref="InvalidOperationException">Thrown if <see cref="IRequest.IsResponseReady"/> is <c>false</c>.</exception> [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily", Justification = "Code Contract requires that we cast early.")] public void Respond(IRequest request) { - Requires.ValidState(HttpContext.Current != null, MessagingStrings.CurrentHttpContextRequired); + RequiresEx.ValidState(HttpContext.Current != null, MessagingStrings.CurrentHttpContextRequired); Requires.NotNull(request, "request"); - Requires.True(request.IsResponseReady, "request"); + Requires.That(request.IsResponseReady, "request", OpenIdStrings.ResponseNotReady); this.ApplyBehaviorsToResponse(request); Request requestInternal = (Request)request; @@ -364,7 +355,7 @@ namespace DotNetOpenAuth.OpenId.Provider { [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily", Justification = "Code Contract requires that we cast early.")] public OutgoingWebResponse PrepareResponse(IRequest request) { Requires.NotNull(request, "request"); - Requires.True(request.IsResponseReady, "request"); + Requires.That(request.IsResponseReady, "request", OpenIdStrings.ResponseNotReady); this.ApplyBehaviorsToResponse(request); Request requestInternal = (Request)request; @@ -387,9 +378,9 @@ namespace DotNetOpenAuth.OpenId.Provider { /// be the same as <paramref name="claimedIdentifier"/>.</param> /// <param name="extensions">The extensions.</param> public void SendUnsolicitedAssertion(Uri providerEndpoint, Realm relyingPartyRealm, Identifier claimedIdentifier, Identifier localIdentifier, params IExtensionMessage[] extensions) { - Requires.ValidState(HttpContext.Current != null, MessagingStrings.HttpContextRequired); + RequiresEx.ValidState(HttpContext.Current != null, MessagingStrings.HttpContextRequired); Requires.NotNull(providerEndpoint, "providerEndpoint"); - Requires.True(providerEndpoint.IsAbsoluteUri, "providerEndpoint"); + Requires.That(providerEndpoint.IsAbsoluteUri, "providerEndpoint", OpenIdStrings.AbsoluteUriRequired); Requires.NotNull(relyingPartyRealm, "relyingPartyRealm"); Requires.NotNull(claimedIdentifier, "claimedIdentifier"); Requires.NotNull(localIdentifier, "localIdentifier"); @@ -418,11 +409,11 @@ namespace DotNetOpenAuth.OpenId.Provider { /// </returns> public OutgoingWebResponse PrepareUnsolicitedAssertion(Uri providerEndpoint, Realm relyingPartyRealm, Identifier claimedIdentifier, Identifier localIdentifier, params IExtensionMessage[] extensions) { Requires.NotNull(providerEndpoint, "providerEndpoint"); - Requires.True(providerEndpoint.IsAbsoluteUri, "providerEndpoint"); + Requires.That(providerEndpoint.IsAbsoluteUri, "providerEndpoint", OpenIdStrings.AbsoluteUriRequired); Requires.NotNull(relyingPartyRealm, "relyingPartyRealm"); Requires.NotNull(claimedIdentifier, "claimedIdentifier"); Requires.NotNull(localIdentifier, "localIdentifier"); - Requires.ValidState(this.Channel.WebRequestHandler != null); + RequiresEx.ValidState(this.Channel.WebRequestHandler != null); // Although the RP should do their due diligence to make sure that this OP // is authorized to send an assertion for the given claimed identifier, |