mirror of
https://github.com/GravitLauncher/Launcher
synced 2024-11-15 11:39:11 +03:00
[FIX] JsonAuthCoreProvider joinServer/checkServer
This commit is contained in:
parent
9fff11e887
commit
a915d41b93
2 changed files with 46 additions and 1 deletions
|
@ -37,6 +37,8 @@ public class JsonCoreProvider extends AuthCoreProvider {
|
||||||
public String verifyPasswordUrl;
|
public String verifyPasswordUrl;
|
||||||
public String createOAuthSessionUrl;
|
public String createOAuthSessionUrl;
|
||||||
public String updateServerIdUrl;
|
public String updateServerIdUrl;
|
||||||
|
public String joinServerUrl;
|
||||||
|
public String checkServerUrl;
|
||||||
public String bearerToken;
|
public String bearerToken;
|
||||||
public PasswordVerifier passwordVerifier;
|
public PasswordVerifier passwordVerifier;
|
||||||
private transient HttpClient client;
|
private transient HttpClient client;
|
||||||
|
@ -159,8 +161,29 @@ public void init(LaunchServer server) {
|
||||||
client = HttpClient.newBuilder().build();
|
client = HttpClient.newBuilder().build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public User checkServer(Client client, String username, String serverID) throws IOException {
|
||||||
|
if (checkServerUrl == null) {
|
||||||
|
return super.checkServer(client, username, serverID);
|
||||||
|
}
|
||||||
|
return jsonRequest(new JsonCheckServer(username, serverID), checkServerUrl, JsonUser.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean joinServer(Client client, String username, String accessToken, String serverID) throws IOException {
|
||||||
|
if (joinServerUrl == null) {
|
||||||
|
return super.joinServer(client, username, accessToken, serverID);
|
||||||
|
}
|
||||||
|
return jsonRequest(new JsonJoinServer(username, accessToken, serverID), joinServerUrl, JsonSuccessResponse.class).success;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected boolean updateServerID(User user, String serverID) throws IOException {
|
protected boolean updateServerID(User user, String serverID) throws IOException {
|
||||||
|
JsonUser jsonUser = (JsonUser) user;
|
||||||
|
if (updateServerIdUrl == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
jsonUser.serverId = serverID;
|
||||||
JsonSuccessResponse successResponse = jsonRequest(new JsonUpdateServerId(user.getUsername(), user.getUUID(), serverID), updateServerIdUrl, JsonSuccessResponse.class);
|
JsonSuccessResponse successResponse = jsonRequest(new JsonUpdateServerId(user.getUsername(), user.getUUID(), serverID), updateServerIdUrl, JsonSuccessResponse.class);
|
||||||
if (successResponse == null) return false;
|
if (successResponse == null) return false;
|
||||||
return successResponse.success;
|
return successResponse.success;
|
||||||
|
@ -183,6 +206,28 @@ public JsonGetUserByUsername(String username) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class JsonCheckServer {
|
||||||
|
public String username;
|
||||||
|
public String serverId;
|
||||||
|
|
||||||
|
public JsonCheckServer(String username, String serverId) {
|
||||||
|
this.username = username;
|
||||||
|
this.serverId = serverId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class JsonJoinServer {
|
||||||
|
public String username;
|
||||||
|
public String accessToken;
|
||||||
|
public String serverId;
|
||||||
|
|
||||||
|
public JsonJoinServer(String username, String accessToken, String serverId) {
|
||||||
|
this.username = username;
|
||||||
|
this.accessToken = accessToken;
|
||||||
|
this.serverId = serverId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static class JsonGetUserByUUID {
|
public static class JsonGetUserByUUID {
|
||||||
public UUID uuid;
|
public UUID uuid;
|
||||||
|
|
||||||
|
|
|
@ -112,7 +112,7 @@ public void verifyAuth(AuthResponse.AuthContext context) throws AuthException {
|
||||||
@Override
|
@Override
|
||||||
public PasswordVerifyReport verifyPassword(User user, AuthRequest.AuthPasswordInterface password) {
|
public PasswordVerifyReport verifyPassword(User user, AuthRequest.AuthPasswordInterface password) {
|
||||||
if (passwordVerifier.check(((MySQLUser) user).password, ((AuthPlainPassword) password).password)) {
|
if (passwordVerifier.check(((MySQLUser) user).password, ((AuthPlainPassword) password).password)) {
|
||||||
return new PasswordVerifyReport(true);
|
return PasswordVerifyReport.OK;
|
||||||
} else {
|
} else {
|
||||||
return PasswordVerifyReport.FAILED;
|
return PasswordVerifyReport.FAILED;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue