UNPKG

fcr-core

Version:

Core APIs for building online scenes

46 lines (42 loc) 1.33 kB
/** * 房间控制验证辅助工具 * * 专门处理房间控制相关的验证逻辑 */ import { roomControlErrorHelper } from '../../utilities/error-helpers'; /** * 验证控制器是否已初始化 * @param controller 控制器实例 * @param controllerType 控制器类型 * @throws {FcrError} 如果控制器未初始化 */ export function validateControllerInitialized(controller, controllerType) { if (!controller) { throw roomControlErrorHelper.createControllerNotInitializedError(controllerType); } } /** * 验证房间是否已加入 * @param joinRoomSuccess 是否已成功加入房间 * @param operation 操作名称 * @throws {FcrError} 如果房间未加入 */ export function validateRoomJoined(joinRoomSuccess, operation) { if (!joinRoomSuccess) { throw roomControlErrorHelper.createOperationError(`${operation}, please join room first`); } } /** * 验证加入房间的前置条件 * @param joinRoomSuccess 是否已成功加入房间 * @param joining 是否正在加入 * @throws {FcrError} 如果不满足加入条件 */ export function validateJoinRoomPreconditions(joinRoomSuccess, joining) { if (joinRoomSuccess) { throw roomControlErrorHelper.createJoinConflictError(true); } if (joining) { throw roomControlErrorHelper.createJoinConflictError(false); } }