Class MySQLDatabaseProvider
- java.lang.Object
-
- de.dytanic.cloudnet.database.AbstractDatabaseProvider
-
- de.dytanic.cloudnet.database.sql.SQLDatabaseProvider
-
- de.dytanic.cloudnet.ext.database.mysql.MySQLDatabaseProvider
-
- All Implemented Interfaces:
de.dytanic.cloudnet.common.INameable,java.lang.AutoCloseable
public final class MySQLDatabaseProvider extends de.dytanic.cloudnet.database.sql.SQLDatabaseProvider
-
-
Field Summary
Fields Modifier and Type Field Description protected de.dytanic.cloudnet.common.collection.NetorHashMap<java.lang.String,java.lang.Long,MySQLDatabase>cachedDatabaseInstancesprotected com.zaxxer.hikari.HikariDataSourcehikariDataSource
-
Constructor Summary
Constructors Constructor Description MySQLDatabaseProvider(de.dytanic.cloudnet.common.document.gson.JsonDocument config, java.util.concurrent.ExecutorService executorService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()booleancontainsDatabase(java.lang.String name)booleandeleteDatabase(java.lang.String name)<T> TexecuteQuery(java.lang.String query, de.dytanic.cloudnet.common.concurrent.IThrowableCallback<java.sql.ResultSet,T> callback, java.lang.Object... objects)intexecuteUpdate(java.lang.String query, java.lang.Object... objects)java.util.List<MySQLConnectionEndpoint>getAddresses()de.dytanic.cloudnet.common.collection.NetorHashMap<java.lang.String,java.lang.Long,MySQLDatabase>getCachedDatabaseInstances()de.dytanic.cloudnet.common.document.gson.JsonDocumentgetConfig()java.sql.ConnectiongetConnection()de.dytanic.cloudnet.database.IDatabasegetDatabase(java.lang.String name)java.util.Collection<java.lang.String>getDatabaseNames()com.zaxxer.hikari.HikariDataSourcegetHikariDataSource()java.lang.StringgetName()booleaninit()
-
-
-
Field Detail
-
cachedDatabaseInstances
protected final de.dytanic.cloudnet.common.collection.NetorHashMap<java.lang.String,java.lang.Long,MySQLDatabase> cachedDatabaseInstances
-
hikariDataSource
protected final com.zaxxer.hikari.HikariDataSource hikariDataSource
-
-
Method Detail
-
init
public boolean init()
- Specified by:
initin classde.dytanic.cloudnet.database.AbstractDatabaseProvider
-
getDatabase
public de.dytanic.cloudnet.database.IDatabase getDatabase(java.lang.String name)
- Specified by:
getDatabasein classde.dytanic.cloudnet.database.AbstractDatabaseProvider
-
containsDatabase
public boolean containsDatabase(java.lang.String name)
- Specified by:
containsDatabasein classde.dytanic.cloudnet.database.AbstractDatabaseProvider
-
deleteDatabase
public boolean deleteDatabase(java.lang.String name)
- Specified by:
deleteDatabasein classde.dytanic.cloudnet.database.AbstractDatabaseProvider
-
getDatabaseNames
public java.util.Collection<java.lang.String> getDatabaseNames()
- Specified by:
getDatabaseNamesin classde.dytanic.cloudnet.database.AbstractDatabaseProvider
-
getName
public java.lang.String getName()
-
close
public void close() throws java.lang.Exception- Specified by:
closein interfacejava.lang.AutoCloseable- Overrides:
closein classde.dytanic.cloudnet.database.sql.SQLDatabaseProvider- Throws:
java.lang.Exception
-
getConnection
public java.sql.Connection getConnection() throws java.sql.SQLException- Specified by:
getConnectionin classde.dytanic.cloudnet.database.sql.SQLDatabaseProvider- Throws:
java.sql.SQLException
-
getCachedDatabaseInstances
public de.dytanic.cloudnet.common.collection.NetorHashMap<java.lang.String,java.lang.Long,MySQLDatabase> getCachedDatabaseInstances()
-
getHikariDataSource
public com.zaxxer.hikari.HikariDataSource getHikariDataSource()
-
getConfig
public de.dytanic.cloudnet.common.document.gson.JsonDocument getConfig()
-
getAddresses
public java.util.List<MySQLConnectionEndpoint> getAddresses()
-
executeUpdate
public int executeUpdate(java.lang.String query, java.lang.Object... objects)- Specified by:
executeUpdatein classde.dytanic.cloudnet.database.sql.SQLDatabaseProvider
-
executeQuery
public <T> T executeQuery(java.lang.String query, de.dytanic.cloudnet.common.concurrent.IThrowableCallback<java.sql.ResultSet,T> callback, java.lang.Object... objects)- Specified by:
executeQueryin classde.dytanic.cloudnet.database.sql.SQLDatabaseProvider
-
-