Dont load recordings for streams by default

This commit is contained in:
2023-08-01 11:44:00 +01:00
parent 0634622c4d
commit 2371ddb79b
6 changed files with 21 additions and 12 deletions

View File

@ -78,5 +78,11 @@ public interface IStreamManager
/// Republish stream event
/// </summary>
/// <returns></returns>
public Task UpdateEvent();
Task UpdateEvent();
/// <summary>
/// Return a list of recordings segments
/// </summary>
/// <returns></returns>
Task<List<UserStreamRecording>> GetRecordings();
}

View File

@ -149,12 +149,19 @@ public class NostrStreamManager : IStreamManager
await _context.Db.SaveChangesAsync();
}
public async Task UpdateEvent()
{
await UpdateStreamState(_context.UserStream.State);
}
public async Task<List<UserStreamRecording>> GetRecordings()
{
return await _context.Db.Recordings.AsNoTracking()
.Where(a => a.UserStreamId == _context.UserStream.Id)
.ToListAsync();
}
public async Task UpdateViewers()
{
if (_context.UserStream.State is not UserStreamState.Live) return;

View File

@ -89,7 +89,6 @@ public class StreamManagerFactory
.AsNoTracking()
.Include(a => a.User)
.Include(a => a.Endpoint)
.Include(a => a.Recordings)
.FirstOrDefaultAsync(a => a.Id == id);
if (stream == default) throw new Exception("No live stream");
@ -110,7 +109,6 @@ public class StreamManagerFactory
.AsNoTracking()
.Include(a => a.User)
.Include(a => a.Endpoint)
.Include(a => a.Recordings)
.FirstOrDefaultAsync(a => a.PubKey.Equals(pubkey) && a.State == UserStreamState.Live);
if (stream == default) throw new Exception("No live stream");
@ -131,7 +129,6 @@ public class StreamManagerFactory
.AsNoTracking()
.Include(a => a.User)
.Include(a => a.Endpoint)
.Include(a => a.Recordings)
.OrderByDescending(a => a.Starts)
.FirstOrDefaultAsync(a =>
a.User.StreamKey.Equals(info.StreamKey) &&