Advertisement
Unity90

java.io.File error Language class

Apr 5th, 2020
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.66 KB | None | 0 0
  1. package io.github.tivecs.lab.language;
  2.  
  3. import io.github.tivecs.lab.storage.yaml.ConfigManager;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.configuration.file.FileConfiguration;
  6.  
  7. import java.io.File;
  8. import java.io.IOException;
  9. import java.util.HashMap;
  10. import java.util.List;
  11. import java.util.Set;
  12.  
  13. public class Language extends ConfigManager {
  14.  
  15.     private FileConfiguration config;
  16.  
  17.     private String languageId, parentLanguageId;
  18.     private boolean asDefaultLanguage = false;
  19.  
  20.     public Language(File languageFile){
  21.         super(languageFile);
  22.  
  23.         this.config = getConfig();
  24.         String fileName = languageFile.getName();
  25.         if (fileName.endsWith(".yml")){
  26.             languageId = fileName.substring(0, fileName.length() - 4);
  27.         }else{
  28.             languageId = fileName;
  29.         }
  30.  
  31.     }
  32.  
  33.     public void set(String path, List<String> value) {
  34.         super.set(path, value);
  35.     }
  36.  
  37.     public void setIfNotExists(String path, List<String> value) {
  38.         super.setIfNotExists(path, value);
  39.     }
  40.  
  41.     @Override
  42.     public void saveConfig() {
  43.         if (config != null){
  44.             HashMap<String, Object> data = getData();
  45.             for (String path : getDataActivityHistory()){
  46.                 config.set("messages." + path, data.get(path));
  47.             }
  48.             getDataActivityHistory().clear();
  49.  
  50.             try {
  51.                 config.save(getFile());
  52.             } catch (IOException e) {
  53.                 e.printStackTrace();
  54.             }
  55.         }
  56.     }
  57.  
  58.     @Override
  59.     public void readConfig() {
  60.         if (config != null){
  61.             getData().clear();
  62.  
  63.             Set<String> childs = getChilds("messages", false);
  64.             for (String path : childs){
  65.  
  66.                 List<String> msg = config.getStringList("messages." + path);
  67.                 int size = msg.size();
  68.  
  69.                 for (int i = 0; i < size; i++){
  70.                     msg.set(i, ChatColor.translateAlternateColorCodes('&', msg.get(i)));
  71.                 }
  72.  
  73.                 getData().put(path, msg);
  74.             }
  75.         }
  76.     }
  77.  
  78.     public void readAttribute(){
  79.         if (config != null){
  80.             this.languageId = config.getString("attributes.language-id");
  81.             this.parentLanguageId = config.getString("attributes.parent-language-id");
  82.             this.asDefaultLanguage = config.getBoolean("attributes.as-default-language");
  83.         }
  84.     }
  85.  
  86.     public String getLanguageId() {
  87.         return languageId;
  88.     }
  89.  
  90.     public String getParentLanguageId() {
  91.         return parentLanguageId;
  92.     }
  93.  
  94.     public boolean isAsDefaultLanguage() {
  95.         return asDefaultLanguage;
  96.     }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement