public TokenResponseMessage CreateResponse(TokenRequestMessage message, NameValueCollection additionalInfo)
 {
     TokenResponseMessage response = new TokenResponseMessage();
     response.AccessToken = this.CreateAccessToken(message, additionalInfo);
     response.RefreshToken = this.CreateRefreshToken();
     response.AccessTokenExpiresIn = TimeSpan.FromSeconds(this.serviceConfig.SimpleWebTokenHandlerConfiguration.Issuer.TokenExpirationInSeconds);
     
     return response;
 }
 public void SendResponse(TokenResponseMessage message)
 {
     HttpResponse response = HttpContext.Current.Response;
     string body;
     body = OAuthConstants.AccessToken + '=' + HttpUtility.UrlEncode(message.AccessToken);
     body += '&' + OAuthConstants.TokenExpiresIn + '=' + ((int)message.AccessTokenExpiresIn.TotalSeconds).ToString();
     body += '&' + OAuthConstants.RefreshToken + '=' + message.RefreshToken;
     response.Write(body);
     response.End();
 }
        /// <summary>
        /// throws BadArgumentException if there is a problem with the token found by validaton framework
        /// Adds a TokenResponseMessage for each validation error
        /// </summary>
        /// <param name="myTokenService"></param>
        /// <param name="validationResults"></param>
        public static void RaiseValidationErrors(this ITokenService myTokenService, IEnumerable <ValidationResult> validationResults)
        {
            List <TokenResponseMessage> messages = new List <TokenResponseMessage>();

            foreach (ValidationResult oneResult in validationResults)
            {
                TokenResponseMessage message = new TokenResponseMessage(null, oneResult.ErrorMessage);
                messages.Add(message);
            }
            if (messages.Count > 0)
            {
                throw new BadArgumentException("Failed Object Validation", new TokenResponse(messages));
            }
        }