Search in sources :

Example 6 with PartiesDao

use of com.alessiodp.parties.common.storage.sql.dao.parties.PartiesDao in project Parties by AlessioDP.

the class PartiesSQLDispatcher method getListParties.

@Override
public LinkedHashSet<PartyImpl> getListParties(PartiesDatabaseManager.ListOrder order, int limit, int offset) {
    LinkedHashSet<PartyImpl> ret;
    List<String> blacklist = ConfigParties.ADDITIONAL_LIST_HIDDENPARTIES;
    if (order == PartiesDatabaseManager.ListOrder.NAME)
        ret = this.connectionFactory.getJdbi().withHandle(handle -> handle.attach(partiesDao).getListByName(blacklist, limit, offset));
    else if (order == PartiesDatabaseManager.ListOrder.MEMBERS)
        ret = this.connectionFactory.getJdbi().withHandle(handle -> handle.attach(partiesDao).getListByMembers(blacklist, limit, offset));
    else if (order == PartiesDatabaseManager.ListOrder.KILLS)
        ret = this.connectionFactory.getJdbi().withHandle(handle -> handle.attach(partiesDao).getListByKills(blacklist, limit, offset));
    else if (order == PartiesDatabaseManager.ListOrder.EXPERIENCE)
        ret = this.connectionFactory.getJdbi().withHandle(handle -> handle.attach(partiesDao).getListByExperience(blacklist, limit, offset));
    else
        throw new IllegalStateException("Cannot get the list of parties with the order " + order.name());
    // Load members
    for (PartyImpl party : ret) {
        party.setAccessible(true);
        party.setMembers(this.connectionFactory.getJdbi().withHandle(handle -> handle.attach(playersDao).getInParty(party.getId().toString())));
        party.setAccessible(false);
    }
    return ret;
}
Also used : PartiesDao(com.alessiodp.parties.common.storage.sql.dao.parties.PartiesDao) PartyPlayerImpl(com.alessiodp.parties.common.players.objects.PartyPlayerImpl) HashMap(java.util.HashMap) MySQLConnectionFactory(com.alessiodp.core.common.storage.sql.connection.MySQLConnectionFactory) H2PlayersDao(com.alessiodp.parties.common.storage.sql.dao.players.H2PlayersDao) ConfigParties(com.alessiodp.parties.common.configuration.data.ConfigParties) TreeSet(java.util.TreeSet) PartyHomeImpl(com.alessiodp.parties.common.parties.objects.PartyHomeImpl) StorageType(com.alessiodp.core.common.storage.StorageType) ConfigMain(com.alessiodp.parties.common.configuration.data.ConfigMain) Handle(org.jdbi.v3.core.Handle) SQLDispatcher(com.alessiodp.core.common.storage.dispatchers.SQLDispatcher) PartiesDatabaseManager(com.alessiodp.parties.common.storage.PartiesDatabaseManager) LinkedList(java.util.LinkedList) ADPPlugin(com.alessiodp.core.common.ADPPlugin) LinkedHashSet(java.util.LinkedHashSet) H2PartiesDao(com.alessiodp.parties.common.storage.sql.dao.parties.H2PartiesDao) PostgreSQLConnectionFactory(com.alessiodp.core.common.storage.sql.connection.PostgreSQLConnectionFactory) PostgreSQLPlayersDao(com.alessiodp.parties.common.storage.sql.dao.players.PostgreSQLPlayersDao) SQLitePlayersDao(com.alessiodp.parties.common.storage.sql.dao.players.SQLitePlayersDao) H2ConnectionFactory(com.alessiodp.core.common.storage.sql.connection.H2ConnectionFactory) Set(java.util.Set) PostgreSQLPartiesDao(com.alessiodp.parties.common.storage.sql.dao.parties.PostgreSQLPartiesDao) UUID(java.util.UUID) ConnectionFactory(com.alessiodp.core.common.storage.sql.connection.ConnectionFactory) List(java.util.List) PartyImpl(com.alessiodp.parties.common.parties.objects.PartyImpl) SQLitePartiesDao(com.alessiodp.parties.common.storage.sql.dao.parties.SQLitePartiesDao) MariaDBConnectionFactory(com.alessiodp.core.common.storage.sql.connection.MariaDBConnectionFactory) IPartiesDatabase(com.alessiodp.parties.common.storage.interfaces.IPartiesDatabase) PartiesConstants(com.alessiodp.parties.common.configuration.PartiesConstants) PlayersDao(com.alessiodp.parties.common.storage.sql.dao.players.PlayersDao) SQLiteConnectionFactory(com.alessiodp.core.common.storage.sql.connection.SQLiteConnectionFactory) PartyImpl(com.alessiodp.parties.common.parties.objects.PartyImpl)

Aggregations

H2PartiesDao (com.alessiodp.parties.common.storage.sql.dao.parties.H2PartiesDao)6 PartiesDao (com.alessiodp.parties.common.storage.sql.dao.parties.PartiesDao)6 PostgreSQLPartiesDao (com.alessiodp.parties.common.storage.sql.dao.parties.PostgreSQLPartiesDao)6 SQLitePartiesDao (com.alessiodp.parties.common.storage.sql.dao.parties.SQLitePartiesDao)6 ADPPlugin (com.alessiodp.core.common.ADPPlugin)5 PartyImpl (com.alessiodp.parties.common.parties.objects.PartyImpl)5 PartyPlayerImpl (com.alessiodp.parties.common.players.objects.PartyPlayerImpl)5 H2PlayersDao (com.alessiodp.parties.common.storage.sql.dao.players.H2PlayersDao)5 PlayersDao (com.alessiodp.parties.common.storage.sql.dao.players.PlayersDao)5 PostgreSQLPlayersDao (com.alessiodp.parties.common.storage.sql.dao.players.PostgreSQLPlayersDao)5 SQLitePlayersDao (com.alessiodp.parties.common.storage.sql.dao.players.SQLitePlayersDao)5 StorageType (com.alessiodp.core.common.storage.StorageType)4 SQLDispatcher (com.alessiodp.core.common.storage.dispatchers.SQLDispatcher)4 ConnectionFactory (com.alessiodp.core.common.storage.sql.connection.ConnectionFactory)4 H2ConnectionFactory (com.alessiodp.core.common.storage.sql.connection.H2ConnectionFactory)4 MariaDBConnectionFactory (com.alessiodp.core.common.storage.sql.connection.MariaDBConnectionFactory)4 MySQLConnectionFactory (com.alessiodp.core.common.storage.sql.connection.MySQLConnectionFactory)4 PostgreSQLConnectionFactory (com.alessiodp.core.common.storage.sql.connection.PostgreSQLConnectionFactory)4 SQLiteConnectionFactory (com.alessiodp.core.common.storage.sql.connection.SQLiteConnectionFactory)4 PartiesConstants (com.alessiodp.parties.common.configuration.PartiesConstants)4