Package net.minecraft.client.util
Class ProfileKeysImpl
java.lang.Object
net.minecraft.client.util.ProfileKeysImpl
- All Implemented Interfaces:
ProfileKeys
A class to fetch, load, and save the player's public and private keys.
- Mappings:
Namespace Name official fehintermediary net/minecraft/class_7434named net/minecraft/client/util/ProfileKeysImpl
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Instantprivate final Pathprivate CompletableFuture<Optional<PlayerKeyPair>>private static final Loggerprivate static final Pathprivate static final Durationprivate final com.mojang.authlib.minecraft.UserApiServiceFields inherited from interface net.minecraft.client.util.ProfileKeys
MISSING -
Constructor Summary
ConstructorsConstructorDescriptionProfileKeysImpl(com.mojang.authlib.minecraft.UserApiService userApiService, UUID uuid, Path root) -
Method Summary
Modifier and TypeMethodDescriptionprivate static PlayerPublicKey.PublicKeyDatadecodeKeyPairResponse(com.mojang.authlib.yggdrasil.response.KeyPairResponse keyPairResponse) ReturnskeyPairResponsedecoded toPlayerPublicKey.PublicKeyData.private PlayerKeyPairfetchKeyPair(com.mojang.authlib.minecraft.UserApiService userApiService) Returns the key pair fetched from Mojang's server.private CompletableFuture<Optional<PlayerKeyPair>>getKeyPair(Optional<PlayerKeyPair> currentKey) Gets the key pair from the file cache, or if it is unavailable or expired, the Mojang server.booleanprivate Optional<PlayerKeyPair>Returns the profile keys from the local cache.private voidsaveKeyPairToFile(@Nullable PlayerKeyPair keyPair) Saves thekeyPairto the cache file ifSharedConstants.isDevelopmentistrue; otherwise, just deletes the cache file.
-
Field Details
-
LOGGER
- Mappings:
Namespace Name Mixin selector official bLfeh;b:Lorg/slf4j/Logger;intermediary field_39074Lnet/minecraft/class_7434;field_39074:Lorg/slf4j/Logger;named LOGGERLnet/minecraft/client/util/ProfileKeysImpl;LOGGER:Lorg/slf4j/Logger;
-
TIME_UNTIL_FIRST_EXPIRY_CHECK
- Mappings:
Namespace Name Mixin selector official cLfeh;c:Ljava/time/Duration;intermediary field_40797Lnet/minecraft/class_7434;field_40797:Ljava/time/Duration;named TIME_UNTIL_FIRST_EXPIRY_CHECKLnet/minecraft/client/util/ProfileKeysImpl;TIME_UNTIL_FIRST_EXPIRY_CHECK:Ljava/time/Duration;
-
PROFILE_KEYS_PATH
- Mappings:
Namespace Name Mixin selector official dLfeh;d:Ljava/nio/file/Path;intermediary field_39075Lnet/minecraft/class_7434;field_39075:Ljava/nio/file/Path;named PROFILE_KEYS_PATHLnet/minecraft/client/util/ProfileKeysImpl;PROFILE_KEYS_PATH:Ljava/nio/file/Path;
-
userApiService
private final com.mojang.authlib.minecraft.UserApiService userApiService- Mappings:
Namespace Name Mixin selector official eLfeh;e:Lcom/mojang/authlib/minecraft/UserApiService;intermediary field_39958Lnet/minecraft/class_7434;field_39958:Lcom/mojang/authlib/minecraft/UserApiService;named userApiServiceLnet/minecraft/client/util/ProfileKeysImpl;userApiService:Lcom/mojang/authlib/minecraft/UserApiService;
-
jsonPath
- Mappings:
Namespace Name Mixin selector official fLfeh;f:Ljava/nio/file/Path;intermediary field_39076Lnet/minecraft/class_7434;field_39076:Ljava/nio/file/Path;named jsonPathLnet/minecraft/client/util/ProfileKeysImpl;jsonPath:Ljava/nio/file/Path;
-
keyFuture
- Mappings:
Namespace Name Mixin selector official gLfeh;g:Ljava/util/concurrent/CompletableFuture;intermediary field_39959Lnet/minecraft/class_7434;field_39959:Ljava/util/concurrent/CompletableFuture;named keyFutureLnet/minecraft/client/util/ProfileKeysImpl;keyFuture:Ljava/util/concurrent/CompletableFuture;
-
expiryCheckTime
- Mappings:
Namespace Name Mixin selector official hLfeh;h:Ljava/time/Instant;intermediary field_40798Lnet/minecraft/class_7434;field_40798:Ljava/time/Instant;named expiryCheckTimeLnet/minecraft/client/util/ProfileKeysImpl;expiryCheckTime:Ljava/time/Instant;
-
-
Constructor Details
-
ProfileKeysImpl
public ProfileKeysImpl(com.mojang.authlib.minecraft.UserApiService userApiService, UUID uuid, Path root) - Mappings:
Namespace Name Mixin selector official <init>Lfeh;<init>(Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)Vintermediary <init>Lnet/minecraft/class_7434;<init>(Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)Vnamed <init>Lnet/minecraft/client/util/ProfileKeysImpl;<init>(Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)V
-
-
Method Details
-
fetchKeyPair
- Specified by:
fetchKeyPairin interfaceProfileKeys- Mappings:
Namespace Name Mixin selector official aLfer;a()Ljava/util/concurrent/CompletableFuture;intermediary method_46522Lnet/minecraft/class_7853;method_46522()Ljava/util/concurrent/CompletableFuture;named fetchKeyPairLnet/minecraft/client/util/ProfileKeys;fetchKeyPair()Ljava/util/concurrent/CompletableFuture;
-
isExpired
public boolean isExpired()- Specified by:
isExpiredin interfaceProfileKeys- Mappings:
Namespace Name Mixin selector official bLfer;b()Zintermediary method_46523Lnet/minecraft/class_7853;method_46523()Znamed isExpiredLnet/minecraft/client/util/ProfileKeys;isExpired()Z
-
getKeyPair
Gets the key pair from the file cache, or if it is unavailable or expired, the Mojang server.- Mappings:
Namespace Name Mixin selector official aLfeh;a(Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture;intermediary method_43602Lnet/minecraft/class_7434;method_43602(Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture;named getKeyPairLnet/minecraft/client/util/ProfileKeysImpl;getKeyPair(Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture;
-
loadKeyPairFromFile
Returns the profile keys from the local cache.This can return expired keys.
- Returns:
- the profile keys from the local cache
- Implementation Note:
- The cache file is stored at
.minecraft/profilekeys/<uuid>.json. - Mappings:
Namespace Name Mixin selector official cLfeh;c()Ljava/util/Optional;intermediary method_43606Lnet/minecraft/class_7434;method_43606()Ljava/util/Optional;named loadKeyPairFromFileLnet/minecraft/client/util/ProfileKeysImpl;loadKeyPairFromFile()Ljava/util/Optional;
-
saveKeyPairToFile
Saves thekeyPairto the cache file ifSharedConstants.isDevelopmentistrue; otherwise, just deletes the cache file.- Mappings:
Namespace Name Mixin selector official aLfeh;a(Lbyo;)Vintermediary method_43600Lnet/minecraft/class_7434;method_43600(Lnet/minecraft/class_7427;)Vnamed saveKeyPairToFileLnet/minecraft/client/util/ProfileKeysImpl;saveKeyPairToFile(Lnet/minecraft/network/encryption/PlayerKeyPair;)V
-
fetchKeyPair
private PlayerKeyPair fetchKeyPair(com.mojang.authlib.minecraft.UserApiService userApiService) throws NetworkEncryptionException, IOException Returns the key pair fetched from Mojang's server.- Returns:
- the key pair fetched from Mojang's server
- Throws:
NetworkEncryptionException- when the fetched key is malformedIOException- when fetching fails- Mappings:
Namespace Name Mixin selector official aLfeh;a(Lcom/mojang/authlib/minecraft/UserApiService;)Lbyo;intermediary method_43605Lnet/minecraft/class_7434;method_43605(Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/class_7427;named fetchKeyPairLnet/minecraft/client/util/ProfileKeysImpl;fetchKeyPair(Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/network/encryption/PlayerKeyPair;
-
decodeKeyPairResponse
private static PlayerPublicKey.PublicKeyData decodeKeyPairResponse(com.mojang.authlib.yggdrasil.response.KeyPairResponse keyPairResponse) throws NetworkEncryptionException ReturnskeyPairResponsedecoded toPlayerPublicKey.PublicKeyData.- Returns:
keyPairResponsedecoded toPlayerPublicKey.PublicKeyData- Throws:
NetworkEncryptionException- when the response is malformed- Mappings:
Namespace Name Mixin selector official aLfeh;a(Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lbyp$a;intermediary method_44076Lnet/minecraft/class_7434;method_44076(Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lnet/minecraft/class_7428$class_7443;named decodeKeyPairResponseLnet/minecraft/client/util/ProfileKeysImpl;decodeKeyPairResponse(Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lnet/minecraft/network/encryption/PlayerPublicKey$PublicKeyData;
-