KNOX-3038 - The expires_in field in OAuthResource response returns the configured token TTL. (#907)

Additionally, removed the override of the getExpiry() method because in the database the meaning of expiration time must remain the same as in the parent class.
diff --git a/gateway-service-knoxtoken/src/main/java/org/apache/knox/gateway/service/knoxtoken/OAuthResource.java b/gateway-service-knoxtoken/src/main/java/org/apache/knox/gateway/service/knoxtoken/OAuthResource.java
index 71cf28b..4064092 100644
--- a/gateway-service-knoxtoken/src/main/java/org/apache/knox/gateway/service/knoxtoken/OAuthResource.java
+++ b/gateway-service-knoxtoken/src/main/java/org/apache/knox/gateway/service/knoxtoken/OAuthResource.java
@@ -79,14 +79,13 @@
             // let's get the subset of the KnoxToken Response needed for OAuth
             String accessToken = resp.responseMap.accessToken;
             String passcode = resp.responseMap.passcode;
-            long expires = (long) resp.responseMap.map.get(EXPIRES_IN);
             String tokenType = (String) resp.responseMap.map.get(TOKEN_TYPE);
 
             // build and return the expected OAuth response
             final HashMap<String, Object> map = new HashMap<>();
             map.put(ACCESS_TOKEN, accessToken);
             map.put(TOKEN_TYPE, tokenType);
-            map.put(EXPIRES_IN, expires);
+            map.put(EXPIRES_IN, getTokenLifetimeInSeconds());
             map.put(ISSUED_TOKEN_TYPE, ISSUED_TOKEN_TYPE_ACCESS_TOKEN_VALUE);
             // let's use the passcode as the refresh token
             map.put(REFRESH_TOKEN, passcode);
@@ -103,8 +102,7 @@
         }
     }
 
-    @Override
-    protected long getExpiry() {
+    private long getTokenLifetimeInSeconds() {
         long secs = tokenTTL/1000;
 
         String lifetimeStr = request.getParameter(LIFESPAN);
diff --git a/gateway-service-knoxtoken/src/test/java/org/apache/knox/gateway/service/knoxtoken/TokenServiceResourceTest.java b/gateway-service-knoxtoken/src/test/java/org/apache/knox/gateway/service/knoxtoken/TokenServiceResourceTest.java
index b072b8d..9ef8523 100644
--- a/gateway-service-knoxtoken/src/test/java/org/apache/knox/gateway/service/knoxtoken/TokenServiceResourceTest.java
+++ b/gateway-service-knoxtoken/src/test/java/org/apache/knox/gateway/service/knoxtoken/TokenServiceResourceTest.java
@@ -1657,21 +1657,8 @@
 
 
   private String getTagValue(String token, String tagName) {
-    if (!token.contains(tagName)) {
-      return null;
-    }
-    String searchString = "\"" + tagName + "\":";
-    String value = token.substring(token.indexOf(searchString) + searchString.length());
-    if (value.startsWith("\"")) {
-      value = value.substring(1);
-    }
-    if (value.contains("\"")) {
-      return value.substring(0, value.indexOf('\"'));
-    } else if (value.contains(",")) {
-      return value.substring(0, value.indexOf(','));
-    } else {
-      return value.substring(0, value.length() - 1);
-    }
+    final Map<String, String> tokenMap = JsonUtils.getMapFromJsonString(token);
+    return tokenMap == null ? null : tokenMap.get(tagName);
   }
 
   /**