package tc.oc.api.sessions; import java.util.Collections; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; import tc.oc.api.docs.Session; import tc.oc.api.docs.UserId; import tc.oc.api.docs.virtual.ServerDoc; import tc.oc.api.docs.virtual.SessionDoc; import tc.oc.api.exceptions.NotFound; import tc.oc.api.message.types.FindMultiResponse; import tc.oc.api.model.NullModelService; public class NullSessionService extends NullModelService<Session, SessionDoc.Partial> implements SessionService { @Override public ListenableFuture<Session> start(SessionStartRequest request) { return Futures.immediateFailedFuture(new NotFound()); } @Override public ListenableFuture<?> finish(Session session) { return Futures.immediateFuture(null); } @Override public ListenableFuture<Session> online(UserId player) { return Futures.immediateFailedFuture(new NotFound()); } @Override public ListenableFuture<FindMultiResponse<Session>> friends(UserId player) { return Futures.immediateFuture(Collections::emptyList); } @Override public ListenableFuture<FindMultiResponse<Session>> staff(ServerDoc.Network network, boolean disguised) { return Futures.immediateFuture(Collections::emptyList); } }