Server/Server/src/main/java/uulm/teamname/marvelous/server/game/pipelining/DisconnectSegment.java

24 lines
839 B
Java

package uulm.teamname.marvelous.server.game.pipelining;
import org.tinylog.Logger;
import uulm.teamname.marvelous.gamelibrary.events.Event;
import uulm.teamname.marvelous.gamelibrary.requests.RequestType;
import uulm.teamname.marvelous.server.game.GameSession;
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
/**
* The {@link DisconnectSegment} handles requests of {@link RequestType} DisconnectRequest.
*/
public class DisconnectSegment implements Segment {
@Override
public void processRequests(Packet packet, List<Event> carrier, AtomicBoolean abort) {
Logger.trace("DisconnectSegment received {} requests.", packet.size());
if(packet.containsRequestOfType(RequestType.DisconnectRequest)) {
packet.getOrigin().disconnect();
packet.clear();
}
}
}