blob: af0b20d9215100ef759dd61d2f0e7b3e36b9fef4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using MediaBrowser.Model.Activity;
using Microsoft.EntityFrameworkCore;
namespace Emby.Server.Implementations.Activity
{
public class ActivityRepository : DbContext, IActivityRepository
{
protected string _dataDirPath;
public DbSet<ActivityLogEntry> ActivityLogs { get; set; }
public ActivityRepository(string dataDirPath)
{
_dataDirPath = dataDirPath;
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
// Ensure the dir exists
Directory.CreateDirectory(_dataDirPath);
optionsBuilder.UseSqlite($"Filename={Path.Combine(_dataDirPath, "activitylog.sqlite.db")}");
}
public async Task CreateAsync(ActivityLogEntry entry)
{
await ActivityLogs.AddAsync(entry);
await SaveChangesAsync();
}
public IQueryable<ActivityLogEntry> GetActivityLogEntries()
=> ActivityLogs;
}
}
|