
com.tvd12.gamebox.manager.SynchronizedRoomManager Maven / Gradle / Ivy
The newest version!
package com.tvd12.gamebox.manager;
import com.tvd12.gamebox.entity.Room;
import java.util.List;
import java.util.function.Predicate;
public class SynchronizedRoomManager
extends AbstractRoomManager {
public SynchronizedRoomManager() {
this(10000);
}
public SynchronizedRoomManager(int maxRoom) {
super(maxRoom);
}
protected SynchronizedRoomManager(Builder, ?> builder) {
super(builder);
}
@SuppressWarnings("rawtypes")
public static Builder builder() {
return new Builder<>();
}
@Override
public void addRoom(R room, boolean failIfAdded) {
synchronized (this) {
super.addRoom(room, failIfAdded);
}
}
@Override
public void addRooms(R[] rooms, boolean failIfAdded) {
synchronized (this) {
super.addRooms(rooms, failIfAdded);
}
}
@Override
public void addRooms(Iterable rooms, boolean failIfAdded) {
synchronized (this) {
super.addRooms(rooms, failIfAdded);
}
}
@Override
public R getRoom(long id) {
synchronized (this) {
return super.getRoom(id);
}
}
@Override
public R getRoom(String name) {
synchronized (this) {
return super.getRoom(name);
}
}
@Override
public R getRoom(Predicate predicate) {
synchronized (this) {
return super.getRoom(predicate);
}
}
@Override
public List getRoomList() {
synchronized (this) {
return super.getRoomList();
}
}
@Override
public void getRoomList(List buffer) {
synchronized (this) {
super.getRoomList(buffer);
}
}
@Override
public List getRoomList(Predicate predicate) {
synchronized (this) {
return super.getRoomList(predicate);
}
}
@Override
public int getRoomCount() {
synchronized (this) {
return super.getRoomCount();
}
}
@Override
public boolean containsRoom(long id) {
synchronized (this) {
return super.containsRoom(id);
}
}
@Override
public boolean containsRoom(String name) {
synchronized (this) {
return super.containsRoom(name);
}
}
@Override
public void removeRoom(R room) {
synchronized (this) {
super.removeRoom(room);
}
}
@Override
public void removeRoom(long id) {
synchronized (this) {
super.removeRoom(id);
}
}
@Override
public void removeRoom(String name) {
synchronized (this) {
super.removeRoom(name);
}
}
@Override
public void removeRooms(Iterable rooms) {
synchronized (this) {
super.removeRooms(rooms);
}
}
@Override
public boolean available() {
synchronized (this) {
return super.available();
}
}
@Override
public void clear() {
synchronized (this) {
super.clear();
}
}
public static class Builder>
extends AbstractRoomManager.Builder {
@Override
public RoomManager build() {
return new SynchronizedRoomManager<>(this);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy