From 174ef2d0a2ddc22f78c43035303993e72bd24deb Mon Sep 17 00:00:00 2001 From: zaxar163 Date: Fri, 12 Apr 2019 21:55:58 +0300 Subject: [PATCH] =?UTF-8?q?[FIX]=20=D0=96=D1=83=D1=82=D0=BA=D0=B8=D0=B9=20?= =?UTF-8?q?RequestAuthHandler.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auth/handler/RequestAuthHandler.java | 107 +++++++----------- 1 file changed, 43 insertions(+), 64 deletions(-) diff --git a/LaunchServer/src/main/java/ru/gravit/launchserver/auth/handler/RequestAuthHandler.java b/LaunchServer/src/main/java/ru/gravit/launchserver/auth/handler/RequestAuthHandler.java index 1b705bfb..af796978 100644 --- a/LaunchServer/src/main/java/ru/gravit/launchserver/auth/handler/RequestAuthHandler.java +++ b/LaunchServer/src/main/java/ru/gravit/launchserver/auth/handler/RequestAuthHandler.java @@ -1,5 +1,6 @@ package ru.gravit.launchserver.auth.handler; +import ru.gravit.utils.helper.CommonHelper; import ru.gravit.utils.helper.IOHelper; import ru.gravit.utils.helper.LogHelper; @@ -8,100 +9,78 @@ import java.util.UUID; public final class RequestAuthHandler extends CachedAuthHandler { - private String url; - private String secretKey; + private String usernameFetch; + private String uuidFetch; - private String typeLine; - private String uuidLine; - private String usernameLine; - private String accessTokenLine; - private String serverIDLine; - private String secretKeyLine; + private String updateAuth; + private String updateServerID; - private String TypeFetchByUUID; - private String TypeFetchByUsername; - private String TypeSetAccessTokenAndUUID; - private String TypeSetServerID; - private String splitSymbol; + private String splitSymbol = ":"; + private String goodResponse = "OK"; @Override public void init() { - if (url == null) - LogHelper.error("[Verify][AuthHandler] url cannot be null"); - if (secretKey == null) - LogHelper.error("[Verify][AuthHandler] secretKey cannot be null"); - // Default - if (typeLine == null) - typeLine = "type"; - if (uuidLine == null) - uuidLine = "uuid"; - if (usernameLine == null) - usernameLine = "username"; - if (accessTokenLine == null) - accessTokenLine = "accessToken"; - if (serverIDLine == null) - serverIDLine = "serverID"; - if (secretKeyLine == null) - secretKeyLine = "secretKey"; - if (TypeFetchByUUID == null) - TypeFetchByUUID = "FetchByUUID"; - if (TypeFetchByUsername == null) - TypeFetchByUsername = "FetchByUsername"; - if (TypeSetAccessTokenAndUUID == null) - TypeSetAccessTokenAndUUID = "SetAccessTokenAndUUID"; - if (TypeSetServerID == null) - TypeSetServerID = "SetServerID"; - if (splitSymbol == null) - splitSymbol = ":"; + if (usernameFetch == null) + LogHelper.error("[Verify][AuthHandler] usernameFetch cannot be null"); + if (uuidFetch == null) + LogHelper.error("[Verify][AuthHandler] uuidFetch cannot be null"); + if (updateAuth == null) + LogHelper.error("[Verify][AuthHandler] updateAuth cannot be null"); + if (updateServerID == null) + LogHelper.error("[Verify][AuthHandler] updateServerID cannot be null"); } @Override protected Entry fetchEntry(UUID uuid) throws IOException { - String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeFetchByUUID + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidLine) + "=" + IOHelper.urlEncode(uuid.toString()))); + String response = IOHelper.request(new URL(CommonHelper.replace(uuidFetch, "uuid", IOHelper.urlEncode(uuid.toString())))); String[] parts = response.split(splitSymbol); String username = parts[0]; String accessToken = parts[1]; String serverID = parts[2]; - LogHelper.debug("[AuthHandler] Getted username: " + username); - LogHelper.debug("[AuthHandler] Getted accessToken: " + accessToken); - LogHelper.debug("[AuthHandler] Getted serverID: " + serverID); - LogHelper.debug("[AuthHandler] Getted UUID: " + uuid); - return query(uuid, username, accessToken, serverID); + if (LogHelper.isDebugEnabled()) { + LogHelper.debug("[AuthHandler] Getted username: " + username); + LogHelper.debug("[AuthHandler] Getted accessToken: " + accessToken); + LogHelper.debug("[AuthHandler] Getted serverID: " + serverID); + LogHelper.debug("[AuthHandler] Getted UUID: " + uuid); + } + return new Entry(uuid, username, accessToken, serverID); } @Override protected Entry fetchEntry(String username) throws IOException { - String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeFetchByUsername + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(usernameLine) + "=" + IOHelper.urlEncode(username))); + String response = IOHelper.request(new URL(CommonHelper.replace(usernameFetch, "user", IOHelper.urlEncode(username)))); String[] parts = response.split(splitSymbol); UUID uuid = UUID.fromString(parts[0]); String accessToken = parts[1]; String serverID = parts[2]; - LogHelper.debug("[AuthHandler] Getted username: " + username); - LogHelper.debug("[AuthHandler] Getted accessToken: " + accessToken); - LogHelper.debug("[AuthHandler] Getted serverID: " + serverID); - LogHelper.debug("[AuthHandler] Getted UUID: " + uuid); - return query(uuid, username, accessToken, serverID); - } - - private Entry query(UUID uuid, String username, String accessToken, String serverID) { + if (LogHelper.isDebugEnabled()) { + LogHelper.debug("[AuthHandler] Getted username: " + username); + LogHelper.debug("[AuthHandler] Getted accessToken: " + accessToken); + LogHelper.debug("[AuthHandler] Getted serverID: " + serverID); + LogHelper.debug("[AuthHandler] Getted UUID: " + uuid); + } return new Entry(uuid, username, accessToken, serverID); } @Override protected boolean updateAuth(UUID uuid, String username, String accessToken) throws IOException { - String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeSetAccessTokenAndUUID + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidLine) + "=" + IOHelper.urlEncode(uuid.toString()) + "&" + IOHelper.urlEncode(accessTokenLine) + "=" + IOHelper.urlEncode(accessToken) + "&" + IOHelper.urlEncode(usernameLine) + "=" + IOHelper.urlEncode(username))); - LogHelper.debug("[AuthHandler] Set accessToken: " + accessToken); - LogHelper.debug("[AuthHandler] Set UUID: " + uuid); - LogHelper.debug("[AuthHandler] For this username: " + username); - return response.equals("OK"); + String response = IOHelper.request(new URL(CommonHelper.replace(updateAuth, "user", IOHelper.urlEncode(username), "uuid", IOHelper.urlEncode(uuid.toString()), "token", IOHelper.urlEncode(accessToken)))); + if (LogHelper.isDebugEnabled()) { + LogHelper.debug("[AuthHandler] Set accessToken: " + accessToken); + LogHelper.debug("[AuthHandler] Set UUID: " + uuid); + LogHelper.debug("[AuthHandler] For this username: " + username); + } + return goodResponse.equals(response); } @Override protected boolean updateServerID(UUID uuid, String serverID) throws IOException { - String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeSetServerID + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidLine) + "=" + IOHelper.urlEncode(uuid.toString()) + "&" + IOHelper.urlEncode(serverIDLine) + "=" + IOHelper.urlEncode(serverID))); - LogHelper.debug("[AuthHandler] Set serverID: " + serverID); - LogHelper.debug("[AuthHandler] For this UUID: " + uuid); - return response.equals("OK"); + String response = IOHelper.request(new URL(CommonHelper.replace(updateAuth, "serverid", IOHelper.urlEncode(serverID), "uuid", IOHelper.urlEncode(uuid.toString())))); + if (LogHelper.isDebugEnabled()) { + LogHelper.debug("[AuthHandler] Set serverID: " + serverID); + LogHelper.debug("[AuthHandler] For this UUID: " + uuid); + } + return goodResponse.equals(response); } @Override