Files
MCCustomSkinLoader/Common/source/customskinloader/loader/ProfileLoader.java
T

38 lines
1.4 KiB
Java
Raw Normal View History

2016-08-21 11:26:00 +08:00
package customskinloader.loader;
import java.util.HashMap;
import com.mojang.authlib.GameProfile;
import customskinloader.config.SkinSiteProfile;
2019-03-08 13:38:44 +08:00
import customskinloader.plugin.PluginLoader;
2016-08-21 11:26:00 +08:00
import customskinloader.profile.UserProfile;
public class ProfileLoader {
2018-02-12 12:20:28 +08:00
private static final IProfileLoader[] DEFAULT_LOADERS={
new MojangAPILoader(),
new JsonAPILoader(JsonAPILoader.Type.CustomSkinAPI),
new JsonAPILoader(JsonAPILoader.Type.CustomSkinAPIPlus),
2018-07-09 19:53:35 +08:00
new JsonAPILoader(JsonAPILoader.Type.UniSkinAPI),
new JsonAPILoader(JsonAPILoader.Type.ElyByAPI),
2019-05-10 11:20:39 +03:00
new JsonAPILoader(JsonAPILoader.Type.GlitchlessAPI),
2018-07-09 19:53:35 +08:00
new LegacyLoader()};
2018-02-12 12:20:28 +08:00
public static final HashMap<String,IProfileLoader> LOADERS=initLoaders();
private static HashMap<String, IProfileLoader> initLoaders() {
HashMap<String, IProfileLoader> loaders=new HashMap<String, IProfileLoader>();
for(IProfileLoader loader:DEFAULT_LOADERS){
loaders.put(loader.getName().toLowerCase(), loader);
}
2019-03-08 13:38:44 +08:00
loaders.putAll(PluginLoader.loadPlugins());
2018-02-12 12:20:28 +08:00
return loaders;
}
public interface IProfileLoader {
2018-06-25 00:34:32 +08:00
UserProfile loadProfile(SkinSiteProfile ssp,GameProfile gameProfile) throws Exception;
boolean compare(SkinSiteProfile ssp0,SkinSiteProfile ssp1);
String getName();
2019-09-18 22:15:58 +08:00
void init(SkinSiteProfile ssp);
2018-02-12 12:20:28 +08:00
}
2016-08-21 11:26:00 +08:00
}