Plex/src/main/java/me/totalfreedom/plex/Plex.java

71 lines
1.7 KiB
Java
Raw Normal View History

2020-10-26 03:55:49 +00:00
package me.totalfreedom.plex;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
import me.totalfreedom.plex.cache.MongoPlayerData;
import me.totalfreedom.plex.cache.SQLPlayerData;
import me.totalfreedom.plex.config.Config;
import me.totalfreedom.plex.config.YamlConfig;
import me.totalfreedom.plex.listeners.PlayerListener;
import me.totalfreedom.plex.storage.MongoConnection;
import me.totalfreedom.plex.storage.SQLConnection;
import me.totalfreedom.plex.storage.StorageType;
import me.totalfreedom.plex.util.PlexLog;
import me.totalfreedom.plex.util.PlexUtils;
2020-10-26 03:55:49 +00:00
import org.bukkit.plugin.java.JavaPlugin;
@Getter
@Setter
2020-10-26 03:55:49 +00:00
public class Plex extends JavaPlugin
{
@Setter(AccessLevel.NONE)
private static Plex plugin;
private StorageType storageType = StorageType.SQLITE;
private SQLConnection sqlConnection;
private MongoConnection mongoConnection;
private MongoPlayerData mongoPlayerData;
private SQLPlayerData sqlPlayerData;
2020-10-26 03:55:49 +00:00
@Override
public void onLoad()
{
plugin = this;
getConfig().options().copyDefaults(true);
saveConfig();
saveResource("database.db", false);
sqlConnection = new SQLConnection();
mongoConnection = new MongoConnection();
2020-10-26 03:55:49 +00:00
}
@Override
public void onEnable()
{
PlexUtils.testConnections();
if (storageType == StorageType.MONGO)
{
mongoPlayerData = new MongoPlayerData();
} else {
sqlPlayerData = new SQLPlayerData();
}
getServer().getPluginManager().registerEvents(new PlayerListener(), this);
PlexLog.log(storageType.name());
2020-10-26 03:55:49 +00:00
}
@Override
public void onDisable()
{
}
public static Plex get() {
return plugin;
}
2020-10-26 03:55:49 +00:00
}