Implementing database and allowlist system

This commit is contained in:
Dawson Hessler
2021-06-18 16:37:09 -04:00
parent 09482b970b
commit 0a7c2c0207
19 changed files with 796 additions and 26 deletions
@@ -0,0 +1,28 @@
package dev.brighten.antivpn.database;
import dev.brighten.antivpn.utils.VPNResponse;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import java.util.function.Consumer;
public interface VPNDatabase {
Optional<VPNResponse> getStoredResponse(String ip);
void cacheResponse(VPNResponse toCache);
boolean isWhitelisted(UUID uuid);
void setWhitelisted(UUID uuid, boolean whitelisted);
List<UUID> getAllWhitelisted();
void getStoredResponseAsync(String ip, Consumer<Optional<VPNResponse>> result);
void isWhitelistedAsync(UUID uuid, Consumer<Boolean> result);
void init();
void shutdown();
}