Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.12 KB | None | 0 0
  1. [17:26:54 ERROR]: Error occurred while enabling Apocalypse v1.0 (Is it up to date?)
  2. java.lang.NullPointerException
  3.         at nick.Nick.loadRandomNickNames(Nick.java:190) ~[?:?]
  4.         at main.Main.load(Main.java:116) ~[?:?]
  5.         at main.Main.onEnable(Main.java:83) ~[?:?]
  6.         at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
  7.         at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [spigot.jar:git-Spigot-db6de12-18fbb24]
  8.         at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot.jar:git-Spigot-db6de12-18fbb24]
  9.         at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:357) [spigot.jar:git-Spigot-db6de12-18fbb24]
  10.         at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:317) [spigot.jar:git-Spigot-db6de12-18fbb24]
  11.         at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:414) [spigot.jar:git-Spigot-db6de12-18fbb24]
  12.         at net.minecraft.server.v1_8_R3.MinecraftServer.k(MinecraftServer.java:378) [spigot.jar:git-Spigot-db6de12-18fbb24]
  13.         at net.minecraft.server.v1_8_R3.MinecraftServer.a(MinecraftServer.java:333) [spigot.jar:git-Spigot-db6de12-18fbb24]
  14.         at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:263) [spigot.jar:git-Spigot-db6de12-18fbb24]
  15.         at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:525) [spigot.jar:git-Spigot-db6de12-18fbb24]
  16.         at java.lang.Thread.run(Thread.java:745) [?:1.8.0_101]
  17.  
  18. ################### Nick class - loadRandomNickNames
  19.  public void loadRandomNickNames() {
  20.         for (final String name : Main.instance.nickNameManager.getNickNames()) {
  21.             if (Main.instance.nickNameManager.hasProfile(name)) {
  22. Zeile 190        this.randomNickUUID.add(Main.instance.nickNameManager.getProfile(name).getId());
  23.             }
  24.             else {
  25.                 this.randomNickUUID.add(Main.instance.gameprofileManager.getGameProfile(name).getId());
  26.                 Main.instance.nickNameManager.setGameProfile(name, Main.instance.gameprofileManager.getGameProfile(name));
  27.             }
  28.         }
  29.     }
  30.  
  31. ################## NickNameManager class - getProfile
  32.  
  33.     public GameProfile getProfile(final String name) {
  34.         ArrayList<GameProfile> profile = new ArrayList<>();
  35.  
  36.         try {
  37.             final PreparedStatement ps = Main.sql.prepare("SELECT * FROM NickNames WHERE name = ?");
  38.             ps.setString(1, name);
  39.  
  40.             Main.sql.query(ps, new Consumer<ResultSet>() {
  41.                 @Override
  42.                 public void accept(ResultSet t) {
  43.                     try {
  44.                         if (t.next()) {
  45.                             if (!t.getString("GameProfile").equals("")) {
  46.                                 profile.add(GameProfileSerializer.fromString(t.getString("GameProfile")));
  47.                             }
  48.                         }
  49.                     } catch (SQLException e) {
  50.                         e.printStackTrace();
  51.                     }
  52.  
  53.                 }
  54.             });
  55.  
  56.             if (!profile.isEmpty()) {
  57.                 return profile.get(0);
  58.             } else {
  59.                 return null;
  60.             }
  61.         } catch (SQLException e) {
  62.             e.printStackTrace();
  63.             return null;
  64.         }
  65.     }
  66.  
  67. ############### AsyncMySQL class
  68.  
  69. public class AsyncMySQL {
  70.    
  71.    private ExecutorService executor;
  72.    private Plugin plugin;
  73.    private MySQL sql;
  74.    public AsyncMySQL(Plugin owner, String host, String port, String user, String password, String database) {
  75.       try {
  76.          sql = new MySQL(host, Integer.valueOf(port), user, password, database);
  77.          executor = Executors.newCachedThreadPool();
  78.          plugin = owner;
  79.       } catch (Exception e) {
  80.          e.printStackTrace();
  81.       }
  82.    }
  83.    
  84.    public void update(PreparedStatement statement) {
  85.       executor.execute(() -> sql.queryUpdate(statement));
  86.    }
  87.    public void update(String statement) {
  88.       executor.execute(() -> sql.queryUpdate(statement));
  89.    }
  90.    
  91.    public void query(PreparedStatement statement, Consumer<ResultSet> consumer) {
  92.       executor.execute(() -> {
  93.          ResultSet result = sql.query(statement);
  94.          Bukkit.getScheduler().runTask(plugin, () -> consumer.accept(result));
  95.       });
  96.    }
  97.    
  98.    public void query(String statement, Consumer<ResultSet> consumer) {
  99.       executor.execute(() -> {
  100.          ResultSet result = sql.query(statement);
  101.          Bukkit.getScheduler().runTask(plugin, () -> consumer.accept(result));
  102.       });
  103.    }
  104.    
  105.    public PreparedStatement prepare(String query) {
  106.       try {
  107.          return sql.getConnection().prepareStatement(query);
  108.       } catch (Exception e) {
  109.          e.printStackTrace();
  110.       }
  111.       return null;
  112.    }
  113.    
  114.    public MySQL getMySQL() {
  115.       return sql;
  116.    }
  117.    
  118.    public static class MySQL {
  119.      
  120.       private String host, user, password, database;
  121.       private int port;
  122.      
  123.       private Connection conn;
  124.      
  125.       public MySQL(String host, int port, String user, String password, String database) throws Exception {
  126.          this.host = host;
  127.          this.port = port;
  128.          this.user = user;
  129.          this.password = password;
  130.          this.database = database;
  131.          
  132.          this.openConnection();
  133.       }
  134.      
  135.       public void queryUpdate(String query) {
  136.          checkConnection();
  137.          try (PreparedStatement statement = conn.prepareStatement(query)) {
  138.             queryUpdate(statement);
  139.          } catch (Exception e) {
  140.             e.printStackTrace();
  141.          }
  142.       }
  143.      
  144.       public void queryUpdate(PreparedStatement statement) {
  145.          checkConnection();
  146.          try {
  147.             statement.executeUpdate();
  148.          } catch (Exception e) {
  149.             e.printStackTrace();
  150.          } finally {
  151.             try {
  152.                statement.close();
  153.             } catch (Exception e) {
  154.                e.printStackTrace();
  155.             }
  156.          }
  157.       }
  158.      
  159.       public ResultSet query(String query) {
  160.          checkConnection();
  161.          try {
  162.             return query(conn.prepareStatement(query));
  163.          } catch (Exception e) {
  164.             e.printStackTrace();
  165.          }
  166.          return null;
  167.       }
  168.      
  169.       public ResultSet query(PreparedStatement statement) {
  170.          checkConnection();
  171.          try {
  172.             return statement.executeQuery();
  173.          } catch (Exception e) {
  174.             e.printStackTrace();
  175.          }
  176.          return null;
  177.       }
  178.      
  179.       public Connection getConnection() {
  180.          return this.conn;
  181.       }
  182.      
  183.       private void checkConnection() {
  184.          try {
  185.             if (this.conn == null || !this.conn.isValid(10) || this.conn.isClosed()) openConnection();
  186.          } catch (Exception e) {
  187.             e.printStackTrace();
  188.          }
  189.       }
  190.      
  191.       public Connection openConnection() throws Exception {
  192.          Class.forName("com.mysql.jdbc.Driver");
  193.          return this.conn = DriverManager.getConnection("jdbc:mysql://" + this.host + ":" + this.port + "/" + this.database, this.user, this.password);
  194.       }
  195.      
  196.       public void closeConnection() {
  197.          try {
  198.             this.conn.close();
  199.          } catch (SQLException e) {
  200.             e.printStackTrace();
  201.          } finally {
  202.             this.conn = null;
  203.          }
  204.       }
  205.    }
  206. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement