diff options
| author | 2025-01-28 20:22:23 +0000 | |
|---|---|---|
| committer | 2025-01-28 20:22:23 +0000 | |
| commit | 61141ac2324fd73221f8301ba3805c051bc99fe2 (patch) | |
| tree | b05d8cd260a18d174dbad5037b9de8bde7a126a5 /internal/federation/federatingdb/db.go | |
| parent | [bugfix] Allow processing null ID emojis (#3702) (diff) | |
| download | gotosocial-61141ac2324fd73221f8301ba3805c051bc99fe2.tar.xz | |
[chore] remove type switch in Create() and instead move to FederatedCallbacks() (#3697)
* remove type switch in Create() and instead move to FederatedCallbacks()
* add missing (my bad!) federating wrapped callbacks behaviour
* add missing license header :innocent:
* fix create flag test to use correct function
Diffstat (limited to 'internal/federation/federatingdb/db.go')
| -rw-r--r-- | internal/federation/federatingdb/db.go | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/internal/federation/federatingdb/db.go b/internal/federation/federatingdb/db.go index 230098073..d76e5a42c 100644 --- a/internal/federation/federatingdb/db.go +++ b/internal/federation/federatingdb/db.go @@ -24,6 +24,7 @@ import ( "codeberg.org/gruf/go-cache/v3/simple" "github.com/superseriousbusiness/activity/pub" "github.com/superseriousbusiness/activity/streams/vocab" + "github.com/superseriousbusiness/gotosocial/internal/ap" "github.com/superseriousbusiness/gotosocial/internal/filter/interaction" "github.com/superseriousbusiness/gotosocial/internal/filter/spam" "github.com/superseriousbusiness/gotosocial/internal/filter/visibility" @@ -34,18 +35,20 @@ import ( // DB wraps the pub.Database interface with // a couple of custom functions for GoToSocial. type DB interface { - // Default functionality. + // Default + // functionality. pub.Database - /* - Overridden functionality for calling from federatingProtocol. - */ - - Undo(ctx context.Context, undo vocab.ActivityStreamsUndo) error - Accept(ctx context.Context, accept vocab.ActivityStreamsAccept) error - Reject(ctx context.Context, reject vocab.ActivityStreamsReject) error - Announce(ctx context.Context, announce vocab.ActivityStreamsAnnounce) error - Move(ctx context.Context, move vocab.ActivityStreamsMove) error + // Federating protocol overridden callback functionality. + Like(context.Context, vocab.ActivityStreamsLike) error + Block(context.Context, vocab.ActivityStreamsBlock) error + Follow(context.Context, vocab.ActivityStreamsFollow) error + Undo(context.Context, vocab.ActivityStreamsUndo) error + Accept(context.Context, vocab.ActivityStreamsAccept) error + Reject(context.Context, vocab.ActivityStreamsReject) error + Announce(context.Context, vocab.ActivityStreamsAnnounce) error + Move(context.Context, vocab.ActivityStreamsMove) error + Flag(context.Context, vocab.ActivityStreamsFlag) error /* Extra/convenience functionality. @@ -87,3 +90,9 @@ func New( fdb.activityIDs.Init(0, 2048) return &fdb } + +// storeActivityID stores an entry in the .activityIDs cache for this +// type's JSON-LD ID, for later checks in Exist() to mark it as seen. +func (f *federatingDB) storeActivityID(asType vocab.Type) { + f.activityIDs.Set(ap.GetJSONLDId(asType).String(), struct{}{}) +} |
