This commit is contained in:
Gabriele C 2015-09-07 14:05:50 +02:00
parent 7f9d641fe3
commit 84b5dcc625
3 changed files with 26 additions and 42 deletions

View File

@ -231,8 +231,9 @@ public class AuthMe extends JavaPlugin {
dataManager = new DataManager(this); dataManager = new DataManager(this);
// Setup API // Setup the new API
api = new NewAPI(this); api = new NewAPI(this);
// Old deprecated API
new API(this); new API(this);
// Setup Management // Setup Management

View File

@ -154,15 +154,9 @@ public class MySQL implements DataSource {
ConsoleLogger.info("Hikari ConnectionPool arguments reloaded!"); ConsoleLogger.info("Hikari ConnectionPool arguments reloaded!");
} }
private synchronized Connection getConnection() { private synchronized Connection getConnection() throws SQLException {
Connection con = null; Connection con = null;
while(con == null){ con = ds.getConnection();
try {
con = ds.getConnection();
} catch (SQLException ce) {
return null;
}
}
return con; return con;
} }

View File

@ -100,7 +100,7 @@ public class SQLite_HIKARI implements DataSource {
this.setupConnection(); this.setupConnection();
} catch (SQLException e) { } catch (SQLException e) {
ConsoleLogger.showError(e.getMessage()); ConsoleLogger.showError(e.getMessage());
ConsoleLogger.showError("Can't initialize the MySQL database... Please check your database settings in the config.yml file! SHUTDOWN..."); ConsoleLogger.showError("Can't initialize the SQLite database... Please check your database settings in the config.yml file! SHUTDOWN...");
ConsoleLogger.showError("If this error persists, please report it to the developer! SHUTDOWN..."); ConsoleLogger.showError("If this error persists, please report it to the developer! SHUTDOWN...");
this.close(); this.close();
if (Settings.isStopEnabled) { if (Settings.isStopEnabled) {
@ -133,30 +133,18 @@ public class SQLite_HIKARI implements DataSource {
ConsoleLogger.info("Connection arguments loaded, Hikari ConnectionPool ready!"); ConsoleLogger.info("Connection arguments loaded, Hikari ConnectionPool ready!");
} }
private synchronized Connection getRawConnection() { private synchronized void reloadArguments()
Connection con = null; throws ClassNotFoundException, IllegalArgumentException {
while(con == null){ if (ds != null){
try { ds.close();
con = ds.getConnection();
} catch (SQLException ce) {
return null;
}
} }
return con; setConnectionArguments();
ConsoleLogger.info("Hikari ConnectionPool arguments reloaded!");
} }
private synchronized Connection getConnection() { private synchronized Connection getConnection() throws SQLException {
Connection con; Connection con = null;
con = getRawConnection(); con = ds.getConnection();
if(con == null){
ds.close();
ConsoleLogger.showError("Database connection is LOST! SHUTDOWN...");
if (Settings.isStopEnabled) {
AuthMe.getInstance().getServer().shutdown();
} else {
AuthMe.getInstance().getServer().getPluginManager().disablePlugin(AuthMe.getInstance());
}
}
return con; return con;
} }
@ -165,17 +153,7 @@ public class SQLite_HIKARI implements DataSource {
Statement st = null; Statement st = null;
ResultSet rs = null; ResultSet rs = null;
try { try {
con = getRawConnection(); con = getConnection();
if(con == null){
ds.close();
if (Settings.isStopEnabled) {
ConsoleLogger.showError("Can't connect to the SQLite database... Please check your database settings in the config.yml file! SHUTDOWN...");
AuthMe.getInstance().getServer().shutdown();
} else {
AuthMe.getInstance().getServer().getPluginManager().disablePlugin(AuthMe.getInstance());
}
return;
}
st = con.createStatement(); st = con.createStatement();
st.executeUpdate("CREATE TABLE IF NOT EXISTS " + tableName + " (" + columnID + " INTEGER AUTO_INCREMENT," + columnName + " VARCHAR(255) NOT NULL UNIQUE," + columnPassword + " VARCHAR(255) NOT NULL," + columnIp + " VARCHAR(40) NOT NULL," + columnLastLogin + " BIGINT," + lastlocX + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocY + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocZ + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocWorld + " VARCHAR(255) NOT NULL DEFAULT '" + Settings.defaultWorld + "'," + columnEmail + " VARCHAR(255) DEFAULT 'your@email.com'," + "CONSTRAINT table_const_prim PRIMARY KEY (" + columnID + "));"); st.executeUpdate("CREATE TABLE IF NOT EXISTS " + tableName + " (" + columnID + " INTEGER AUTO_INCREMENT," + columnName + " VARCHAR(255) NOT NULL UNIQUE," + columnPassword + " VARCHAR(255) NOT NULL," + columnIp + " VARCHAR(40) NOT NULL," + columnLastLogin + " BIGINT," + lastlocX + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocY + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocZ + " DOUBLE NOT NULL DEFAULT '0.0'," + lastlocWorld + " VARCHAR(255) NOT NULL DEFAULT '" + Settings.defaultWorld + "'," + columnEmail + " VARCHAR(255) DEFAULT 'your@email.com'," + "CONSTRAINT table_const_prim PRIMARY KEY (" + columnID + "));");
rs = con.getMetaData().getColumns(null, null, tableName, columnPassword); rs = con.getMetaData().getColumns(null, null, tableName, columnPassword);
@ -807,6 +785,17 @@ public class SQLite_HIKARI implements DataSource {
@Override @Override
public void reload() { public void reload() {
try {
reloadArguments();
} catch (Exception e) {
ConsoleLogger.showError(e.getMessage());
ConsoleLogger.showError("Can't reconnect to SQLite database... Please check your SQLite informations ! SHUTDOWN...");
if (Settings.isStopEnabled) {
AuthMe.getInstance().getServer().shutdown();
}
if (!Settings.isStopEnabled)
AuthMe.getInstance().getServer().getPluginManager().disablePlugin(AuthMe.getInstance());
}
} }
@Override @Override