65 lines
2.1 KiB
Java
65 lines
2.1 KiB
Java
package com.yaohun.gameranking.manager;
|
|
|
|
import com.yaohun.gameranking.GameRanking;
|
|
import com.yaohun.gameranking.data.UserData;
|
|
import com.yaohun.gameranking.data.UserJson;
|
|
import org.bukkit.configuration.ConfigurationSection;
|
|
import org.bukkit.configuration.file.FileConfiguration;
|
|
import org.bukkit.configuration.file.YamlConfiguration;
|
|
|
|
import java.io.File;
|
|
import java.io.IOException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.*;
|
|
|
|
public class UserManager {
|
|
private File manageFile;
|
|
private FileConfiguration manageConfig;
|
|
private HashMap<String, UserJson> userJsonMap = new HashMap<>();
|
|
|
|
public UserManager(){
|
|
manageFile = new File(GameRanking.inst().getDataFolder(),"user.yml");
|
|
manageConfig = YamlConfiguration.loadConfiguration(manageFile);
|
|
for (String nickName : manageConfig.getKeys(false)){
|
|
this.userJsonMap.put(nickName,new UserJson(manageConfig,nickName));
|
|
}
|
|
}
|
|
|
|
public void SaveUserData(){
|
|
for (String nickName : userJsonMap.keySet()){
|
|
UserJson userJson = userJsonMap.get(nickName);
|
|
manageConfig.set(nickName+".secUid",userJson.getSecUid());
|
|
manageConfig.set(nickName+".shortId",userJson.getShortId());
|
|
manageConfig.set(nickName+".avatarUrl",userJson.getAvatarUrl());
|
|
manageConfig.set(nickName+".dataObject",userJson.getDataObject().toString());
|
|
}
|
|
try {
|
|
manageConfig.save(manageFile);
|
|
} catch (IOException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
}
|
|
|
|
public boolean isUserJsonDataExit(String nickName){
|
|
if(this.userJsonMap.get(nickName) == null){
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
public UserJson getUserJsonData(String nickName){
|
|
if(isUserJsonDataExit(nickName)){
|
|
return this.userJsonMap.get(nickName);
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public void setUserJsonData(String nickName,UserJson userJson) {
|
|
this.userJsonMap.put(nickName,userJson);
|
|
}
|
|
|
|
public HashMap<String, UserJson> getUserJsonMap() {
|
|
return userJsonMap;
|
|
}
|
|
}
|