- * Returns JWT token string (if single exist) from the queryParameters.
- *
- * @param fileServerData file server data which contain queryParameters where
- * JWT token may exist
- * @return JWT token value if single token entry exist or empty string
- * elsewhere.
- * If JWT token key has no value, empty string will be returned.
- */
- public static String getJWTToken(FileServerData fileServerData) {
-
- if (fileServerData.queryParameters.isEmpty()) {
- return "";
- }
- boolean jwtTokenKeyPresent = HttpUtils.isQueryWithSingleJWT(fileServerData.queryParameters);
- if (!jwtTokenKeyPresent) {
- return "";
- }
- String token = HttpUtils.getJWTToken(fileServerData.queryParameters);
- if (HttpUtils.isBasicAuthDataFilled(fileServerData)) {
- logger.warn(HttpUtils.AUTH_JWT_WARN);
- }
- return token;
- }
-
- /**
- * Checks if the queryParameters contains single JWT token entry. Valid
- * queryParameters
- * contains only one token entry.
- *
- * @param query queryParameters
- * @return true if queryParameters contains single token
- */
- public static boolean isQueryWithSingleJWT(List<NameValuePair> query) {
- if (query == null) {
- return false;
- }
- int i = getJWTTokenCount(query);
- if (i == 0) {
- return false;
- }
- if (i > 1) {
- logger.error(AUTH_JWT_ERROR);
- return false;
- }
- return true;
- }
-
- /**
- * Returns the number of JWT token entries. Valid queryParameters contains only
- * one token entry.