summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs')
-rw-r--r--src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs52
1 files changed, 34 insertions, 18 deletions
diff --git a/src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs b/src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs
index 2f71781..9650e3d 100644
--- a/src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs
+++ b/src/DotNetOpenAuth.AspNet/Clients/OpenID/GoogleOpenIdClient.cs
@@ -13,36 +13,33 @@ namespace DotNetOpenAuth.AspNet.Clients {
/// Represents Google OpenID client.
/// </summary>
public sealed class GoogleOpenIdClient : OpenIdClient {
- public GoogleOpenIdClient() :
- base("google", "https://www.google.com/accounts/o8/id") {
- }
+ #region Constructors and Destructors
/// <summary>
- /// Called just before the authentication request is sent to service provider.
+ /// Initializes a new instance of the <see cref="GoogleOpenIdClient"/> class.
/// </summary>
- /// <param name="request">The request.</param>
- protected override void OnBeforeSendingAuthenticationRequest(IAuthenticationRequest request) {
- // Attribute Exchange extensions
- var fetchRequest = new FetchRequest();
- fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Contact.Email, isRequired: true));
- fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Contact.HomeAddress.Country, isRequired: false));
- fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Name.First, isRequired: false));
- fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Name.Last, isRequired: false));
+ public GoogleOpenIdClient()
+ : base("google", "https://www.google.com/accounts/o8/id") {}
- request.AddExtension(fetchRequest);
- }
+ #endregion
+
+ #region Methods
/// <summary>
/// Gets the extra data obtained from the response message when authentication is successful.
/// </summary>
- /// <param name="response">The response message.</param>
- /// <returns></returns>
+ /// <param name="response">
+ /// The response message.
+ /// </param>
+ /// <returns>
+ /// </returns>
protected override Dictionary<string, string> GetExtraData(IAuthenticationResponse response) {
FetchResponse fetchResponse = response.GetExtension<FetchResponse>();
if (fetchResponse != null) {
var extraData = new Dictionary<string, string>();
extraData.AddItemIfNotEmpty("email", fetchResponse.GetAttributeValue(WellKnownAttributes.Contact.Email));
- extraData.AddItemIfNotEmpty("country", fetchResponse.GetAttributeValue(WellKnownAttributes.Contact.HomeAddress.Country));
+ extraData.AddItemIfNotEmpty(
+ "country", fetchResponse.GetAttributeValue(WellKnownAttributes.Contact.HomeAddress.Country));
extraData.AddItemIfNotEmpty("firstName", fetchResponse.GetAttributeValue(WellKnownAttributes.Name.First));
extraData.AddItemIfNotEmpty("lastName", fetchResponse.GetAttributeValue(WellKnownAttributes.Name.Last));
@@ -51,5 +48,24 @@ namespace DotNetOpenAuth.AspNet.Clients {
return null;
}
+
+ /// <summary>
+ /// Called just before the authentication request is sent to service provider.
+ /// </summary>
+ /// <param name="request">
+ /// The request.
+ /// </param>
+ protected override void OnBeforeSendingAuthenticationRequest(IAuthenticationRequest request) {
+ // Attribute Exchange extensions
+ var fetchRequest = new FetchRequest();
+ fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Contact.Email, isRequired: true));
+ fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Contact.HomeAddress.Country, isRequired: false));
+ fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Name.First, isRequired: false));
+ fetchRequest.Attributes.Add(new AttributeRequest(WellKnownAttributes.Name.Last, isRequired: false));
+
+ request.AddExtension(fetchRequest);
+ }
+
+ #endregion
}
-} \ No newline at end of file
+}