summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2009-10-19 07:54:27 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2009-10-19 08:20:53 -0700
commitfe60a146f20fd79823b8d4ed77b94ea81a4bb913 (patch)
treebe1ba496e32e0e27348d50c001eda5abc7736e2f
parentf64b12624553daa62376c933fb37abe667306749 (diff)
downloadDotNetOpenAuth-origin/netcf.zip
DotNetOpenAuth-origin/netcf.tar.gz
DotNetOpenAuth-origin/netcf.tar.bz2
doesn't come close to compiling, but here's an initial attempt.origin/netcf
-rw-r--r--src/DotNetOpenAuth.sln8
-rw-r--r--src/DotNetOpenAuth/DotNetOpenAuthCF.csproj181
-rw-r--r--src/DotNetOpenAuth/Messaging/Channel.cs2
-rw-r--r--src/DotNetOpenAuth/Messaging/ErrorUtilities.cs4
-rw-r--r--src/DotNetOpenAuth/Messaging/ProtocolException.cs2
-rw-r--r--src/DotNetOpenAuth/Messaging/Reflection/MessagePart.cs4
-rw-r--r--src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs4
-rw-r--r--src/DotNetOpenAuth/OAuth/ServiceProviderDescription.cs2
-rw-r--r--src/DotNetOpenAuth/Properties/AssemblyInfoCF.cs48
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/Contract.cs35
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassAttribute.cs20
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassForAttribute.cs20
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/ContractVerificationAttribute.cs20
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerBrowsableAttribute.cs18
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerDisplayAttribute.cs14
-rw-r--r--src/DotNetOpenAuth/Stubs/CompactFramework/PureAttribute.cs20
16 files changed, 401 insertions, 1 deletions
diff --git a/src/DotNetOpenAuth.sln b/src/DotNetOpenAuth.sln
index f8d9b8f..57c7753 100644
--- a/src/DotNetOpenAuth.sln
+++ b/src/DotNetOpenAuth.sln
@@ -163,6 +163,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenIdOfflineProvider", "..
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{E9ED920D-1F83-48C0-9A4B-09CCE505FE6D}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotNetOpenAuthCF", "DotNetOpenAuth\DotNetOpenAuthCF.csproj", "{3E0CA612-FC83-462A-905C-A22990E9ECE9}"
+EndProject
Global
GlobalSection(TestCaseManagementSettings) = postSolution
CategoryFile = DotNetOpenAuth.vsmdi
@@ -257,6 +259,12 @@ Global
{5C65603B-235F-47E6-B536-06385C60DE7F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5C65603B-235F-47E6-B536-06385C60DE7F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5C65603B-235F-47E6-B536-06385C60DE7F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.CodeAnalysis|Any CPU.ActiveCfg = Release|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.CodeAnalysis|Any CPU.Build.0 = Release|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3E0CA612-FC83-462A-905C-A22990E9ECE9}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/DotNetOpenAuth/DotNetOpenAuthCF.csproj b/src/DotNetOpenAuth/DotNetOpenAuthCF.csproj
new file mode 100644
index 0000000..a0079ea
--- /dev/null
+++ b/src/DotNetOpenAuth/DotNetOpenAuthCF.csproj
@@ -0,0 +1,181 @@
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{3E0CA612-FC83-462A-905C-A22990E9ECE9}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>DotNetOpenAuth</RootNamespace>
+ <AssemblyName>DotNetOpenAuthCF</AssemblyName>
+ <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <PlatformFamilyName>PocketPC</PlatformFamilyName>
+ <PlatformID>4118C335-430C-497f-BE48-11C3316B135E</PlatformID>
+ <OSVersion>5.1</OSVersion>
+ <DeployDirSuffix>DotNetOpenAuthCF</DeployDirSuffix>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <NativePlatformName>Windows Mobile 5.0 Pocket PC SDK</NativePlatformName>
+ <FormFactorID>
+ </FormFactorID>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>TRACE;DEBUG;PocketPC;NetCF</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <FileAlignment>512</FileAlignment>
+ <WarningLevel>4</WarningLevel>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE;$(PlatformFamilyName)</DefineConstants>
+ <NoStdLib>true</NoStdLib>
+ <NoConfig>true</NoConfig>
+ <ErrorReport>prompt</ErrorReport>
+ <FileAlignment>512</FileAlignment>
+ <WarningLevel>4</WarningLevel>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="mscorlib" />
+ <Reference Include="System" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Logger.cs" />
+ <Compile Include="Messaging\Bindings\ExpiredMessageException.cs" />
+ <Compile Include="Messaging\Bindings\IExpiringProtocolMessage.cs" />
+ <Compile Include="Messaging\Bindings\INonceStore.cs" />
+ <Compile Include="Messaging\Bindings\InvalidSignatureException.cs" />
+ <Compile Include="Messaging\Bindings\IReplayProtectedProtocolMessage.cs" />
+ <Compile Include="Messaging\Bindings\NonceMemoryStore.cs" />
+ <Compile Include="Messaging\Bindings\ReplayedMessageException.cs" />
+ <Compile Include="Messaging\Bindings\StandardExpirationBindingElement.cs" />
+ <Compile Include="Messaging\Bindings\StandardReplayProtectionBindingElement.cs" />
+ <Compile Include="Messaging\Channel.cs" />
+ <Compile Include="Messaging\ChannelEventArgs.cs" />
+ <Compile Include="Messaging\ErrorUtilities.cs" />
+ <Compile Include="Messaging\HttpDeliveryMethods.cs" />
+ <Compile Include="Messaging\IChannelBindingElement.cs" />
+ <Compile Include="Messaging\IDirectedProtocolMessage.cs" />
+ <Compile Include="Messaging\IDirectResponseProtocolMessage.cs" />
+ <Compile Include="Messaging\IDirectWebRequestHandler.cs" />
+ <Compile Include="Messaging\IExtensionMessage.cs" />
+ <Compile Include="Messaging\IHttpDirectResponse.cs" />
+ <Compile Include="Messaging\IMessage.cs" />
+ <Compile Include="Messaging\IMessageFactory.cs" />
+ <Compile Include="Messaging\IMessageWithEvents.cs" />
+ <Compile Include="Messaging\IncomingWebResponse.cs" />
+ <Compile Include="Messaging\InternalErrorException.cs" />
+ <Compile Include="Messaging\IProtocolMessage.cs" />
+ <Compile Include="Messaging\IProtocolMessageWithExtensions.cs" />
+ <Compile Include="Messaging\ITamperProtectionChannelBindingElement.cs" />
+ <Compile Include="Messaging\ITamperResistantProtocolMessage.cs" />
+ <Compile Include="Messaging\MessagePartAttribute.cs" />
+ <Compile Include="Messaging\MessageProtections.cs" />
+ <Compile Include="Messaging\MessageReceivingEndpoint.cs" />
+ <Compile Include="Messaging\MessageSerializer.cs" />
+ <Compile Include="Messaging\MessageTransport.cs" />
+ <Compile Include="Messaging\MessagingStrings.Designer.cs" />
+ <Compile Include="Messaging\MessagingUtilities.cs" />
+ <Compile Include="Messaging\OutgoingWebResponse.cs" />
+ <Compile Include="Messaging\ProtocolException.cs" />
+ <Compile Include="Messaging\Reflection\IMessagePartEncoder.cs" />
+ <Compile Include="Messaging\Reflection\IMessagePartNullEncoder.cs" />
+ <Compile Include="Messaging\Reflection\MessageDescription.cs" />
+ <Compile Include="Messaging\Reflection\MessageDescriptionCollection.cs" />
+ <Compile Include="Messaging\Reflection\MessageDictionary.cs" />
+ <Compile Include="Messaging\Reflection\MessagePart.cs" />
+ <Compile Include="Messaging\Reflection\ValueMapping.cs" />
+ <Compile Include="Messaging\UnprotectedMessageException.cs" />
+ <Compile Include="OAuth\ChannelElements\HmacSha1SigningBindingElement.cs" />
+ <Compile Include="OAuth\ChannelElements\ICombinedOpenIdProviderTokenManager.cs" />
+ <Compile Include="OAuth\ChannelElements\IConsumerDescription.cs" />
+ <Compile Include="OAuth\ChannelElements\IConsumerTokenManager.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="OAuth\ChannelElements\IOpenIdOAuthTokenManager.cs" />
+ <Compile Include="OAuth\ChannelElements\IServiceProviderAccessToken.cs" />
+ <Compile Include="OAuth\ChannelElements\IServiceProviderRequestToken.cs" />
+ <Compile Include="OAuth\ChannelElements\IServiceProviderTokenManager.cs" />
+ <Compile Include="OAuth\ChannelElements\ITamperResistantOAuthMessage.cs" />
+ <Compile Include="OAuth\ChannelElements\ITokenGenerator.cs" />
+ <Compile Include="OAuth\ChannelElements\ITokenManager.cs" />
+ <Compile Include="OAuth\ChannelElements\OAuthChannel.cs" />
+ <Compile Include="OAuth\ChannelElements\OAuthConsumerMessageFactory.cs" />
+ <Compile Include="OAuth\ChannelElements\OAuthHttpMethodBindingElement.cs" />
+ <Compile Include="OAuth\ChannelElements\OAuthServiceProviderMessageFactory.cs" />
+ <Compile Include="OAuth\ChannelElements\PlaintextSigningBindingElement.cs" />
+ <Compile Include="OAuth\ChannelElements\SigningBindingElementBase.cs" />
+ <Compile Include="OAuth\ChannelElements\SigningBindingElementBaseContract.cs" />
+ <Compile Include="OAuth\ChannelElements\SigningBindingElementChain.cs" />
+ <Compile Include="OAuth\ChannelElements\StandardTokenGenerator.cs" />
+ <Compile Include="OAuth\ChannelElements\TokenHandlingBindingElement.cs" />
+ <Compile Include="OAuth\ChannelElements\TokenType.cs" />
+ <Compile Include="OAuth\ChannelElements\UriOrOobEncoding.cs" />
+ <Compile Include="OAuth\ConsumerBase.cs" />
+ <Compile Include="OAuth\ConsumerSecuritySettings.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="OAuth\DesktopConsumer.cs" />
+ <Compile Include="OAuth\Messages\AccessProtectedResourceRequest.cs" />
+ <Compile Include="OAuth\Messages\AuthorizedTokenRequest.cs" />
+ <Compile Include="OAuth\Messages\AuthorizedTokenResponse.cs" />
+ <Compile Include="OAuth\Messages\ITokenContainingMessage.cs" />
+ <Compile Include="OAuth\Messages\ITokenSecretContainingMessage.cs" />
+ <Compile Include="OAuth\Messages\MessageBase.cs" />
+ <Compile Include="OAuth\Messages\SignedMessageBase.cs" />
+ <Compile Include="OAuth\Messages\UnauthorizedTokenRequest.cs" />
+ <Compile Include="OAuth\Messages\UnauthorizedTokenResponse.cs" />
+ <Compile Include="OAuth\Messages\UserAuthorizationRequest.cs" />
+ <Compile Include="OAuth\Messages\UserAuthorizationResponse.cs" />
+ <Compile Include="OAuth\OAuthStrings.Designer.cs" />
+ <Compile Include="OAuth\Protocol.cs" />
+ <Compile Include="OAuth\SecuritySettings.cs" />
+ <Compile Include="OAuth\ServiceProviderDescription.cs" />
+ <Compile Include="Properties\AssemblyInfoCF.cs" />
+ <Compile Include="Stubs\CompactFramework\Contract.cs" />
+ <Compile Include="Stubs\CompactFramework\ContractClassAttribute.cs" />
+ <Compile Include="Stubs\CompactFramework\ContractVerificationAttribute.cs" />
+ <Compile Include="Stubs\CompactFramework\ContractClassForAttribute.cs" />
+ <Compile Include="Stubs\CompactFramework\DebuggerBrowsableAttribute.cs" />
+ <Compile Include="Stubs\CompactFramework\PureAttribute.cs" />
+ <Compile Include="Stubs\CompactFramework\DebuggerDisplayAttribute.cs" />
+ <Compile Include="Util.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Messaging\Bindings\Bindings.cd" />
+ <None Include="OAuth\Messages\OAuth Messages.cd" />
+ </ItemGroup>
+ <ItemGroup>
+ <EmbeddedResource Include="Messaging\MessagingStrings.resx" />
+ <EmbeddedResource Include="OAuth\OAuthStrings.resx" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
+ <ProjectExtensions>
+ <VisualStudio>
+ <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
+ <HostingProcess disable="1" />
+ </FlavorProperties>
+ </VisualStudio>
+ </ProjectExtensions>
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project> \ No newline at end of file
diff --git a/src/DotNetOpenAuth/Messaging/Channel.cs b/src/DotNetOpenAuth/Messaging/Channel.cs
index 2e0f1a8..10b9319 100644
--- a/src/DotNetOpenAuth/Messaging/Channel.cs
+++ b/src/DotNetOpenAuth/Messaging/Channel.cs
@@ -215,6 +215,7 @@ namespace DotNetOpenAuth.Messaging {
}
}
+#if !NetCF
/// <summary>
/// Sends an indirect message (either a request or response)
/// or direct message response for transmission to a remote party
@@ -230,6 +231,7 @@ namespace DotNetOpenAuth.Messaging {
Contract.Requires(message != null);
this.PrepareResponse(message).Send();
}
+#endif
/// <summary>
/// Prepares an indirect message (either a request or response)
diff --git a/src/DotNetOpenAuth/Messaging/ErrorUtilities.cs b/src/DotNetOpenAuth/Messaging/ErrorUtilities.cs
index 0a60b19..283c709 100644
--- a/src/DotNetOpenAuth/Messaging/ErrorUtilities.cs
+++ b/src/DotNetOpenAuth/Messaging/ErrorUtilities.cs
@@ -150,6 +150,7 @@ namespace DotNetOpenAuth.Messaging {
}
}
+#if !NetCF
/// <summary>
/// Checks a condition and throws an <see cref="InfoCard.InformationCardException"/>
/// if it evaluates to false.
@@ -187,6 +188,7 @@ namespace DotNetOpenAuth.Messaging {
throw new HostErrorException(string.Format(CultureInfo.CurrentCulture, errorMessage, args));
}
}
+#endif
/// <summary>
/// Throws a <see cref="ProtocolException"/> if some <paramref name="condition"/> evaluates to false.
@@ -401,6 +403,7 @@ namespace DotNetOpenAuth.Messaging {
}
}
+#if !NetCF
/// <summary>
/// Verifies that <see cref="HttpContext.Current"/> != <c>null</c>.
/// </summary>
@@ -413,5 +416,6 @@ namespace DotNetOpenAuth.Messaging {
ErrorUtilities.VerifyOperation(HttpContext.Current != null, MessagingStrings.HttpContextRequired);
ErrorUtilities.VerifyOperation(HttpContext.Current.Request != null, MessagingStrings.HttpContextRequired);
}
+#endif
}
}
diff --git a/src/DotNetOpenAuth/Messaging/ProtocolException.cs b/src/DotNetOpenAuth/Messaging/ProtocolException.cs
index daf13d7..3072f6a 100644
--- a/src/DotNetOpenAuth/Messaging/ProtocolException.cs
+++ b/src/DotNetOpenAuth/Messaging/ProtocolException.cs
@@ -66,6 +66,7 @@ namespace DotNetOpenAuth.Messaging {
/// </summary>
internal IProtocolMessage FaultedMessage { get; private set; }
+#if !NetCF
/// <summary>
/// When overridden in a derived class, sets the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with information about the exception.
/// </summary>
@@ -83,5 +84,6 @@ namespace DotNetOpenAuth.Messaging {
base.GetObjectData(info, context);
throw new NotImplementedException();
}
+#endif
}
}
diff --git a/src/DotNetOpenAuth/Messaging/Reflection/MessagePart.cs b/src/DotNetOpenAuth/Messaging/Reflection/MessagePart.cs
index b02e52c..a04ecc4 100644
--- a/src/DotNetOpenAuth/Messaging/Reflection/MessagePart.cs
+++ b/src/DotNetOpenAuth/Messaging/Reflection/MessagePart.cs
@@ -65,9 +65,11 @@ namespace DotNetOpenAuth.Messaging.Reflection {
Map<Uri>(uri => uri.AbsoluteUri, str => new Uri(str));
Map<DateTime>(dt => XmlConvert.ToString(dt, XmlDateTimeSerializationMode.Utc), str => XmlConvert.ToDateTime(str, XmlDateTimeSerializationMode.Utc));
Map<byte[]>(bytes => Convert.ToBase64String(bytes), str => Convert.FromBase64String(str));
+#if !NetCF
Map<Realm>(realm => realm.ToString(), str => new Realm(str));
Map<Identifier>(id => id.ToString(), str => Identifier.Parse(str));
- Map<bool>(value => value.ToString().ToLowerInvariant(), str => bool.Parse(str));
+#endif
+ Map<bool>(value => value.ToString().ToLower(CultureInfo.InvariantCulture), str => bool.Parse(str));
Map<CultureInfo>(c => c.Name, str => new CultureInfo(str));
}
diff --git a/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs b/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
index d325825..2c5fd19 100644
--- a/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
+++ b/src/DotNetOpenAuth/OAuth/ChannelElements/OAuthChannel.cs
@@ -107,6 +107,7 @@ namespace DotNetOpenAuth.OAuth.ChannelElements {
return this.CreateHttpRequest(request);
}
+#if !NetCF
/// <summary>
/// Searches an incoming HTTP request for data that could be used to assemble
/// a protocol request message.
@@ -169,6 +170,7 @@ namespace DotNetOpenAuth.OAuth.ChannelElements {
return message;
}
+#endif
/// <summary>
/// Gets the protocol message that may be in the given HTTP response.
@@ -213,6 +215,7 @@ namespace DotNetOpenAuth.OAuth.ChannelElements {
return httpRequest;
}
+#if !NetCF
/// <summary>
/// Queues a message for sending in the response stream where the fields
/// are sent in the response stream in querystring style.
@@ -243,6 +246,7 @@ namespace DotNetOpenAuth.OAuth.ChannelElements {
return encodedResponse;
}
+#endif
/// <summary>
/// Initializes the binding elements for the OAuth channel.
diff --git a/src/DotNetOpenAuth/OAuth/ServiceProviderDescription.cs b/src/DotNetOpenAuth/OAuth/ServiceProviderDescription.cs
index 9014762..0910d8c 100644
--- a/src/DotNetOpenAuth/OAuth/ServiceProviderDescription.cs
+++ b/src/DotNetOpenAuth/OAuth/ServiceProviderDescription.cs
@@ -19,7 +19,9 @@ namespace DotNetOpenAuth.OAuth {
/// <summary>
/// The field used to store the value of the <see cref="RequestTokenEndpoint"/> property.
/// </summary>
+#if !NetCF
[DebuggerBrowsable(DebuggerBrowsableState.Never)]
+#endif
private MessageReceivingEndpoint requestTokenEndpoint;
/// <summary>
diff --git a/src/DotNetOpenAuth/Properties/AssemblyInfoCF.cs b/src/DotNetOpenAuth/Properties/AssemblyInfoCF.cs
new file mode 100644
index 0000000..5fc8349
--- /dev/null
+++ b/src/DotNetOpenAuth/Properties/AssemblyInfoCF.cs
@@ -0,0 +1,48 @@
+//-----------------------------------------------------------------------
+// <copyright file="AssemblyInfo.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+// We DON'T put an AssemblyVersionAttribute in here because it is generated in the build.
+
+using System;
+using System.Net;
+using System.Reflection;
+using System.Resources;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Security;
+using System.Security.Permissions;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("DotNetOpenAuth")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("DotNetOpenAuth")]
+[assembly: AssemblyCopyright("Copyright © 2008")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: NeutralResourcesLanguage("en-US")]
+[assembly: CLSCompliant(true)]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("7d73990c-47c0-4256-9f20-a893add9e289")]
+
+#if StrongNameSigned
+// See comment at top of this file. We need this so that strong-naming doesn't
+// keep this assembly from being useful to shared host (medium trust) web sites.
+[assembly: AllowPartiallyTrustedCallers]
+
+[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+#else
+[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+#endif
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/Contract.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/Contract.cs
new file mode 100644
index 0000000..c524ac9
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/Contract.cs
@@ -0,0 +1,35 @@
+//-----------------------------------------------------------------------
+// <copyright file="Contract.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics.Contracts {
+ using System;
+ using System.Linq;
+ using System.Collections.Generic;
+ using System.Text;
+ using DotNetOpenAuth.Messaging;
+
+ internal class Contract {
+ internal static void Requires(bool condition) {
+ ErrorUtilities.VerifyArgument(condition, "invalid argument");
+ }
+
+ internal static void Assume(bool condition) {
+ Debug.Assert(condition, "invalid state");
+ }
+
+ [Conditional("StubbedOut")]
+ internal static void Ensures(bool condition) {
+ }
+
+ [Conditional("StubbedOut")]
+ internal static void EnsuresOnThrow<T>(bool condition) {
+ }
+
+ internal static T Result<T>() {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassAttribute.cs
new file mode 100644
index 0000000..d5bb83e
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassAttribute.cs
@@ -0,0 +1,20 @@
+//-----------------------------------------------------------------------
+// <copyright file="ContractClassAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics.Contracts {
+ using System;
+ using System.Linq;
+ using System.Collections.Generic;
+ using System.Text;
+ using System.Diagnostics;
+
+ [global::System.AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ class ContractClassAttribute : Attribute {
+ internal ContractClassAttribute(Type type) {
+ }
+ }
+}
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassForAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassForAttribute.cs
new file mode 100644
index 0000000..c53a54a
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractClassForAttribute.cs
@@ -0,0 +1,20 @@
+//-----------------------------------------------------------------------
+// <copyright file="ContractClassForAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics.Contracts {
+ using System;
+ using System.Linq;
+ using System.Collections.Generic;
+ using System.Text;
+ using System.Diagnostics;
+
+ [global::System.AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ class ContractClassForAttribute : Attribute {
+ internal ContractClassForAttribute(Type type) {
+ }
+ }
+}
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/ContractVerificationAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractVerificationAttribute.cs
new file mode 100644
index 0000000..f1a19a6
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/ContractVerificationAttribute.cs
@@ -0,0 +1,20 @@
+//-----------------------------------------------------------------------
+// <copyright file="ContractVerificationAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics.Contracts {
+ using System;
+ using System.Linq;
+ using System.Collections.Generic;
+ using System.Text;
+ using System.Diagnostics;
+
+ [global::System.AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ internal sealed class ContractVerificationAttribute : Attribute {
+ public ContractVerificationAttribute(bool verification) {
+ }
+ }
+}
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerBrowsableAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerBrowsableAttribute.cs
new file mode 100644
index 0000000..a57ed92
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerBrowsableAttribute.cs
@@ -0,0 +1,18 @@
+//-----------------------------------------------------------------------
+// <copyright file="DebuggerBrowsableAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics {
+ [global::System.AttributeUsage(System.AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ sealed class DebuggerBrowsableAttribute : System.Attribute {
+ public DebuggerBrowsableAttribute(DebuggerBrowsableState display) {
+ }
+ }
+
+ enum DebuggerBrowsableState {
+ Never,
+ }
+} \ No newline at end of file
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerDisplayAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerDisplayAttribute.cs
new file mode 100644
index 0000000..0d3d3d6
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/DebuggerDisplayAttribute.cs
@@ -0,0 +1,14 @@
+//-----------------------------------------------------------------------
+// <copyright file="DebuggerDisplayAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics {
+ [global::System.AttributeUsage(System.AttributeTargets.Class, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ sealed class DebuggerDisplayAttribute : System.Attribute {
+ public DebuggerDisplayAttribute(string display) {
+ }
+ }
+} \ No newline at end of file
diff --git a/src/DotNetOpenAuth/Stubs/CompactFramework/PureAttribute.cs b/src/DotNetOpenAuth/Stubs/CompactFramework/PureAttribute.cs
new file mode 100644
index 0000000..2ba9e2c
--- /dev/null
+++ b/src/DotNetOpenAuth/Stubs/CompactFramework/PureAttribute.cs
@@ -0,0 +1,20 @@
+//-----------------------------------------------------------------------
+// <copyright file="PureAttribute.cs" company="Andrew Arnott">
+// Copyright (c) Andrew Arnott. All rights reserved.
+// </copyright>
+//-----------------------------------------------------------------------
+
+namespace System.Diagnostics.Contracts {
+ using System;
+ using System.Linq;
+ using System.Collections.Generic;
+ using System.Text;
+ using System.Diagnostics;
+
+ [global::System.AttributeUsage(AttributeTargets.All, Inherited = false, AllowMultiple = false)]
+ [Conditional("StubbedAttributes")] // we never want these to actually compile in
+ internal sealed class PureAttribute : Attribute {
+ public PureAttribute() {
+ }
+ }
+}