Merge branch 'dev/1.1.0' into dev/2.0.0

# Conflicts:
#	api/build.gradle
#	api/src/main/java/com/velocitypowered/api/proxy/connection/Player.java
#	api/src/main/java/com/velocitypowered/api/proxy/player/TabList.java
#	build.gradle
#	proxy/build.gradle
#	proxy/src/main/java/com/velocitypowered/proxy/Velocity.java
#	proxy/src/main/java/com/velocitypowered/proxy/command/CommandNodeFactory.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BackendPlaySessionHandler.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/backend/BungeeCordMessageResponder.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/backend/VelocityServerConnection.java
#	proxy/src/main/java/com/velocitypowered/proxy/connection/client/ConnectedPlayer.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundAvailableCommandsPacket.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundJoinGamePacket.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/packet/clientbound/ClientboundRespawnPacket.java
#	proxy/src/main/java/com/velocitypowered/proxy/network/pipeline/MinecraftDecoder.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/MinecraftPacket.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/EncryptionResponse.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/HeaderAndFooter.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/LoginPluginMessage.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/PluginMessage.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/ServerLogin.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusPing.java
#	proxy/src/main/java/com/velocitypowered/proxy/protocol/packet/StatusRequest.java
#	proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabList.java
#	proxy/src/main/java/com/velocitypowered/proxy/tablist/VelocityTabListLegacy.java
#	proxy/src/test/java/com/velocitypowered/proxy/command/CommandManagerTests.java
This commit is contained in:
Andrew Steinborn
2021-02-21 17:56:40 -05:00
36 changed files with 870 additions and 874 deletions

View File

@@ -81,9 +81,18 @@ javadoc {
// Disable the crazy super-strict doclint tool in Java 8
options.addStringOption('Xdoclint:none', '-quiet')
// Mark sources as Java 8 source compatible
options.source = '8'
// Remove 'undefined' from seach paths when generating javadoc for a non-modular project (JDK-8215291)
if (JavaVersion.current() >= JavaVersion.VERSION_1_9 && JavaVersion.current() < JavaVersion.VERSION_12) {
options.addBooleanOption('-no-module-directories', true)
}
}
test {
useJUnitPlatform()
}
test {

View File

@@ -0,0 +1,38 @@
package com.velocitypowered.api.event.player;
import com.google.common.base.Preconditions;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.messages.ChannelIdentifier;
import java.util.List;
/**
* This event is fired when a client ({@link Player}) sends a plugin message through the
* register channel.
*/
public final class PlayerChannelRegisterEvent {
private final Player player;
private final List<ChannelIdentifier> channels;
public PlayerChannelRegisterEvent(Player player, List<ChannelIdentifier> channels) {
this.player = Preconditions.checkNotNull(player, "player");
this.channels = Preconditions.checkNotNull(channels, "channels");
}
public Player getPlayer() {
return player;
}
public List<ChannelIdentifier> getChannels() {
return channels;
}
@Override
public String toString() {
return "PlayerChannelRegisterEvent{"
+ "player=" + player
+ ", channels=" + channels
+ '}';
}
}

View File

@@ -12,7 +12,7 @@ import org.checkerframework.checker.nullness.qual.Nullable;
*/
public final class MinecraftChannelIdentifier implements ChannelIdentifier {
private static final Pattern VALID_IDENTIFIER_REGEX = Pattern.compile("[a-z0-9\\-_]*");
private static final Pattern VALID_IDENTIFIER_REGEX = Pattern.compile("[a-z0-9/\\-_]*");
private final String namespace;
private final String name;

View File

@@ -227,6 +227,11 @@ public final class ServerPing {
return this;
}
public Builder clearFavicon() {
this.favicon = null;
return this;
}
/**
* Uses the information from this builder to create a new {@link ServerPing} instance. The
* builder can be re-used after this event has been called.

View File

@@ -35,6 +35,11 @@ class MinecraftChannelIdentifierTest {
assertEquals(expected, MinecraftChannelIdentifier.from("velocity:test"));
}
@Test
void createAllowsSlashes() {
create("velocity", "test/test2");
}
@Test
void fromIdentifierThrowsOnBadValues() {
assertAll(