mirror of
https://github.com/AuthMe/AuthMeReloaded.git
synced 2025-02-01 04:21:41 +01:00
- Removed executor service and all uses from CachedDataSource.
This commit is contained in:
parent
ef89ab02b4
commit
190b4c2c2e
@ -6,15 +6,12 @@ import com.google.common.cache.CacheLoader;
|
|||||||
import com.google.common.cache.LoadingCache;
|
import com.google.common.cache.LoadingCache;
|
||||||
import com.google.common.cache.RemovalListener;
|
import com.google.common.cache.RemovalListener;
|
||||||
import com.google.common.cache.RemovalNotification;
|
import com.google.common.cache.RemovalNotification;
|
||||||
import fr.xephi.authme.ConsoleLogger;
|
|
||||||
import fr.xephi.authme.cache.auth.PlayerAuth;
|
import fr.xephi.authme.cache.auth.PlayerAuth;
|
||||||
import fr.xephi.authme.cache.auth.PlayerCache;
|
import fr.xephi.authme.cache.auth.PlayerCache;
|
||||||
import fr.xephi.authme.security.crypts.HashedPassword;
|
import fr.xephi.authme.security.crypts.HashedPassword;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.ExecutorService;
|
|
||||||
import java.util.concurrent.Executors;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -22,7 +19,6 @@ import java.util.concurrent.TimeUnit;
|
|||||||
public class CacheDataSource implements DataSource {
|
public class CacheDataSource implements DataSource {
|
||||||
|
|
||||||
private final DataSource source;
|
private final DataSource source;
|
||||||
private final ExecutorService exec;
|
|
||||||
private final LoadingCache<String, Optional<PlayerAuth>> cachedAuths;
|
private final LoadingCache<String, Optional<PlayerAuth>> cachedAuths;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -32,7 +28,6 @@ public class CacheDataSource implements DataSource {
|
|||||||
*/
|
*/
|
||||||
public CacheDataSource(DataSource src) {
|
public CacheDataSource(DataSource src) {
|
||||||
this.source = src;
|
this.source = src;
|
||||||
this.exec = Executors.newCachedThreadPool();
|
|
||||||
this.cachedAuths = CacheBuilder.newBuilder()
|
this.cachedAuths = CacheBuilder.newBuilder()
|
||||||
.expireAfterWrite(8, TimeUnit.MINUTES)
|
.expireAfterWrite(8, TimeUnit.MINUTES)
|
||||||
.removalListener(new RemovalListener<String, Optional<PlayerAuth>>() {
|
.removalListener(new RemovalListener<String, Optional<PlayerAuth>>() {
|
||||||
@ -167,25 +162,14 @@ public class CacheDataSource implements DataSource {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void close() {
|
public synchronized void close() {
|
||||||
try {
|
|
||||||
exec.shutdown();
|
|
||||||
exec.awaitTermination(8, TimeUnit.SECONDS);
|
|
||||||
} catch (InterruptedException e) {
|
|
||||||
ConsoleLogger.writeStackTrace("Error while closing CacheDataSource.", e);
|
|
||||||
}
|
|
||||||
source.close();
|
source.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void reload() { // unused method
|
public void reload() { // unused method
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.reload();
|
source.reload();
|
||||||
cachedAuths.invalidateAll();
|
cachedAuths.invalidateAll();
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized boolean updateEmail(final PlayerAuth auth) {
|
public synchronized boolean updateEmail(final PlayerAuth auth) {
|
||||||
@ -213,14 +197,9 @@ public class CacheDataSource implements DataSource {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized void purgeBanned(final List<String> banned) {
|
public synchronized void purgeBanned(final List<String> banned) {
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.purgeBanned(banned);
|
source.purgeBanned(banned);
|
||||||
cachedAuths.invalidateAll(banned);
|
cachedAuths.invalidateAll(banned);
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DataSourceType getType() {
|
public DataSourceType getType() {
|
||||||
@ -234,34 +213,19 @@ public class CacheDataSource implements DataSource {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setLogged(final String user) {
|
public void setLogged(final String user) {
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.setLogged(user.toLowerCase());
|
source.setLogged(user.toLowerCase());
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setUnlogged(final String user) {
|
public void setUnlogged(final String user) {
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.setUnlogged(user.toLowerCase());
|
source.setUnlogged(user.toLowerCase());
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void purgeLogged() {
|
public void purgeLogged() {
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.purgeLogged();
|
source.purgeLogged();
|
||||||
cachedAuths.invalidateAll();
|
cachedAuths.invalidateAll();
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAccountsRegistered() {
|
public int getAccountsRegistered() {
|
||||||
@ -269,15 +233,10 @@ public class CacheDataSource implements DataSource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateName(final String oldOne, final String newOne) {
|
public void updateName(final String oldOne, final String newOne) { // unused method
|
||||||
exec.execute(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
source.updateName(oldOne, newOne);
|
source.updateName(oldOne, newOne);
|
||||||
cachedAuths.invalidate(oldOne);
|
cachedAuths.invalidate(oldOne);
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<PlayerAuth> getAllAuths() {
|
public List<PlayerAuth> getAllAuths() {
|
||||||
|
Loading…
Reference in New Issue
Block a user