mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2024-09-18 09:41:02 +02:00
More smells:
- Fixed accidental breakage of a WorldTimes query Fixed Smells, Level Major (SonarCloud): - Use of keySet instead of entrySet in LargeStoreQueries - Unused variable in NicknameQueries now used - Unused fields removed from UsersTable - Unused fields removed from PlayerProcessors - Same variable name as field in WorldMap
This commit is contained in:
parent
4eb8c6476a
commit
32f3cae7c4
@ -60,9 +60,10 @@ public class LargeStoreQueries {
|
|||||||
@Override
|
@Override
|
||||||
public void prepare(PreparedStatement statement) throws SQLException {
|
public void prepare(PreparedStatement statement) throws SQLException {
|
||||||
// Every Server
|
// Every Server
|
||||||
for (UUID serverUUID : ofServers.keySet()) {
|
for (Map.Entry<UUID, Map<String, Integer>> serverEntry : ofServers.entrySet()) {
|
||||||
|
UUID serverUUID = serverEntry.getKey();
|
||||||
// Every Command
|
// Every Command
|
||||||
for (Map.Entry<String, Integer> entry : ofServers.get(serverUUID).entrySet()) {
|
for (Map.Entry<String, Integer> entry : serverEntry.getValue().entrySet()) {
|
||||||
String command = entry.getKey();
|
String command = entry.getKey();
|
||||||
int timesUsed = entry.getValue();
|
int timesUsed = entry.getValue();
|
||||||
|
|
||||||
@ -91,15 +92,16 @@ public class LargeStoreQueries {
|
|||||||
@Override
|
@Override
|
||||||
public void prepare(PreparedStatement statement) throws SQLException {
|
public void prepare(PreparedStatement statement) throws SQLException {
|
||||||
// Every User
|
// Every User
|
||||||
for (UUID uuid : ofUsers.keySet()) {
|
for (Map.Entry<UUID, List<GeoInfo>> playerEntry : ofUsers.entrySet()) {
|
||||||
|
UUID playerUUID = playerEntry.getKey();
|
||||||
// Every GeoInfo
|
// Every GeoInfo
|
||||||
for (GeoInfo info : ofUsers.get(uuid)) {
|
for (GeoInfo info : playerEntry.getValue()) {
|
||||||
String ip = info.getIp();
|
String ip = info.getIp();
|
||||||
String ipHash = info.getIpHash();
|
String ipHash = info.getIpHash();
|
||||||
String geoLocation = info.getGeolocation();
|
String geoLocation = info.getGeolocation();
|
||||||
long lastUsed = info.getDate();
|
long lastUsed = info.getDate();
|
||||||
|
|
||||||
statement.setString(1, uuid.toString());
|
statement.setString(1, playerUUID.toString());
|
||||||
statement.setString(2, ip);
|
statement.setString(2, ip);
|
||||||
statement.setString(3, ipHash);
|
statement.setString(3, ipHash);
|
||||||
statement.setString(4, geoLocation);
|
statement.setString(4, geoLocation);
|
||||||
@ -127,9 +129,10 @@ public class LargeStoreQueries {
|
|||||||
@Override
|
@Override
|
||||||
public void prepare(PreparedStatement statement) throws SQLException {
|
public void prepare(PreparedStatement statement) throws SQLException {
|
||||||
// Every Server
|
// Every Server
|
||||||
for (UUID serverUUID : ofServersAndUsers.keySet()) {
|
for (Map.Entry<UUID, Map<UUID, List<Nickname>>> serverEntry : ofServersAndUsers.entrySet()) {
|
||||||
|
UUID serverUUID = serverEntry.getKey();
|
||||||
// Every User
|
// Every User
|
||||||
for (Map.Entry<UUID, List<Nickname>> entry : ofServersAndUsers.get(serverUUID).entrySet()) {
|
for (Map.Entry<UUID, List<Nickname>> entry : serverEntry.getValue().entrySet()) {
|
||||||
UUID uuid = entry.getKey();
|
UUID uuid = entry.getKey();
|
||||||
// Every Nickname
|
// Every Nickname
|
||||||
List<Nickname> nicknames = entry.getValue();
|
List<Nickname> nicknames = entry.getValue();
|
||||||
|
@ -181,9 +181,15 @@ public class NicknameQueries {
|
|||||||
NicknamesTable.LAST_USED + ", " +
|
NicknamesTable.LAST_USED + ", " +
|
||||||
NicknamesTable.USER_UUID + ", " +
|
NicknamesTable.USER_UUID + ", " +
|
||||||
NicknamesTable.SERVER_UUID +
|
NicknamesTable.SERVER_UUID +
|
||||||
FROM + NicknamesTable.TABLE_NAME;
|
FROM + NicknamesTable.TABLE_NAME +
|
||||||
|
WHERE + NicknamesTable.SERVER_UUID + "=?";
|
||||||
|
|
||||||
|
return new QueryStatement<Map<UUID, List<Nickname>>>(sql, 5000) {
|
||||||
|
@Override
|
||||||
|
public void prepare(PreparedStatement statement) throws SQLException {
|
||||||
|
statement.setString(1, serverUUID.toString());
|
||||||
|
}
|
||||||
|
|
||||||
return new QueryAllStatement<Map<UUID, List<Nickname>>>(sql, 5000) {
|
|
||||||
@Override
|
@Override
|
||||||
public Map<UUID, List<Nickname>> processResults(ResultSet set) throws SQLException {
|
public Map<UUID, List<Nickname>> processResults(ResultSet set) throws SQLException {
|
||||||
Map<UUID, List<Nickname>> serverMap = new HashMap<>();
|
Map<UUID, List<Nickname>> serverMap = new HashMap<>();
|
||||||
|
@ -40,11 +40,12 @@ import static com.djrapitops.plan.db.sql.parsing.Sql.*;
|
|||||||
public class WorldTimesQueries {
|
public class WorldTimesQueries {
|
||||||
|
|
||||||
private static String worldColumn = "world";
|
private static String worldColumn = "world";
|
||||||
private static final String SELECT_WORLD_TIMES_STATEMENT_START = "SELECT " +
|
private static final String SELECT_WORLD_TIMES_STATEMENT_START = SELECT +
|
||||||
"SUM(" + WorldTimesTable.SURVIVAL + ") as survival, " +
|
"SUM(" + WorldTimesTable.SURVIVAL + ") as survival, " +
|
||||||
"SUM(" + WorldTimesTable.CREATIVE + ") as creative, " +
|
"SUM(" + WorldTimesTable.CREATIVE + ") as creative, " +
|
||||||
"SUM(" + WorldTimesTable.ADVENTURE + ") as adventure, " +
|
"SUM(" + WorldTimesTable.ADVENTURE + ") as adventure, " +
|
||||||
"SUM(" + WorldTimesTable.SPECTATOR + ") as spectator, " +
|
"SUM(" + WorldTimesTable.SPECTATOR + ") as spectator, " +
|
||||||
|
WorldTimesTable.SERVER_UUID + ", " +
|
||||||
WorldTable.TABLE_NAME + "." + WorldTable.NAME + " as " + worldColumn +
|
WorldTable.TABLE_NAME + "." + WorldTable.NAME + " as " + worldColumn +
|
||||||
FROM + WorldTimesTable.TABLE_NAME +
|
FROM + WorldTimesTable.TABLE_NAME +
|
||||||
" INNER JOIN " + WorldTable.TABLE_NAME + " on " + WorldTable.TABLE_NAME + "." + WorldTable.ID + "=" + WorldTimesTable.WORLD_ID;
|
" INNER JOIN " + WorldTable.TABLE_NAME + " on " + WorldTable.TABLE_NAME + "." + WorldTable.ID + "=" + WorldTimesTable.WORLD_ID;
|
||||||
|
@ -53,16 +53,8 @@ public class UsersTable extends Table {
|
|||||||
|
|
||||||
public UsersTable(SQLDB db) {
|
public UsersTable(SQLDB db) {
|
||||||
super(TABLE_NAME, db);
|
super(TABLE_NAME, db);
|
||||||
statementSelectID = "(" + Select.from(tableName, tableName + "." + ID).where(USER_UUID + "=?").toString() + " LIMIT 1)";
|
|
||||||
insertStatement = Insert.values(tableName,
|
|
||||||
USER_UUID,
|
|
||||||
REGISTERED,
|
|
||||||
USER_NAME);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public final String statementSelectID;
|
|
||||||
private String insertStatement;
|
|
||||||
|
|
||||||
public static String createTableSQL(DBType dbType) {
|
public static String createTableSQL(DBType dbType) {
|
||||||
return CreateTableParser.create(TABLE_NAME, dbType)
|
return CreateTableParser.create(TABLE_NAME, dbType)
|
||||||
.column(ID, Sql.INT).primaryKey()
|
.column(ID, Sql.INT).primaryKey()
|
||||||
|
@ -16,10 +16,8 @@
|
|||||||
*/
|
*/
|
||||||
package com.djrapitops.plan.system.processing.processors.player;
|
package com.djrapitops.plan.system.processing.processors.player;
|
||||||
|
|
||||||
import com.djrapitops.plan.system.cache.NicknameCache;
|
|
||||||
import com.djrapitops.plan.system.cache.SessionCache;
|
import com.djrapitops.plan.system.cache.SessionCache;
|
||||||
import com.djrapitops.plan.system.database.DBSystem;
|
import com.djrapitops.plan.system.database.DBSystem;
|
||||||
import com.djrapitops.plan.system.info.server.ServerInfo;
|
|
||||||
import dagger.Lazy;
|
import dagger.Lazy;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@ -35,22 +33,16 @@ import java.util.function.BooleanSupplier;
|
|||||||
@Singleton
|
@Singleton
|
||||||
public class PlayerProcessors {
|
public class PlayerProcessors {
|
||||||
|
|
||||||
private final Lazy<ServerInfo> serverInfo;
|
|
||||||
private final Lazy<DBSystem> dbSystem;
|
private final Lazy<DBSystem> dbSystem;
|
||||||
private final Lazy<SessionCache> sessionCache;
|
private final Lazy<SessionCache> sessionCache;
|
||||||
private final Lazy<NicknameCache> nicknameCache;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public PlayerProcessors(
|
public PlayerProcessors(
|
||||||
Lazy<ServerInfo> serverInfo,
|
|
||||||
Lazy<DBSystem> dbSystem,
|
Lazy<DBSystem> dbSystem,
|
||||||
Lazy<SessionCache> sessionCache,
|
Lazy<SessionCache> sessionCache
|
||||||
Lazy<NicknameCache> nicknameCache
|
|
||||||
) {
|
) {
|
||||||
this.serverInfo = serverInfo;
|
|
||||||
this.dbSystem = dbSystem;
|
this.dbSystem = dbSystem;
|
||||||
this.sessionCache = sessionCache;
|
this.sessionCache = sessionCache;
|
||||||
this.nicknameCache = nicknameCache;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public BanAndOpProcessor banAndOpProcessor(UUID uuid, BooleanSupplier banned, boolean op) {
|
public BanAndOpProcessor banAndOpProcessor(UUID uuid, BooleanSupplier banned, boolean op) {
|
||||||
|
@ -64,15 +64,15 @@ public class WorldMap implements HighChart {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private Map<String, Integer> toGeoCodeCounts(List<String> geoLocations) {
|
private Map<String, Integer> toGeoCodeCounts(List<String> geoLocations) {
|
||||||
Map<String, Integer> geoCodeCounts = new HashMap<>();
|
Map<String, Integer> codeCounts = new HashMap<>();
|
||||||
Map<String, String> geoCodes = getGeoCodes();
|
Map<String, String> geoCodes = getGeoCodes();
|
||||||
|
|
||||||
for (String geoLocation : geoLocations) {
|
for (String geoLocation : geoLocations) {
|
||||||
String countryCode = geoCodes.get(geoLocation.toLowerCase());
|
String countryCode = geoCodes.get(geoLocation.toLowerCase());
|
||||||
geoCodeCounts.put(countryCode, geoCodeCounts.getOrDefault(countryCode, 0) + 1);
|
codeCounts.put(countryCode, codeCounts.getOrDefault(countryCode, 0) + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
return geoCodeCounts;
|
return codeCounts;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
Reference in New Issue
Block a user