java.lang.Object
com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
com.bencodez.advancedcore.api.user.userstorage.mysql.MySQL

public class MySQL extends com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
  • Constructor Details

    • MySQL

      public MySQL(AdvancedCorePlugin plugin, String tableName, org.bukkit.configuration.ConfigurationSection section)
  • Method Details

    • getPrimaryKeyColumn

      public String getPrimaryKeyColumn()
      Specified by:
      getPrimaryKeyColumn in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • buildCreateTableSql

      public String buildCreateTableSql(com.bencodez.simpleapi.sql.mysql.DbType dbType)
      Specified by:
      buildCreateTableSql in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • logSevere

      public void logSevere(String msg)
      Specified by:
      logSevere in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • logInfo

      public void logInfo(String msg)
      Specified by:
      logInfo in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • debug

      public void debug(Throwable t)
      Specified by:
      debug in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • debug

      public void debug(String msg)
      Specified by:
      debug in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • isUseBatchUpdates

      public boolean isUseBatchUpdates()
    • loadData

      public void loadData()
    • clearCacheBasic

      public void clearCacheBasic()
    • containsKey

      public boolean containsKey(String uuid)
      Overrides:
      containsKey in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • containsKeyQuery

      public boolean containsKeyQuery(String uuid)
      Overrides:
      containsKeyQuery in class com.bencodez.simpleapi.sql.mysql.AbstractSqlTable
    • containsUUID

      public boolean containsUUID(String uuid)
    • forEachUser

      public void forEachUser(BiConsumer<UUID,ArrayList<com.bencodez.simpleapi.sql.Column>> perUser, Consumer<Integer> onFinished)
      Streams every user row from the table and calls the consumer for each UUID + column list. This avoids building a giant in-memory map like getAllQuery().
      Parameters:
      perUser - called for each row (uuid, columns)
      onFinished - called once at the end with the number of rows processed (even if 0)
    • getUuids

      public Set<String> getUuids()
    • getUuidsQuery

      public ArrayList<String> getUuidsQuery()
    • getNames

      public Set<String> getNames()
    • getNamesQuery

      public ArrayList<String> getNamesQuery()
    • getUUID

      public String getUUID(String playerName)
    • getNumbersInColumn

      public ArrayList<Integer> getNumbersInColumn(String column)
    • getRowsNameQuery

      public ArrayList<com.bencodez.simpleapi.sql.Column> getRowsNameQuery()
    • getRowsQuery

      public ArrayList<com.bencodez.simpleapi.sql.Column> getRowsQuery()
    • getRowsUUIDNameQuery

      public ConcurrentHashMap<UUID,String> getRowsUUIDNameQuery()
    • deletePlayer

      public void deletePlayer(String uuid)
    • executeQuery

      public void executeQuery(String str)
    • executeQueryReturn

      public void executeQueryReturn(String str)
    • getAllQuery

      public HashMap<UUID,ArrayList<com.bencodez.simpleapi.sql.Column>> getAllQuery()
    • getExact

      public ArrayList<com.bencodez.simpleapi.sql.Column> getExact(String uuid)
    • getExactQuery

      public ArrayList<com.bencodez.simpleapi.sql.Column> getExactQuery(com.bencodez.simpleapi.sql.Column column)
    • insert

      public void insert(String index, String column, com.bencodez.simpleapi.sql.data.DataValue value)
    • insertQuery

      public void insertQuery(String index, List<com.bencodez.simpleapi.sql.Column> cols)
    • update

      public void update(String index, List<com.bencodez.simpleapi.sql.Column> cols, boolean runAsync)
    • update

      public void update(String index, String column, com.bencodez.simpleapi.sql.data.DataValue value)
    • wipeColumnData

      public void wipeColumnData(String columnName, com.bencodez.simpleapi.sql.DataType dataType)