package cn.novalon.gym.manage.gateway.service;

import reactor.core.publisher.Mono;

/**
 * 请求缓存服务接口
 * 
 * 文件定义：定义请求缓存管理接口
 * 涉及业务：请求缓存、缓存清理、缓存统计
 * 
 * @author 张翔
 * @date 2026-04-14
 */
public interface IRequestCacheService {
    
    Mono<Void> cacheRequest(String requestId, Object requestData);
    
    Mono<Object> getCachedRequest(String requestId);
    
    Mono<Boolean> removeCachedRequest(String requestId);
    
    Mono<Void> clearExpiredCache();
    
    Mono<Long> getCacheSize();
    
    Mono<Boolean> isRequestCached(String requestId);
}