mirror of
https://github.com/GravitLauncher/Launcher
synced 2025-04-11 18:57:30 +03:00
Теперь все берется/сетается одним запросом
This commit is contained in:
parent
7ab55ce9d8
commit
1d0e510109
2 changed files with 51 additions and 87 deletions
|
@ -11,19 +11,18 @@ public final class RequestAuthHandler extends CachedAuthHandler {
|
|||
private String url;
|
||||
private String secretKey;
|
||||
|
||||
private String typeColumn;
|
||||
private String uuidColumn;
|
||||
private String usernameColumn;
|
||||
private String accessTokenColumn;
|
||||
private String serverIDColumn;
|
||||
private String secretKeyColumn;
|
||||
private String typeLine;
|
||||
private String uuidLine;
|
||||
private String usernameLine;
|
||||
private String accessTokenLine;
|
||||
private String serverIDLine;
|
||||
private String secretKeyLine;
|
||||
|
||||
private String TypeGetUsername;
|
||||
private String TypeGetUUID;
|
||||
private String TypeGetAccessToken;
|
||||
private String TypeGetServerID;
|
||||
private String TypeFetchByUUID;
|
||||
private String TypeFetchByUsername;
|
||||
private String TypeSetAccessTokenAndUUID;
|
||||
private String TypeSetServerID;
|
||||
private String splitSymbol;
|
||||
|
||||
@Override
|
||||
public void init() {
|
||||
|
@ -31,37 +30,38 @@ public void init() {
|
|||
LogHelper.error("[Verify][AuthHandler] url cannot be null");
|
||||
if (secretKey == null)
|
||||
LogHelper.error("[Verify][AuthHandler] secretKey cannot be null");
|
||||
if (typeColumn == null)
|
||||
typeColumn = "type";
|
||||
if (uuidColumn == null)
|
||||
uuidColumn = "uuid";
|
||||
if (usernameColumn == null)
|
||||
usernameColumn = "username";
|
||||
if (accessTokenColumn == null)
|
||||
accessTokenColumn = "accessToken";
|
||||
if (serverIDColumn == null)
|
||||
serverIDColumn = "serverID";
|
||||
if (secretKeyColumn == null)
|
||||
secretKeyColumn = "secretKey";
|
||||
if (TypeGetUsername == null)
|
||||
TypeGetUsername = "GetUsername";
|
||||
if (TypeGetUUID == null)
|
||||
TypeGetUUID = "GetUUID";
|
||||
if (TypeGetAccessToken == null)
|
||||
TypeGetAccessToken = "GetAccessToken";
|
||||
if (TypeGetServerID == null)
|
||||
TypeGetServerID = "GetServerID";
|
||||
// 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 = ":";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Entry fetchEntry(UUID uuid) throws IOException {
|
||||
String username = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetUsername + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidColumn) + "=" + IOHelper.urlEncode(uuid.toString())));
|
||||
String accessToken = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetAccessToken + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidColumn) + "=" + IOHelper.urlEncode(uuid.toString())));
|
||||
String serverID = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetServerID + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidColumn) + "=" + IOHelper.urlEncode(uuid.toString())));
|
||||
String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeFetchByUUID + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidLine) + "=" + 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);
|
||||
|
@ -71,10 +71,11 @@ protected Entry fetchEntry(UUID uuid) throws IOException {
|
|||
|
||||
@Override
|
||||
protected Entry fetchEntry(String username) throws IOException {
|
||||
String GettedUUID = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetUUID + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(usernameColumn) + "=" + IOHelper.urlEncode(username)));
|
||||
UUID uuid = UUID.fromString(GettedUUID);
|
||||
String accessToken = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetAccessToken + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(usernameColumn) + "=" + IOHelper.urlEncode(username)));
|
||||
String serverID = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeGetServerID + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(usernameColumn) + "=" + IOHelper.urlEncode(username)));
|
||||
String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeLine) + "=" + TypeFetchByUsername + "&" + secretKeyLine + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(usernameLine) + "=" + 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);
|
||||
|
@ -88,7 +89,7 @@ private Entry query(UUID uuid, String username, String accessToken, String serve
|
|||
|
||||
@Override
|
||||
protected boolean updateAuth(UUID uuid, String username, String accessToken) throws IOException {
|
||||
String response = IOHelper.request(new URL(url+ "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeSetAccessTokenAndUUID + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidColumn) + "=" + IOHelper.urlEncode(uuid.toString()) + "&" + IOHelper.urlEncode(accessTokenColumn) + "=" + IOHelper.urlEncode(accessToken) + "&" + IOHelper.urlEncode(usernameColumn) + "=" + IOHelper.urlEncode(username)));
|
||||
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);
|
||||
|
@ -97,7 +98,7 @@ protected boolean updateAuth(UUID uuid, String username, String accessToken) thr
|
|||
|
||||
@Override
|
||||
protected boolean updateServerID(UUID uuid, String serverID) throws IOException {
|
||||
String response = IOHelper.request(new URL(url + "?" + IOHelper.urlEncode(typeColumn) + "=" + TypeSetServerID + "&" + secretKeyColumn + "=" + IOHelper.urlEncode(secretKey) + "&" + IOHelper.urlEncode(uuidColumn) + "=" + IOHelper.urlEncode(uuid.toString()) + "&" + IOHelper.urlEncode(serverIDColumn) + "=" + IOHelper.urlEncode(serverID)));
|
||||
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");
|
||||
|
|
|
@ -43,62 +43,25 @@ if(!$link) {
|
|||
}
|
||||
|
||||
if(isset($AuthHandler['type'])) {
|
||||
if($AuthHandler['type'] == "GetUsername") {
|
||||
if($AuthHandler['type'] == "FetchByUUID") {
|
||||
if(isset($AuthHandler['uuid'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['usernameColumn'].' FROM '.$settings['table'].' WHERE '.$settings['uuidColumn'].'="'.$AuthHandler['uuid'].'" LIMIT 1') or die($link->error);
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['usernameColumn'].','.$settings['accessTokenColumn'].','.$settings['serverID'].' FROM '.$settings['table'].' WHERE '.$settings['uuidColumn'].'="'.$AuthHandler['uuid'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['usernameColumn']]);
|
||||
} else {
|
||||
die('UUID not set!');
|
||||
}
|
||||
die($row[$settings['usernameColumn']] + ':' + $row[$settings['accessTokenColumn']] + ':' + $row[$settings['serverID']]);
|
||||
}
|
||||
if($AuthHandler['type'] == "GetAccessToken") {
|
||||
if($AuthHandler['type'] == "FetchByUsername") {
|
||||
if(isset($AuthHandler['uuid'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['accessTokenColumn'].' FROM '.$settings['table'].' WHERE '.$settings['uuidColumn'].'="'.$AuthHandler['uuid'].'" LIMIT 1') or die($link->error);
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['uuidColumn'].','.$settings['accessTokenColumn'].','.$settings['serverID'].' FROM '.$settings['table'].' WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['accessTokenColumn']]);
|
||||
}
|
||||
if(isset($AuthHandler['username'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['accessTokenColumn'].' FROM '.$settings['table'].' WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['accessTokenColumn']]);
|
||||
}
|
||||
die('No avaiable var to get accessToken!');
|
||||
}
|
||||
if($AuthHandler['type'] == "GetServerID") {
|
||||
if(isset($AuthHandler['uuid'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['ServerIDColumn'].' FROM '.$settings['table'].' WHERE '.$settings['uuidColumn'].'="'.$AuthHandler['uuid'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['ServerIDColumn']]);
|
||||
}
|
||||
if(isset($AuthHandler['username'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['ServerIDColumn'].' FROM '.$settings['table'].' WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['ServerIDColumn']]);
|
||||
}
|
||||
die('No avaiable var to get serverID!');
|
||||
}
|
||||
if($AuthHandler['type'] == "GetUUID") {
|
||||
if(isset($AuthHandler['username'])) {
|
||||
$result = mysqli_query($link, 'SELECT '.$settings['uuidColumn'].' FROM '.$settings['table'].' WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'" LIMIT 1') or die($link->error);
|
||||
$row = $result->fetch_assoc();
|
||||
mysqli_free_result($result);
|
||||
mysqli_close($link);
|
||||
die($row[$settings['uuidColumn']]);
|
||||
} else {
|
||||
die('Username not set!');
|
||||
}
|
||||
die($row[$settings['uuidColumn']] + ':' + $row[$settings['accessTokenColumn']] + ':' + $row[$settings['serverID']]);
|
||||
}
|
||||
|
||||
// Обновление строк
|
||||
|
||||
if($AuthHandler['type'] == "SetAccessTokenAndUUID") {
|
||||
$result = mysqli_query($link, 'UPDATE '.$settings['table'].' SET '.$settings['accessTokenColumn'].'="'.$AuthHandler['accessToken'].'" WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'"') or die($link->error);
|
||||
$result1 = mysqli_query($link, 'UPDATE '.$settings['table'].' SET '.$settings['uuidColumn'].'="'.$AuthHandler['uuid'].'" WHERE '.$settings['usernameColumn'].'="'.$AuthHandler['username'].'"') or die($link->error);
|
||||
|
@ -110,8 +73,8 @@ if(isset($AuthHandler['type'])) {
|
|||
mysqli_close($link);
|
||||
die('OK');
|
||||
}
|
||||
die('Type is not correct!');
|
||||
die('FAIL!');
|
||||
} else {
|
||||
die('Type not set!');
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
|
Loading…
Reference in a new issue