2018-09-17 10:07:32 +03:00
|
|
|
package com.mojang.authlib.minecraft;
|
|
|
|
|
|
|
|
import java.util.Collections;
|
|
|
|
import java.util.EnumSet;
|
|
|
|
import java.util.Set;
|
|
|
|
|
2019-09-18 00:53:03 +03:00
|
|
|
public class MinecraftProfileTexture {
|
2018-09-17 10:07:32 +03:00
|
|
|
public static final Set<Type> PROFILE_TEXTURE_TYPES = Collections.unmodifiableSet(EnumSet.allOf(Type.class));
|
|
|
|
public static final int PROFILE_TEXTURE_COUNT = PROFILE_TEXTURE_TYPES.size();
|
|
|
|
// Instance
|
|
|
|
private final String url;
|
|
|
|
private final String hash;
|
|
|
|
|
|
|
|
public MinecraftProfileTexture(String url) {
|
|
|
|
this(url, baseName(url));
|
|
|
|
}
|
|
|
|
|
|
|
|
public MinecraftProfileTexture(String url, String hash) {
|
|
|
|
this.url = url;
|
|
|
|
this.hash = hash;
|
|
|
|
}
|
|
|
|
|
2020-04-05 10:27:04 +03:00
|
|
|
private static String baseName(String url) {
|
|
|
|
String name = url.substring(url.lastIndexOf('/') + 1);
|
|
|
|
|
|
|
|
// Remove index
|
|
|
|
int extensionIndex = name.lastIndexOf('.');
|
|
|
|
if (extensionIndex >= 0)
|
|
|
|
name = name.substring(0, extensionIndex);
|
|
|
|
|
|
|
|
// We're done
|
|
|
|
return name;
|
|
|
|
}
|
|
|
|
|
2018-09-17 10:07:32 +03:00
|
|
|
public String getHash() {
|
|
|
|
return hash;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getMetadata(String key) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getUrl() {
|
|
|
|
return url;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String toString() {
|
|
|
|
return String.format("MinecraftProfileTexture{url='%s',hash=%s}", url, hash);
|
|
|
|
}
|
2020-04-05 10:27:04 +03:00
|
|
|
|
|
|
|
public enum Type {
|
|
|
|
SKIN,
|
|
|
|
CAPE,
|
|
|
|
ELYTRA
|
|
|
|
}
|
2018-09-17 10:07:32 +03:00
|
|
|
}
|