BotSharp/src/Infrastructure/BotSharp.Core/Agents/Services/AgentService.cs

42 lines
1.1 KiB
C#
Raw Normal View History

2023-08-26 04:41:01 +00:00
using BotSharp.Abstraction.Repositories;
2023-07-26 21:05:30 +00:00
using Microsoft.Extensions.Logging;
2023-06-27 18:31:13 +00:00
using System.IO;
2023-06-11 23:46:02 +00:00
namespace BotSharp.Core.Agents.Services;
2023-06-23 04:43:00 +00:00
public partial class AgentService : IAgentService
2023-06-11 23:46:02 +00:00
{
private readonly IServiceProvider _services;
2023-07-26 21:05:30 +00:00
private readonly ILogger _logger;
2023-06-17 02:42:35 +00:00
private readonly IUserIdentity _user;
2023-07-21 22:17:16 +00:00
private readonly AgentSettings _settings;
2023-08-10 04:53:22 +00:00
public AgentService(IServiceProvider services,
ILogger<AgentService> logger,
IUserIdentity user,
AgentSettings settings)
2023-06-11 23:46:02 +00:00
{
_services = services;
2023-07-26 21:05:30 +00:00
_logger = logger;
_user = user;
2023-07-21 22:17:16 +00:00
_settings = settings;
2023-06-11 23:46:02 +00:00
}
2023-06-27 18:31:13 +00:00
2023-08-09 21:49:55 +00:00
public string GetDataDir()
{
2023-09-01 22:33:36 +00:00
var dbSettings = _services.GetRequiredService<BotSharpDatabaseSettings>();
2023-08-10 04:53:22 +00:00
return Path.Combine(dbSettings.FileRepository);
2023-08-09 21:49:55 +00:00
}
2023-06-27 18:31:13 +00:00
public string GetAgentDataDir(string agentId)
{
2023-09-01 22:33:36 +00:00
var dbSettings = _services.GetRequiredService<BotSharpDatabaseSettings>();
2023-08-10 04:53:22 +00:00
var dir = Path.Combine(dbSettings.FileRepository, _settings.DataDir, agentId);
2023-06-27 18:31:13 +00:00
if (!Directory.Exists(dir))
{
Directory.CreateDirectory(dir);
}
return dir;
}
2023-06-11 23:46:02 +00:00
}