mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-06-06 11:38:10 +08:00
35 lines
1.1 KiB
Java
35 lines
1.1 KiB
Java
package emu.grasscutter.auth;
|
|
|
|
import emu.grasscutter.auth.AuthenticationSystem.AuthenticationRequest;
|
|
import lombok.Builder;
|
|
import lombok.Getter;
|
|
|
|
/** Handles player authentication for the web GM handbook. */
|
|
public interface HandbookAuthenticator {
|
|
@Getter
|
|
@Builder
|
|
class Response {
|
|
private final int status;
|
|
private final String body;
|
|
}
|
|
|
|
/**
|
|
* Invoked when the user requests to authenticate. This should respond with a page that allows the
|
|
* user to authenticate.
|
|
*
|
|
* @route GET /handbook/authenticate
|
|
* @param request The authentication request.
|
|
*/
|
|
void presentPage(AuthenticationRequest request);
|
|
|
|
/**
|
|
* Invoked when the user requests to authenticate. This is called when the user submits the
|
|
* authentication form. This should respond with HTML that sends a message to the GM Handbook. See
|
|
* the default handbook authentication page for an example.
|
|
*
|
|
* @param request The authentication request.
|
|
* @return The response to send to the client.
|
|
*/
|
|
Response authenticate(AuthenticationRequest request);
|
|
}
|