private String getParameter(OAuthMessage requestMessage, String key) { try { return requestMessage.getParameter(key); } catch { return null; } }
/** This implementation doesn't check the nonce value. */ protected void validateTimestampAndNonce(OAuthMessage message) { message.requireParameters(new[] { OAuth.OAUTH_TIMESTAMP, OAuth.OAUTH_NONCE }); DateTime timestamp = UnixTime.ToDateTime(double.Parse(message.getParameter(OAuth.OAUTH_TIMESTAMP))); DateTime now = DateTime.UtcNow; DateTime min = now.AddSeconds(0 - timestampWindow); DateTime max = now.AddSeconds(timestampWindow); if (timestamp < min || max < timestamp) { OAuthProblemException problem = new OAuthProblemException("timestamp_refused"); problem.setParameter("oauth_acceptable_timestamps", min + "-" + max); throw problem; } }
protected void validateVersion(OAuthMessage message) { String versionString = message.getParameter(OAuth.OAUTH_VERSION); if (versionString != null) { double version = double.Parse(versionString); if (version < minVersion || maxVersion < version) { OAuthProblemException problem = new OAuthProblemException("version_rejected"); problem.setParameter("oauth_acceptable_versions", minVersion + "-" + maxVersion); throw problem; } } }
/** This implementation doesn't check the nonce value. */ protected void validateTimestampAndNonce(OAuthMessage message) { message.requireParameters(new[] { OAuth.OAUTH_TIMESTAMP, OAuth.OAUTH_NONCE }); DateTime timestamp = UnixTime.ToDateTime(double.Parse(message.getParameter(OAuth.OAUTH_TIMESTAMP))); DateTime now = DateTime.UtcNow; DateTime min = now.AddSeconds(0 - timestampWindow); DateTime max = now.AddSeconds(timestampWindow); if (timestamp < min || max < timestamp) { OAuthProblemException problem = new OAuthProblemException("timestamp_refused"); problem.setParameter("oauth_acceptable_timestamps", min + "-" + max); throw problem; } }
protected void validateVersion(OAuthMessage message) { String versionString = message.getParameter(OAuth.OAUTH_VERSION); if (versionString != null) { double version = double.Parse(versionString); if (version < minVersion || maxVersion < version) { OAuthProblemException problem = new OAuthProblemException("version_rejected"); problem.setParameter("oauth_acceptable_versions", minVersion + "-" + maxVersion); throw problem; } } }
public OAuthProtocolException(OAuthMessage reply) { String problem = reply.getParameter(OAuthProblemException.OAUTH_PROBLEM); if (problem == null) { throw new ArgumentException( "No problem reported for OAuthProtocolException"); } problemCode = problem; if (fatalProblems.Contains(problem)) { startFromScratch = true; canRetry = false; canExtend = false; } else if (temporaryProblems.Contains(problem)) { startFromScratch = false; canRetry = false; canExtend = false; } else if (extensionProblems.Contains(problem)) { startFromScratch = false; canRetry = true; canExtend = true; } else { startFromScratch = true; canRetry = true; canExtend = false; } }
public static String getParameter(OAuthMessage message, String name) { return message.getParameter(name); }