using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using WIDESEAWCS_S7Simulator.Core.Entities;
using WIDESEAWCS_S7Simulator.Core.Interfaces;
namespace WIDESEAWCS_S7Simulator.Core.Persistence
{
///
/// 持久化服务接口
/// 提供实例配置和内存数据的持久化功能
///
public interface IPersistenceService
{
///
/// 保存实例配置
///
/// 实例配置
Task SaveInstanceConfigAsync(InstanceConfig config);
///
/// 加载实例配置
///
/// 实例ID
/// 实例配置
Task LoadInstanceConfigAsync(string instanceId);
///
/// 加载所有实例配置
///
/// 实例配置列表
Task> LoadAllInstanceConfigsAsync();
///
/// 删除实例配置
///
/// 实例ID
Task DeleteInstanceConfigAsync(string instanceId);
///
/// 保存内存数据
///
/// 实例ID
/// 内存存储
Task SaveMemoryDataAsync(string instanceId, IMemoryStore memoryStore);
///
/// 加载内存数据
///
/// 实例ID
/// 内存存储
Task LoadMemoryDataAsync(string instanceId, IMemoryStore memoryStore);
}
}