Refactor proxy vote caching: remove VoteCache class

This commit is contained in:
BenCodez committed 2025-09-11 17:45:16 -06:00
1 parent 3e277a4a76
commit 9f6edca531
3 files changed
+15 -16

No files matched your search

@@ -340,7 +340,7 @@ public abstract class VotingPluginProxy {
delay++;
num++;
}
getVoteCacheHandler().getCachedOnlineVotes().put(uuid, new ArrayList<>());
getVoteCacheHandler().removeUserCachedOnlineVotes(uuid);
if (getConfig().getMultiProxySupport() && getConfig().getMultiProxyOneGlobalReward()) {
multiProxyHandler.sendMultiProxyServerMessage("ClearVote", player, uuid);
}
@@ -1,8 +0,0 @@
package com.bencodez.votingplugin.proxy.cache;
import com.bencodez.votingplugin.proxy.OfflineBungeeVote;
public class VoteCache {
OfflineBungeeVote vote;
}
@@ -31,6 +31,10 @@ public abstract class VoteCacheHandler {
// server based
private ConcurrentHashMap<String, ArrayList<OfflineBungeeVote>> cachedVotes = new ConcurrentHashMap<>();
public void removeUserCachedOnlineVotes(String uuid) {
cachedOnlineVotes.remove(uuid);
}
public void resetMilestoneCountInVotes() {
// Iterate through cached online votes
for (Map.Entry<String, ArrayList<OfflineBungeeVote>> entry : cachedOnlineVotes.entrySet()) {
@@ -61,16 +65,19 @@ public abstract class VoteCacheHandler {
if (useMySQL) {
for (Entry<String, ArrayList<OfflineBungeeVote>> entry : getCachedVotes().entrySet()) {
String server = entry.getKey();
for (OfflineBungeeVote voteData : entry.getValue()) {
voteCacheTable.insertVote(voteData.getUuid(), voteData.getPlayerName(), voteData.getService(),
voteData.getTime(), voteData.isRealVote(), voteData.getText(), server);
if (!entry.getValue().isEmpty()) {
for (OfflineBungeeVote voteData : entry.getValue()) {
voteCacheTable.insertVote(voteData.getUuid(), voteData.getPlayerName(), voteData.getService(),
voteData.getTime(), voteData.isRealVote(), voteData.getText(), server);
}
}
}
for (Entry<String, ArrayList<OfflineBungeeVote>> entry : getCachedOnlineVotes().entrySet()) {
for (OfflineBungeeVote voteData : entry.getValue()) {
onlineVoteCacheTable.insertOnlineVote(voteData.getUuid(), voteData.getPlayerName(),
voteData.getService(), voteData.getTime(), voteData.isRealVote(), voteData.getText());
if (!entry.getValue().isEmpty()) {
for (OfflineBungeeVote voteData : entry.getValue()) {
onlineVoteCacheTable.insertOnlineVote(voteData.getUuid(), voteData.getPlayerName(),
voteData.getService(), voteData.getTime(), voteData.isRealVote(), voteData.getText());
}
}
}