♻️ Refactor activitypub content storage

This commit is contained in:
2025-12-30 23:37:57 +08:00
parent 8dc01c8a85
commit 6aa6833163
26 changed files with 3339 additions and 919 deletions

View File

@@ -50,10 +50,7 @@ public class AppDatabase(
public DbSet<SnFediverseInstance> FediverseInstances { get; set; } = null!;
public DbSet<SnFediverseActor> FediverseActors { get; set; } = null!;
public DbSet<SnFediverseContent> FediverseContents { get; set; } = null!;
public DbSet<SnFediverseActivity> FediverseActivities { get; set; } = null!;
public DbSet<SnFediverseRelationship> FediverseRelationships { get; set; } = null!;
public DbSet<SnFediverseReaction> FediverseReactions { get; set; } = null!;
public DbSet<WebArticle> WebArticles { get; set; } = null!;
public DbSet<WebFeed> WebFeeds { get; set; } = null!;
@@ -155,28 +152,6 @@ public class AppDatabase(
.HasForeignKey(a => a.InstanceId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseContent>()
.HasOne(c => c.Actor)
.WithMany(a => a.Contents)
.HasForeignKey(c => c.ActorId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseContent>()
.HasOne(c => c.Instance)
.WithMany(i => i.Contents)
.HasForeignKey(c => c.InstanceId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseActivity>()
.HasOne(a => a.Actor)
.WithMany(actor => actor.Activities)
.HasForeignKey(a => a.ActorId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseActivity>()
.HasOne(a => a.Content)
.WithMany(c => c.Activities)
.HasForeignKey(a => a.ContentId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseRelationship>()
.HasOne(r => r.Actor)
.WithMany(a => a.FollowingRelationships)
@@ -188,17 +163,6 @@ public class AppDatabase(
.HasForeignKey(r => r.TargetActorId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseReaction>()
.HasOne(r => r.Content)
.WithMany(c => c.Reactions)
.HasForeignKey(r => r.ContentId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<SnFediverseReaction>()
.HasOne(r => r.Actor)
.WithMany()
.HasForeignKey(r => r.ActorId)
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.ApplySoftDeleteFilters();
}