Skip to content

Commit fbad73b

Browse files
committed
First loading part
1 parent 3fd53c3 commit fbad73b

File tree

2 files changed

+73
-1
lines changed

2 files changed

+73
-1
lines changed

bungeecord/src/main/java/it/renvins/serverpulse/bungeecord/ServerPulseBungeeCord.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,15 @@
44

55
public class ServerPulseBungeeCord extends Plugin {
66

7+
private final ServerPulseBungeeCordLoader loader = new ServerPulseBungeeCordLoader(this);
8+
79
@Override
810
public void onEnable() {
9-
11+
loader.load();
1012
}
1113

1214
@Override
1315
public void onDisable() {
16+
loader.unload();
1417
}
1518
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package it.renvins.serverpulse.bungeecord;
2+
3+
import it.renvins.serverpulse.api.metrics.IDiskRetriever;
4+
import it.renvins.serverpulse.api.metrics.IPingRetriever;
5+
import it.renvins.serverpulse.api.service.IDatabaseService;
6+
import it.renvins.serverpulse.api.service.IMetricsService;
7+
import it.renvins.serverpulse.api.service.Service;
8+
import it.renvins.serverpulse.bungeecord.config.BungeeCordConfiguration;
9+
import it.renvins.serverpulse.bungeecord.config.BungeeCordDatabaseConfiguration;
10+
import it.renvins.serverpulse.bungeecord.config.BungeeCordMetricsConfiguration;
11+
import it.renvins.serverpulse.bungeecord.logger.BungeeCordLogger;
12+
import it.renvins.serverpulse.bungeecord.metrics.BungeeCordPingRetriever;
13+
import it.renvins.serverpulse.bungeecord.platform.BungeeCordPlatform;
14+
import it.renvins.serverpulse.bungeecord.scheduler.BungeeCordTaskScheduler;
15+
import it.renvins.serverpulse.common.DatabaseService;
16+
import it.renvins.serverpulse.common.MetricsService;
17+
import it.renvins.serverpulse.common.config.DatabaseConfiguration;
18+
import it.renvins.serverpulse.common.config.MetricsConfiguration;
19+
import it.renvins.serverpulse.common.logger.PulseLogger;
20+
import it.renvins.serverpulse.common.metrics.DiskRetriever;
21+
import it.renvins.serverpulse.common.platform.Platform;
22+
import it.renvins.serverpulse.common.scheduler.TaskScheduler;
23+
24+
import java.util.logging.Logger;
25+
26+
public class ServerPulseBungeeCordLoader implements Service {
27+
28+
private final ServerPulseBungeeCord plugin;
29+
30+
private final BungeeCordConfiguration config;
31+
private final Platform platform;
32+
33+
private final IDatabaseService databaseService;
34+
private final IMetricsService metricsService;
35+
36+
private final IDiskRetriever diskRetriever;
37+
private final IPingRetriever pingRetriever;
38+
39+
public ServerPulseBungeeCordLoader(ServerPulseBungeeCord plugin) {
40+
this.plugin = plugin;
41+
42+
this.config = new BungeeCordConfiguration(plugin, "config.yml");
43+
this.platform = new BungeeCordPlatform(plugin);
44+
45+
PulseLogger pulseLogger = new BungeeCordLogger(plugin);
46+
TaskScheduler scheduler = new BungeeCordTaskScheduler(plugin);
47+
48+
DatabaseConfiguration dbConfig = new BungeeCordDatabaseConfiguration(config);
49+
MetricsConfiguration metricsConfig = new BungeeCordMetricsConfiguration(config);
50+
51+
this.databaseService = new DatabaseService(pulseLogger, platform, dbConfig, scheduler);
52+
this.metricsService = new MetricsService(pulseLogger, platform, metricsConfig, scheduler);
53+
54+
this.diskRetriever = new DiskRetriever(plugin.getDataFolder());
55+
this.pingRetriever =new BungeeCordPingRetriever(plugin);
56+
57+
58+
}
59+
60+
@Override
61+
public void load() {
62+
63+
}
64+
65+
@Override
66+
public void unload() {
67+
Service.super.unload();
68+
}
69+
}

0 commit comments

Comments
 (0)