Skip to content

Commit 7181674

Browse files
ViaVersion update, platform implementation changes
VIAaaS command system had some big changes
1 parent fb94ebf commit 7181674

23 files changed

+170
-276
lines changed

build.gradle.kts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,11 @@ dependencies {
6868
implementation(kotlin("stdlib-jdk8"))
6969
implementation(kotlin("reflect"))
7070

71-
val vvVer = "5.7.0"
72-
val vbVer = "5.7.0"
73-
val vrVer = "4.0.13"
74-
val vafVer = "4.0.6"
75-
val vlVer = "3.0.12"
71+
val vvVer = "5.7.1"
72+
val vbVer = "5.7.1"
73+
val vrVer = "4.0.14"
74+
val vafVer = "4.0.8"
75+
val vlVer = "3.0.13"
7676
implementation("com.viaversion:viaversion-common:$vvVer") { isTransitive = false }
7777
implementation("com.viaversion:viabackwards-common:$vbVer") { isTransitive = false }
7878
implementation("com.viaversion:viarewind-common:$vrVer") { isTransitive = false }
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package com.viaversion.aas.command;
2+
3+
import com.google.common.collect.HashMultimap;
4+
import org.jspecify.annotations.Nullable;
5+
6+
import java.util.HashMap;
7+
import java.util.Set;
8+
9+
public class CommandManager {
10+
private final HashMap<String, Command> aliasToCommand = new HashMap<>();
11+
private final HashMultimap<Command, String> commandToAlias = HashMultimap.create();
12+
13+
{
14+
registerCommand(new HelpCommand(this), "help", "?");
15+
registerCommand(new EndCommand(), "end", "stop");
16+
registerCommand(new ReloadCommand(this), "reload");
17+
registerCommand(new ListCommand(), "list");
18+
registerCommand(new VersionCommand(), "version", "ver");
19+
}
20+
21+
public void registerCommand(Command cmd, String... aliases) {
22+
for (String alias : aliases) {
23+
aliasToCommand.put(alias, cmd);
24+
commandToAlias.put(cmd, alias);
25+
}
26+
}
27+
28+
@Nullable
29+
public Command getCommand(String name) {
30+
return aliasToCommand.get(name);
31+
}
32+
33+
public Set<Command> getCommands() {
34+
return Set.copyOf(commandToAlias.keySet());
35+
}
36+
37+
public Set<String> getCommandNames() {
38+
return Set.copyOf(aliasToCommand.keySet());
39+
}
40+
41+
public Set<String> getAliases(Command cmd) {
42+
return Set.copyOf(commandToAlias.get(cmd));
43+
}
44+
}

src/main/java/com/viaversion/aas/command/VersionCommand.java

Lines changed: 0 additions & 27 deletions
This file was deleted.

src/main/java/com/viaversion/aas/config/AspirinViaConfig.java

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,23 @@
11
package com.viaversion.aas.config;
22

3-
import com.viaversion.aas.platform.AspirinPlatform;
43
import com.viaversion.viaversion.configuration.AbstractViaConfig;
54

65
import java.io.File;
76
import java.util.ArrayList;
87
import java.util.List;
9-
import java.util.Map;
8+
import java.util.logging.Logger;
109

1110
public class AspirinViaConfig extends AbstractViaConfig {
12-
1311
protected final List<String> UNSUPPORTED = new ArrayList<>();
1412

15-
public AspirinViaConfig() {
16-
super(new File("config/viaversion.yml"), AspirinPlatform.INSTANCE.getLogger());
13+
public AspirinViaConfig(File file, Logger jLogger) {
14+
super(file, jLogger);
1715
UNSUPPORTED.addAll(BUKKIT_ONLY_OPTIONS);
1816
UNSUPPORTED.addAll(VELOCITY_ONLY_OPTIONS);
1917

2018
reload();
2119
}
2220

23-
@Override
24-
protected void handleConfig(Map<String, Object> config) {
25-
26-
}
27-
2821
@Override
2922
public List<String> getUnsupportedOptions() {
3023
return UNSUPPORTED;

src/main/java/com/viaversion/aas/platform/AspirinApi.java

Lines changed: 0 additions & 20 deletions
This file was deleted.
Lines changed: 2 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,8 @@
11
package com.viaversion.aas.platform;
22

3-
import com.viaversion.viaversion.api.platform.ViaInjector;
4-
import com.viaversion.viaversion.api.protocol.version.ProtocolVersion;
5-
import com.viaversion.viaversion.libs.fastutil.ints.IntLinkedOpenHashSet;
6-
import com.viaversion.viaversion.libs.fastutil.ints.IntSortedSet;
7-
import com.viaversion.viaversion.libs.fastutil.objects.ObjectLinkedOpenHashSet;
8-
import com.viaversion.viaversion.libs.gson.JsonObject;
9-
import it.unimi.dsi.fastutil.objects.ObjectSortedSet;
10-
11-
import java.util.SortedSet;
12-
13-
public class AspirinInjector implements ViaInjector {
14-
@Override
15-
public void inject() {
16-
}
17-
18-
@Override
19-
public void uninject() {
20-
}
21-
22-
@Override
23-
public ProtocolVersion getServerProtocolVersion() {
24-
return getServerProtocolVersions().first();
25-
}
3+
import com.viaversion.viaversion.platform.NoopInjector;
264

5+
public class AspirinInjector extends NoopInjector {
276
@Override
287
public String getEncoderName() {
298
return getDecoderName();
@@ -34,15 +13,4 @@ public String getDecoderName() {
3413
return "via-codec";
3514
}
3615

37-
@Override
38-
public JsonObject getDump() {
39-
return new JsonObject();
40-
}
41-
42-
@Override
43-
public SortedSet<ProtocolVersion> getServerProtocolVersions() {
44-
var versions = new ObjectLinkedOpenHashSet<ProtocolVersion>();
45-
versions.addAll(ProtocolVersion.getProtocols());
46-
return versions;
47-
}
4816
}

src/main/java/com/viaversion/aas/platform/AspirinLegacy.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@
77
import java.util.logging.Logger;
88

99
public class AspirinLegacy implements ViaLegacyPlatform {
10+
private final Logger logger = Logger.getLogger("ViaLegacy");
1011
@Override
1112
public Logger getLogger() {
12-
return Via.getPlatform().getLogger();
13+
return logger;
1314
}
1415

1516
@Override

src/main/java/com/viaversion/aas/platform/AspirinLoader.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ public void load() {
1616
Via.getManager().getProviders().use(CompressionProvider.class, new AspirinCompressionProvider());
1717

1818
//ViaBackwards
19-
Via.getManager().getProviders().use(TransferProvider.class, new AspirinTransferProvider());
19+
Via.getManager().getProviders().use(TransferProvider.class, TransferProvider.NOOP);
2020

2121
//ViaLegacy
2222
Via.getManager().getProviders().use(GameProfileFetcher.class, new AspirinProfileProvider());

src/main/java/com/viaversion/aas/provider/AspirinTransferProvider.java

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/main/kotlin/com/viaversion/aas/AspirinServer.kt

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ import io.netty.channel.WriteBufferWaterMark
3030
import io.netty.resolver.dns.DnsNameResolver
3131
import io.netty.resolver.dns.DnsNameResolverBuilder
3232
import io.netty.util.concurrent.Future
33+
import kotlinx.coroutines.CoroutineScope
34+
import kotlinx.coroutines.Job
35+
import kotlinx.coroutines.launch
3336
import java.io.File
3437
import java.lang.management.ManagementFactory
3538
import java.security.KeyPair
@@ -108,12 +111,10 @@ object AspirinServer {
108111
fun mainStartSignal() = initFuture.complete(Unit)
109112

110113
fun listenPorts(args: Array<String>) {
111-
viaaasLogger.info("Using transport type {}", NettyTransportTypes.getDefault())
112-
113114
val serverBootstrap = ServerBootstrap()
114115
.group(parentLoop, childLoop)
115116
.channelFactory(channelServerSocketFactory())
116-
.childHandler(FrontEndInit)
117+
.childHandler(FrontEndInit())
117118
.childOption(ChannelOption.WRITE_BUFFER_WATER_MARK, bufferWaterMark)
118119
.childOption(ChannelOption.IP_TOS, 0x18)
119120
.childOption(ChannelOption.TCP_NODELAY, true)
@@ -127,20 +128,30 @@ object AspirinServer {
127128
takeFrom(commandLineCfg.engineConfig)
128129
}.start(false)
129130

130-
viaaasLogger.info(
131-
"Using compression: {}, crypto: {}",
132-
Natives.compress.loadedVariant,
133-
Natives.cipher.loadedVariant
134-
)
135131
chFutures.forEach {
136132
viaaasLogger.info("Binded minecraft into {}", it.sync().channel().localAddress())
137133
}
134+
}
135+
136+
fun logNativesInfo() {
137+
viaaasLogger.info("Using transport: {}, compression: {}, crypto: {}",
138+
NettyTransportTypes.getDefault(),
139+
Natives.compress.loadedVariant,
140+
Natives.cipher.loadedVariant
141+
)
142+
}
143+
144+
fun logStartupSeconds() {
138145
viaaasLogger.info(
139146
"Application started in " + ManagementFactory.getRuntimeMXBean().uptime
140147
.milliseconds.toDouble(DurationUnit.SECONDS) + "s"
141148
)
142149
}
143150

151+
fun checkForUpdatesStart() {
152+
CoroutineScope(Job()).launch { viaaasLogger.info("{}", updaterCheckMessage()) }
153+
}
154+
144155
fun generateCert() {
145156
File("config/https.jks").apply {
146157
parentFile.mkdirs()

0 commit comments

Comments
 (0)