OLTU-196 Prevent ClassCastException with Integers
git-svn-id: https://svn.apache.org/repos/asf/oltu/trunk@1751397 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/oauth-2.0/jwt/src/main/java/org/apache/oltu/oauth2/jwt/io/JWTClaimsSetParser.java b/oauth-2.0/jwt/src/main/java/org/apache/oltu/oauth2/jwt/io/JWTClaimsSetParser.java
index 5e183f9..a785444 100644
--- a/oauth-2.0/jwt/src/main/java/org/apache/oltu/oauth2/jwt/io/JWTClaimsSetParser.java
+++ b/oauth-2.0/jwt/src/main/java/org/apache/oltu/oauth2/jwt/io/JWTClaimsSetParser.java
@@ -16,13 +16,13 @@
*/
package org.apache.oltu.oauth2.jwt.io;
+import org.apache.oltu.commons.json.CustomizableEntityReader;
+import org.apache.oltu.oauth2.jwt.JWT;
+
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
-import org.apache.oltu.commons.json.CustomizableEntityReader;
-import org.apache.oltu.oauth2.jwt.JWT;
-
final class JWTClaimsSetParser extends CustomizableEntityReader<JWT, JWT.Builder> implements JWTConstants {
public JWTClaimsSetParser(JWT.Builder builder) {
@@ -34,9 +34,9 @@
if (AUDIENCE.equals(key)) {
handleAudience(value);
} else if (EXPIRATION_TIME.equals(key)) {
- getBuilder().setClaimsSetExpirationTime(((Long) value));
+ getBuilder().setClaimsSetExpirationTime(((Number) value).longValue());
} else if (ISSUED_AT.equals(key)) {
- getBuilder().setClaimsSetIssuedAt(((Long) value));
+ getBuilder().setClaimsSetIssuedAt(((Number) value).longValue());
} else if (ISSUER.equals(key)) {
getBuilder().setClaimsSetIssuer(String.valueOf(value));
} else if (JWT_ID.equals(key)) {
diff --git a/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTReaderTestCase.java b/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTReaderTestCase.java
index ee95e42..ff2d27f 100644
--- a/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTReaderTestCase.java
+++ b/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTReaderTestCase.java
@@ -16,9 +16,6 @@
*/
package org.apache.oltu.oauth2.jwt.io;
-import static org.junit.Assert.assertEquals;
-
-import java.util.Arrays;
import org.apache.oltu.oauth2.jwt.ClaimsSet;
import org.apache.oltu.oauth2.jwt.Header;
import org.apache.oltu.oauth2.jwt.JWT;
@@ -26,6 +23,10 @@
import org.junit.Before;
import org.junit.Test;
+import java.util.Arrays;
+
+import static org.junit.Assert.assertEquals;
+
public final class JWTReaderTestCase implements IOTestCaseConstants {
private JWT jwt;
@@ -66,8 +67,8 @@
assertEquals("788732372078.apps.googleusercontent.com", claimsSet.getAudience());
assertEquals("accounts.google.com", claimsSet.getIssuer());
assertEquals("106422453082479998429", claimsSet.getSubject());
- assertEquals(1366730217, claimsSet.getExpirationTime());
- assertEquals(1366726317, claimsSet.getIssuedAt());
+ assertEquals(1366730217L, claimsSet.getExpirationTime());
+ assertEquals(1366726317L, claimsSet.getIssuedAt());
}
@Test
@@ -78,8 +79,8 @@
assertEquals("788732372078.apps.googleusercontent.com", claimsSet.getAudience());
assertEquals("accounts.google.com", claimsSet.getIssuer());
assertEquals("106422453082479998429", claimsSet.getSubject());
- assertEquals(1366730217, claimsSet.getExpirationTime());
- assertEquals(1366726317, claimsSet.getIssuedAt());
+ assertEquals(1366730217L, claimsSet.getExpirationTime());
+ assertEquals(1366726317L, claimsSet.getIssuedAt());
}
}
diff --git a/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTWriterTestCase.java b/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTWriterTestCase.java
index f4660af..1b3a80a 100644
--- a/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTWriterTestCase.java
+++ b/oauth-2.0/jwt/src/test/java/org/apache/oltu/oauth2/jwt/io/JWTWriterTestCase.java
@@ -16,12 +16,13 @@
*/
package org.apache.oltu.oauth2.jwt.io;
-import static org.junit.Assert.assertEquals;
-
-import java.util.Arrays;
import org.apache.oltu.oauth2.jwt.JWT;
import org.junit.Test;
+import java.util.Arrays;
+
+import static org.junit.Assert.assertEquals;
+
public final class JWTWriterTestCase implements IOTestCaseConstants {
@Test
@@ -34,8 +35,8 @@
.setClaimsSetAudience("788732372078.apps.googleusercontent.com")
.setClaimsSetIssuer("accounts.google.com")
.setClaimsSetSubject("106422453082479998429")
- .setClaimsSetExpirationTime(1366730217)
- .setClaimsSetIssuedAt(1366726317)
+ .setClaimsSetExpirationTime(1366730217L)
+ .setClaimsSetIssuedAt(1366726317L)
.setClaimsSetCustomField("id", "106422453082479998429")
.setClaimsSetCustomField("verified_email", "true")
.setClaimsSetCustomField("email_verified", "true")
@@ -61,8 +62,8 @@
.setClaimsSetAudiences(Arrays.asList("788732372078.apps.googleusercontent.com"))
.setClaimsSetIssuer("accounts.google.com")
.setClaimsSetSubject("106422453082479998429")
- .setClaimsSetExpirationTime(1366730217)
- .setClaimsSetIssuedAt(1366726317)
+ .setClaimsSetExpirationTime(1366730217L)
+ .setClaimsSetIssuedAt(1366726317L)
.setClaimsSetCustomField("id", "106422453082479998429")
.setClaimsSetCustomField("verified_email", "true")
.setClaimsSetCustomField("email_verified", "true")
@@ -88,8 +89,8 @@
.setClaimsSetAudiences(Arrays.asList("788732372078.apps.googleusercontent.com", "foo"))
.setClaimsSetIssuer("accounts.google.com")
.setClaimsSetSubject("106422453082479998429")
- .setClaimsSetExpirationTime(1366730217)
- .setClaimsSetIssuedAt(1366726317)
+ .setClaimsSetExpirationTime(1366730217L)
+ .setClaimsSetIssuedAt(1366726317L)
.setClaimsSetCustomField("id", "106422453082479998429")
.setClaimsSetCustomField("verified_email", "true")
.setClaimsSetCustomField("email_verified", "true")