mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-05-21 13:24:59 +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);
|
|
}
|