package net.scapeemulator.game.net.jaggrab;
import io.netty.channel.Channel;
import io.netty.channel.ChannelFutureListener;
import io.netty.channel.FileRegion;
import java.io.IOException;
import net.scapeemulator.game.GameServer;
import net.scapeemulator.game.net.Session;
import net.scapeemulator.game.net.file.FileProvider;
public final class JaggrabSession extends Session {
private static final FileProvider provider = new FileProvider("data/game/jaggrab/", true);
public JaggrabSession(GameServer server, Channel channel) {
super(server, channel);
}
@Override
public void messageReceived(Object message) throws IOException {
JaggrabRequest request = (JaggrabRequest) message;
FileRegion file = provider.serve(request.getPath());
if (file != null) {
channel.write(file).addListener(ChannelFutureListener.CLOSE);
} else {
channel.close();
}
}
}