mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-22 10:34:30 +08:00
- 新增 IRuntimeTypeSerializer 接口支持运行时类型序列化 - 将序列化器接口从 Game 模块迁移到 Core 模块 - 更新 JsonSerializer 的命名空间引用 - 为 Godot 音频和图形设置类添加持久化应用接口实现 - 重构设置模型的初始化和去重逻辑 - 移除批量加载所有设置的功能 - 优化设置应用过程为异步执行 - 在存储接口中添加异步删除方法 - 为各种存储实现添加异步删除功能 - 为 Godot 文件存储添加标准文件系统路径删除支持 - 删除废弃的设置数据基类实现
35 lines
1.0 KiB
C#
35 lines
1.0 KiB
C#
using GFramework.Core.Abstractions.utility;
|
|
|
|
namespace GFramework.Game.Abstractions.setting;
|
|
|
|
/// <summary>
|
|
/// 设置持久化接口
|
|
/// 定义了设置数据的异步加载、保存、检查存在性和删除操作
|
|
/// </summary>
|
|
public interface ISettingsPersistence : IContextUtility
|
|
{
|
|
/// <summary>
|
|
/// 异步加载指定类型的设置数据
|
|
/// </summary>
|
|
Task<T> LoadAsync<T>() where T : class, ISettingsData, new();
|
|
|
|
/// <summary>
|
|
/// 异步保存指定的设置数据
|
|
/// </summary>
|
|
Task SaveAsync<T>(T section) where T : class, ISettingsData;
|
|
|
|
/// <summary>
|
|
/// 异步检查指定类型的设置数据是否存在
|
|
/// </summary>
|
|
Task<bool> ExistsAsync<T>() where T : class, ISettingsData;
|
|
|
|
/// <summary>
|
|
/// 异步删除指定类型的设置数据
|
|
/// </summary>
|
|
Task DeleteAsync<T>() where T : class, ISettingsData;
|
|
|
|
/// <summary>
|
|
/// 保存所有设置数据
|
|
/// </summary>
|
|
Task SaveAllAsync(IEnumerable<ISettingsData> allData);
|
|
} |