mirror of
https://github.com/PaperMC/Paper.git
synced 2024-08-26 22:50:23 +02:00
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 09f10fd9 SPIGOT-5950: Add PrepareSmithingEvent event CraftBukkit Changes:7c03d257
SPIGOT-6011: End Gateways do not work on Non-Main End Worldsd492e363
SPIGOT-6015: Small Armor Stand doesn't drop items5db13eea
SPIGOT-5950: Add PrepareSmithingEvent event
72 lines
2.5 KiB
Diff
72 lines
2.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Minecrell <minecrell@minecrell.net>
|
|
Date: Tue, 10 Oct 2017 18:44:42 +0200
|
|
Subject: [PATCH] Expose client protocol version and virtual host
|
|
|
|
Add a NetworkClient interface that provides access to:
|
|
- The socket address
|
|
- The protocol version
|
|
- The virtual host (the hostname/port the client used to connect
|
|
to the server)
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/network/NetworkClient.java b/src/main/java/com/destroystokyo/paper/network/NetworkClient.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..7b2af1bd72dfbcf4e962a982940fc49b851aa04f
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/network/NetworkClient.java
|
|
@@ -0,0 +1,41 @@
|
|
+package com.destroystokyo.paper.network;
|
|
+
|
|
+import java.net.InetSocketAddress;
|
|
+
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+import org.jetbrains.annotations.Nullable;
|
|
+
|
|
+/**
|
|
+ * Represents a client connected to the server.
|
|
+ */
|
|
+public interface NetworkClient {
|
|
+
|
|
+ /**
|
|
+ * Returns the socket address of the client.
|
|
+ *
|
|
+ * @return The client's socket address
|
|
+ */
|
|
+ @NotNull
|
|
+ InetSocketAddress getAddress();
|
|
+
|
|
+ /**
|
|
+ * Returns the protocol version of the client.
|
|
+ *
|
|
+ * @return The client's protocol version, or {@code -1} if unknown
|
|
+ * @see <a href="http://wiki.vg/Protocol_version_numbers">List of protocol
|
|
+ * version numbers</a>
|
|
+ */
|
|
+ int getProtocolVersion();
|
|
+
|
|
+ /**
|
|
+ * Returns the virtual host the client is connected to.
|
|
+ *
|
|
+ * <p>The virtual host refers to the hostname/port the client used to
|
|
+ * connect to the server.</p>
|
|
+ *
|
|
+ * @return The client's virtual host, or {@code null} if unknown
|
|
+ */
|
|
+ @Nullable
|
|
+ InetSocketAddress getVirtualHost();
|
|
+
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
|
index d3347e073cdc481f90de8076c5ee3986a4ae77aa..54a8965dd4b986657a57c7d150c4314a4acee68e 100644
|
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
|
@@ -30,7 +30,7 @@ import org.jetbrains.annotations.Nullable;
|
|
/**
|
|
* Represents a player, connected or not
|
|
*/
|
|
-public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginMessageRecipient {
|
|
+public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginMessageRecipient, com.destroystokyo.paper.network.NetworkClient { // Paper - Extend NetworkClient
|
|
|
|
/**
|
|
* Gets the "friendly" name to display of this player. This may include
|