docs: public Set<Participant> closeSession(String sessionId, EndReason reason) {
  		Session session = sessions.get(sessionId);
  		if (session == null) {
  			throw new OpenViduException(Code.ROOM_NOT_FOUND_ERROR_CODE, "Session '" + sessionId + "' not found");
  		}
  		if (session.isClosed()) {
  			this.closeSessionAndEmptyCollections(session, reason);
  			throw new OpenViduException(Code.ROOM_CLOSED_ERROR_CODE, "Session '" + sessionId + "' already closed");
  		}
  		Set<Participant> participants = getParticipants(sessionId);
  		for (Participant p : participants) {
  			try {
  				this.evictParticipant(p, null, null, reason);
  			} catch (OpenViduException e) {
  				log.warn("Error evicting participant '{}' from session '{}'", p.getParticipantPublicId(), sessionId, e);
  			}
  		}
  
  		this.closeSessionAndEmptyCollections(session, reason);
  
  		return participants;
  	}