Skip to content

Commit

Permalink
Fix not disconnecting
Browse files Browse the repository at this point in the history
Closes #14
  • Loading branch information
bundabrg committed Sep 23, 2020
1 parent 031743d commit f304106
Show file tree
Hide file tree
Showing 2 changed files with 131 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,13 @@
package au.com.grieve.geyser.reversion.server;

import au.com.grieve.reversion.api.ReversionServer;
import com.nukkitx.network.raknet.RakNetServer;
import com.nukkitx.protocol.bedrock.BedrockServer;
import com.nukkitx.protocol.bedrock.BedrockServerEventHandler;
import io.netty.bootstrap.Bootstrap;
import lombok.Getter;

import java.net.InetSocketAddress;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
Expand Down Expand Up @@ -64,4 +68,39 @@ public void registerServer(ReversionServer server, boolean isDefault) {
public CompletableFuture<Void> bind() {
return defaultServer.bind();
}

@Override
public BedrockServerEventHandler getHandler() {
return original.getHandler();
}

@Override
public void setHandler(BedrockServerEventHandler handler) {
original.setHandler(handler);
}

@Override
public RakNetServer getRakNet() {
return original.getRakNet();
}

@Override
public void close(String reason) {
original.close(reason);
}

@Override
public boolean isClosed() {
return super.isClosed();
}

@Override
public InetSocketAddress getBindAddress() {
return original.getBindAddress();
}

@Override
public Bootstrap getBootstrap() {
return original.getBootstrap();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,20 @@
package au.com.grieve.geyser.reversion.server;

import au.com.grieve.reversion.editions.bedrock.BedrockReversionSession;
import com.nukkitx.network.util.DisconnectReason;
import com.nukkitx.protocol.bedrock.BedrockPacket;
import com.nukkitx.protocol.bedrock.BedrockServerSession;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
import org.geysermc.connector.network.BedrockProtocol;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.annotation.ParametersAreNonnullByDefault;
import javax.crypto.SecretKey;
import java.net.InetSocketAddress;
import java.util.Collection;
import java.util.function.Consumer;

@ParametersAreNonnullByDefault
public class GeyserServerSession extends BedrockServerSession {
Expand Down Expand Up @@ -74,8 +80,93 @@ public boolean isClosed() {
return reversionSession.isClosed();
}

// @Override
// public void setPacketHandler(@Nonnull BedrockPacketHandler packetHandler) {
// throw new UnsupportedOperationException();
// }

// @Override
// public void setPacketCodec(BedrockPacketCodec packetCodec) {
// throw new UnsupportedOperationException();
// }

@Override
public void sendWrapped(Collection<BedrockPacket> packets, boolean encrypt) {
throw new UnsupportedOperationException();
}

@Override
public synchronized void sendWrapped(ByteBuf compressed, boolean encrypt) {
throw new UnsupportedOperationException();
}

@Override
public synchronized void enableEncryption(@Nonnull SecretKey secretKey) {
reversionSession.enableEncryption(secretKey);
}

@Override
public boolean isEncrypted() {
return reversionSession.isEncrypted();
}

@Override
public InetSocketAddress getAddress() {
return reversionSession.getAddress();
}

// @Override
// public BedrockPacketCodec getPacketCodec() {
// throw new UnsupportedOperationException();
// }

// @Override
// public BedrockPacketHandler getPacketHandler() {
// throw new UnsupportedOperationException();
// }

// @Override
// public BatchHandler getBatchHandler() {
// throw new UnsupportedOperationException();
// }

// @Override
// public void setBatchHandler(BatchHandler batchHandler) {
// throw new UnsupportedOperationException();
// }

@Override
public int getCompressionLevel() {
return reversionSession.getCompressionLevel();
}

@Override
public void setCompressionLevel(int compressionLevel) {
reversionSession.setCompressionLevel(compressionLevel);
}

@Override
public boolean isLogging() {
return reversionSession.isLogging();
}

@Override
public void setLogging(boolean logging) {
reversionSession.setLogging(logging);
}

@Override
public void addDisconnectHandler(Consumer<DisconnectReason> disconnectHandler) {
reversionSession.addDisconnectHandler(disconnectHandler);
}

@Override
public long getLatency() {
return reversionSession.getLatency();
}

@Override
public void disconnect(@Nullable String reason, boolean hideReason) {
super.disconnect(reason, hideReason);
reversionSession.disconnect(reason, hideReason);
}
}

0 comments on commit f304106

Please sign in to comment.