/// <summary> /// Create a new request token from a database request token. /// </summary> /// <param name="requestToken">The database request token to create a new request token from.</param> /// <param name="consumer">The consumer for the request token.</param> /// <returns>A new request token created from the database request token.</returns> /// <exception cref="ArgumentNullException">Thrown if a parameter is null.</exception> internal static RequestToken FromAccessToken(Database.RequestToken requestToken, ConsumerStub consumer) { if (requestToken == null) { throw new ArgumentNullException("requestToken", "requestToken is null"); } if (consumer == null) { throw new ArgumentNullException("consumer", "consumer is null"); } return new RequestToken { Callback = requestToken.Callback, Consumer = consumer, Created = requestToken.Created, ConsumerVersion = requestToken.ConsumerVersion != null ? requestToken.ConsumerVersion.ToString() : null, Id = requestToken.Id != null ? new BsonObjectId(requestToken.Id) : null, Scope = requestToken.Scope, Token = requestToken.Token, TokenSecret = requestToken.TokenSecret, Username = requestToken.Username, VerificationCode = requestToken.VerificationCode, }; }
/// <summary> /// Determines whether the specified <see cref="ConsumerStub"/> is equal to the current <see cref="ConsumerStub"/>. /// </summary> /// <param name="consumer">The <see cref="ConsumerStub"/> to compare with the current <see cref="ConsumerStub"/>.</param> /// <returns> /// true if the specified <see cref="ConsumerStub"/> is equal to the current <see cref="ConsumerStub"/>; otherwise false. /// </returns> public bool Equals(ConsumerStub consumer) { if (consumer == null) { return false; } return this.Name == consumer.Name && this.Id == consumer.Id; }
/// <summary> /// Create a new access token from a database access token. /// </summary> /// <param name="accessToken">The database access token to create a new access token from.</param> /// <param name="consumer">The consumer for the access token.</param> /// <returns>A new access token created from the database access token.</returns> /// <exception cref="ArgumentNullException">Thrown if a parameter is null.</exception> internal static AccessToken FromAccessToken(Database.AccessToken accessToken, ConsumerStub consumer) { if (accessToken == null) { throw new ArgumentNullException("accessToken", "accessToken is null"); } if (consumer == null) { throw new ArgumentNullException("consumer", "consumer is null"); } return new AccessToken { Consumer = consumer, Created = accessToken.Created, Id = accessToken.Id != null ? new BsonObjectId(accessToken.Id) : null, Scope = accessToken.Scope, Token = accessToken.Token, TokenSecret = accessToken.TokenSecret, Username = accessToken.Username, }; }
/// <summary> /// Create a new token from a database token. /// </summary> /// <param name="issuedToken">The database token to create a new token from.</param> /// <param name="consumer">The consumer for the request token.</param> /// <returns>A new token created from the database token.</returns> /// <exception cref="ArgumentNullException">Thrown if a parameter is null.</exception> internal static IssuedToken FromIssuedToken(Database.IssuedToken issuedToken, ConsumerStub consumer) { if (issuedToken == null) { throw new ArgumentNullException("issuedToken", "issuedToken is null"); } if (issuedToken is Database.AccessToken) { return AccessToken.FromAccessToken(issuedToken as Database.AccessToken, consumer); } if (issuedToken is Database.RequestToken) { return RequestToken.FromAccessToken(issuedToken as Database.RequestToken, consumer); } throw new NotSupportedException(string.Format("Issued token of type \"{0}\" is not supported.", issuedToken.GetType())); }