@@ -105,6 +105,42 @@ index 0000000000000000000000000000000000000000..30e62719e0a83525daa33cf41cb61df3
105
105
+ }
106
106
+ }
107
107
+ }
108
+ diff --git a/src/main/java/io/papermc/paper/network/ConnectionEvent.java b/src/main/java/io/papermc/paper/network/ConnectionEvent.java
109
+ new file mode 100644
110
+ index 0000000000000000000000000000000000000000..0d7e7db9e37ef0183c32b217bd944fb4f41ab83a
111
+ --- /dev/null
112
+ +++ b/src/main/java/io/papermc/paper/network/ConnectionEvent.java
113
+ @@ -0,0 +1,10 @@
114
+ + package io.papermc.paper.network;
115
+ +
116
+ + /**
117
+ + * Internal connection pipeline events.
118
+ + */
119
+ + public enum ConnectionEvent {
120
+ +
121
+ + COMPRESSION_THRESHOLD_SET,
122
+ + COMPRESSION_DISABLED
123
+ + }
124
+ diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
125
+ index 91556b52edaa1d5c4dc73a825c77b9a66b002c61..91cf0a6b5061bf4731731fdd69beb80fb30c6b51 100644
126
+ --- a/src/main/java/net/minecraft/network/Connection.java
127
+ +++ b/src/main/java/net/minecraft/network/Connection.java
128
+ @@ -555,6 +555,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
129
+ } else {
130
+ this.channel.pipeline().addBefore("encoder", "compress", new CompressionEncoder(compressionThreshold));
131
+ }
132
+ + this.channel.pipeline().fireUserEventTriggered(io.papermc.paper.network.ConnectionEvent.COMPRESSION_THRESHOLD_SET); // Paper
133
+ } else {
134
+ if (this.channel.pipeline().get("decompress") instanceof CompressionDecoder) {
135
+ this.channel.pipeline().remove("decompress");
136
+ @@ -563,6 +564,7 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
137
+ if (this.channel.pipeline().get("compress") instanceof CompressionEncoder) {
138
+ this.channel.pipeline().remove("compress");
139
+ }
140
+ + this.channel.pipeline().fireUserEventTriggered(io.papermc.paper.network.ConnectionEvent.COMPRESSION_DISABLED); // Paper
141
+ }
142
+
143
+ }
108
144
diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java
109
145
index 72fbc58f7d003b7af3c35e5fc504010307c7086b..076c1d5fb69a4a30b3e412e85b17db09fd9a1def 100644
110
146
--- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java
0 commit comments