Add api to enable caching for TypeMapper #10
@ -24,6 +24,7 @@ import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.UtilityClass;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.function.Supplier;
|
||||
|
||||
@UtilityClass
|
||||
@ -36,12 +37,16 @@ public class TabCompletionCache {
|
||||
|
||||
void add(AbstractTypeMapper<?, ?> typeMapper, AbstractSWCommand.Cached cached) {
|
||||
if (cached != null) {
|
||||
TabCompletionCache.cached.add(typeMapper);
|
||||
if (cached.global()) TabCompletionCache.global.add(typeMapper);
|
||||
TabCompletionCache.cacheDuration.put(typeMapper, cached.timeUnit().toMillis(cached.cacheDuration()));
|
||||
add(typeMapper, cached.global(), cached.cacheDuration(), cached.timeUnit());
|
||||
}
|
||||
}
|
||||
|
||||
public void add(AbstractTypeMapper<?, ?> typeMapper, boolean global, long cacheDuration, TimeUnit timeUnit) {
|
||||
TabCompletionCache.cached.add(typeMapper);
|
||||
if (global) TabCompletionCache.global.add(typeMapper);
|
||||
TabCompletionCache.cacheDuration.put(typeMapper, timeUnit.toMillis(cacheDuration));
|
||||
}
|
||||
|
||||
@EqualsAndHashCode
|
||||
@AllArgsConstructor
|
||||
private static class Key {
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren