using System.Collections.Concurrent;
using DMS.Application.DTOs;
namespace DMS.Application.Interfaces;
///
/// 定义数据加载服务接口,负责从数据源加载数据到内存中
///
public interface IDataLoaderService
{
///
/// 异步加载所有设备及其关联数据到内存中
///
Task LoadAllDataToMemoryAsync(
ConcurrentDictionary devices,
ConcurrentDictionary variableTables,
ConcurrentDictionary variables,
ConcurrentDictionary menus,
ConcurrentDictionary menuTrees,
ConcurrentDictionary mqttServers,
ConcurrentDictionary nlogs);
///
/// 异步加载所有设备数据
///
Task> LoadAllDevicesAsync();
///
/// 异步加载所有变量表数据
///
Task> LoadAllVariableTablesAsync();
///
/// 异步加载所有变量数据
///
Task> LoadAllVariablesAsync();
///
/// 异步加载所有菜单数据
///
Task> LoadAllMenusAsync();
///
/// 异步加载所有MQTT服务器数据
///
Task> LoadAllMqttServersAsync();
///
/// 异步加载所有日志数据
///
Task> LoadAllNlogsAsync();
}