Advertisement
Guest User

Untitled

a guest
Aug 22nd, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.53 KB | None | 0 0
  1. package play.elygames.fr;
  2.  
  3. import java.io.PrintStream;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.PreparedStatement;
  7. import java.sql.ResultSet;
  8. import java.sql.SQLException;
  9. import java.util.UUID;
  10. import org.bukkit.entity.Player;
  11. import play.elygames.fr.ranks.RanksManager;
  12.  
  13. public class SQLConnection
  14. {
  15. private Connection connection;
  16. private String urlbase;
  17. private String host;
  18. private String database;
  19. private String user;
  20. private String pass;
  21.  
  22. public SQLConnection(String urlbase, String host, String database, String user, String pass)
  23. {
  24. this.urlbase = urlbase;
  25. this.host = host;
  26. this.database = database;
  27. this.user = user;
  28. this.pass = pass;
  29. }
  30.  
  31. public boolean isConnected()
  32. {
  33. return this.connection != null;
  34. }
  35.  
  36. public void connection()
  37. {
  38. if (!isConnected()) {
  39. try
  40. {
  41. this.connection = DriverManager.getConnection(this.urlbase + this.host + "/" + this.database, this.user, this.pass);
  42. System.out.println("connection reussite !");
  43. }
  44. catch (SQLException e)
  45. {
  46. e.printStackTrace();
  47. }
  48. }
  49. }
  50.  
  51. public void disconnect()
  52. {
  53. if (isConnected()) {
  54. try
  55. {
  56. this.connection.close();
  57. System.out.println("connection impossible");
  58. }
  59. catch (SQLException e)
  60. {
  61. e.printStackTrace();
  62. }
  63. }
  64. }
  65.  
  66. public boolean hasAccount(Player player)
  67. {
  68. connection();
  69. try
  70. {
  71. PreparedStatement q = this.connection.prepareStatement("SELECT uuid FROM players WHERE uuid = ?");
  72. q.setString(1, player.getUniqueId().toString());
  73. ResultSet resultat = q.executeQuery();
  74. boolean hasAccount = resultat.next();
  75. q.close();
  76. return hasAccount;
  77. }
  78. catch (SQLException e)
  79. {
  80. e.printStackTrace();
  81. }
  82. return false;
  83. }
  84.  
  85. public void createAccount(Player player)
  86. {
  87. connection();
  88. if (!hasAccount(player)) {
  89. try
  90. {
  91. PreparedStatement q = this.connection.prepareStatement("INSERT INTO players(uuid,ranks) VALUES (?,?)");
  92. q.setString(1, player.getUniqueId().toString());
  93. q.setInt(2, RanksManager.Default.getPower().intValue());
  94. q.execute();
  95. q.close();
  96. }
  97. catch (SQLException e)
  98. {
  99. e.printStackTrace();
  100. }
  101. }
  102. }
  103.  
  104. public void setRank(Player player, RanksManager rank)
  105. {
  106. connection();
  107. if (hasAccount(player)) {
  108. try
  109. {
  110. PreparedStatement rs = this.connection.prepareStatement("UPDATE players SET ranks = ? WHERE uuid = ?");
  111. rs.setInt(1, rank.getPower().intValue());
  112. rs.setString(2, player.getUniqueId().toString());
  113. rs.executeUpdate();
  114. rs.close();
  115. }
  116. catch (SQLException e)
  117. {
  118. e.printStackTrace();
  119. }
  120. }
  121. }
  122.  
  123. public RanksManager getRank(Player player)
  124. {
  125. connection();
  126. if (hasAccount(player)) {
  127. try
  128. {
  129. PreparedStatement q = this.connection.prepareStatement("SELECT ranks FROM players WHERE uuid = ?");
  130. q.setString(1, player.getUniqueId().toString());
  131.  
  132. int power = 0;
  133. ResultSet rs = q.executeQuery();
  134. while (rs.next()) {
  135. power = rs.getInt("ranks");
  136. }
  137. q.close();
  138. return RanksManager.PowerToRanks(power);
  139. }
  140. catch (SQLException e)
  141. {
  142. e.printStackTrace();
  143. }
  144. }
  145. return RanksManager.Default;
  146. }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement