Advertisement
Unity90

java.io.File error LanguageHandler class

Apr 5th, 2020
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.36 KB | None | 0 0
  1. package io.github.tivecs.lab.language;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.command.CommandSender;
  5. import org.bukkit.entity.Player;
  6.  
  7. import java.io.File;
  8. import java.util.ArrayList;
  9. import java.util.HashMap;
  10. import java.util.List;
  11. import java.util.UUID;
  12.  
  13. public class LanguageHandler {
  14.  
  15.     private HashMap<String, Language> registeredLanguages = new HashMap<>();
  16.  
  17.     private HashMap<UUID, String> userSelectedLanguage = new HashMap<>();
  18.  
  19.     private Language defaultLanguage = null;
  20.  
  21.     public LanguageHandler(){ }
  22.     public LanguageHandler(File languageFolder){
  23.         loadLanguages(languageFolder);
  24.     }
  25.  
  26.     //-----------------------------------
  27.  
  28.     @SuppressWarnings("unchecked")
  29.     public void sendMessage(UUID userUniqueId, String messagePath){
  30.         Player onlineUser = Bukkit.getPlayer(userUniqueId);
  31.         if (onlineUser.isOnline()) {
  32.             if (userSelectedLanguage.get(userUniqueId) == null) {
  33.                 if (registeredLanguages.size() > 0) {
  34.                     List<String> s = new ArrayList<>(registeredLanguages.keySet());
  35.                     userSelectedLanguage.put(userUniqueId, s.get(0));
  36.                 } else {
  37.                     return;
  38.                 }
  39.             }
  40.  
  41.             Language lang = registeredLanguages.get(userSelectedLanguage.get(userUniqueId));
  42.             List<String> msg = (List<String>) lang.getData().getOrDefault(messagePath, new ArrayList<>());
  43.  
  44.             for (String m : msg){
  45.                 onlineUser.sendMessage(m);
  46.             }
  47.         }
  48.     }
  49.  
  50.     @SuppressWarnings("unchecked")
  51.     public void sendMessage(CommandSender user, String messagePath){
  52.  
  53.     }
  54.  
  55.     //-----------------------------------
  56.     public void registerUser(UUID userUniqueId, String langId){
  57.         userSelectedLanguage.put(userUniqueId, langId);
  58.     }
  59.  
  60.     public void loadLanguages(File parentDirectory){
  61.         if (parentDirectory.isDirectory()){
  62.             File[] langs = parentDirectory.listFiles();
  63.             for (File f : langs){
  64.  
  65.                 Language lang = new Language(f);
  66.                 lang.readAttribute();
  67.                 lang.readConfig();
  68.                 if (lang.isAsDefaultLanguage()){
  69.                     defaultLanguage = lang;
  70.                 }
  71.                 registeredLanguages.put(lang.getLanguageId(), lang);
  72.             }
  73.         }
  74.     }
  75.  
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement