diff options
Diffstat (limited to 'internal/federation/dereferencing')
-rw-r--r-- | internal/federation/dereferencing/dereferencer.go | 5 | ||||
-rw-r--r-- | internal/federation/dereferencing/dereferencer_test.go | 9 | ||||
-rw-r--r-- | internal/federation/dereferencing/thread.go | 14 |
3 files changed, 15 insertions, 13 deletions
diff --git a/internal/federation/dereferencing/dereferencer.go b/internal/federation/dereferencing/dereferencer.go index 76fd830a2..c105665f3 100644 --- a/internal/federation/dereferencing/dereferencer.go +++ b/internal/federation/dereferencing/dereferencer.go @@ -24,7 +24,6 @@ import ( "sync" "github.com/superseriousbusiness/gotosocial/internal/ap" - "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/media" @@ -82,19 +81,17 @@ type deref struct { typeConverter typeutils.TypeConverter transportController transport.Controller mediaHandler media.Handler - config *config.Config handshakes map[string][]*url.URL handshakeSync *sync.Mutex // mutex to lock/unlock when checking or updating the handshakes map } // NewDereferencer returns a Dereferencer initialized with the given parameters. -func NewDereferencer(config *config.Config, db db.DB, typeConverter typeutils.TypeConverter, transportController transport.Controller, mediaHandler media.Handler) Dereferencer { +func NewDereferencer(db db.DB, typeConverter typeutils.TypeConverter, transportController transport.Controller, mediaHandler media.Handler) Dereferencer { return &deref{ db: db, typeConverter: typeConverter, transportController: transportController, mediaHandler: mediaHandler, - config: config, handshakeSync: &sync.Mutex{}, } } diff --git a/internal/federation/dereferencing/dereferencer_test.go b/internal/federation/dereferencing/dereferencer_test.go index d4bf3396d..8bcee8615 100644 --- a/internal/federation/dereferencing/dereferencer_test.go +++ b/internal/federation/dereferencing/dereferencer_test.go @@ -29,7 +29,6 @@ import ( "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/activity/streams" "github.com/superseriousbusiness/activity/streams/vocab" - "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/federation/dereferencing" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" @@ -39,7 +38,6 @@ import ( type DereferencerStandardTestSuite struct { suite.Suite - config *config.Config db db.DB storage *kv.KVStore @@ -61,11 +59,12 @@ func (suite *DereferencerStandardTestSuite) SetupSuite() { } func (suite *DereferencerStandardTestSuite) SetupTest() { - suite.config = testrig.NewTestConfig() - suite.db = testrig.NewTestDB() testrig.InitTestLog() + testrig.InitTestConfig() + + suite.db = testrig.NewTestDB() suite.storage = testrig.NewTestStorage() - suite.dereferencer = dereferencing.NewDereferencer(suite.config, suite.db, testrig.NewTestTypeConverter(suite.db), suite.mockTransportController(), testrig.NewTestMediaHandler(suite.db, suite.storage)) + suite.dereferencer = dereferencing.NewDereferencer(suite.db, testrig.NewTestTypeConverter(suite.db), suite.mockTransportController(), testrig.NewTestMediaHandler(suite.db, suite.storage)) testrig.StandardDBSetup(suite.db, nil) } diff --git a/internal/federation/dereferencing/thread.go b/internal/federation/dereferencing/thread.go index db1d336c6..209df32c4 100644 --- a/internal/federation/dereferencing/thread.go +++ b/internal/federation/dereferencing/thread.go @@ -24,7 +24,9 @@ import ( "net/url" "github.com/sirupsen/logrus" + "github.com/spf13/viper" "github.com/superseriousbusiness/gotosocial/internal/ap" + "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/util" ) @@ -43,7 +45,8 @@ func (d *deref) DereferenceThread(ctx context.Context, username string, statusIR l.Debug("entering DereferenceThread") // if it's our status we already have everything stashed so we can bail early - if statusIRI.Host == d.config.Host { + host := viper.GetString(config.Keys.Host) + if statusIRI.Host == host { l.Debug("iri belongs to us, bailing") return nil } @@ -77,7 +80,8 @@ func (d *deref) iterateAncestors(ctx context.Context, username string, statusIRI l.Debug("entering iterateAncestors") // if it's our status we don't need to dereference anything so we can immediately move up the chain - if statusIRI.Host == d.config.Host { + host := viper.GetString(config.Keys.Host) + if statusIRI.Host == host { l.Debug("iri belongs to us, moving up to next ancestor") // since this is our status, we know we can extract the id from the status path @@ -129,7 +133,8 @@ func (d *deref) iterateDescendants(ctx context.Context, username string, statusI l.Debug("entering iterateDescendants") // if it's our status we already have descendants stashed so we can bail early - if statusIRI.Host == d.config.Host { + host := viper.GetString(config.Keys.Host) + if statusIRI.Host == host { l.Debug("iri belongs to us, bailing") return nil } @@ -205,7 +210,8 @@ pageLoop: continue } - if itemURI.Host == d.config.Host { + host := viper.GetString(config.Keys.Host) + if itemURI.Host == host { // skip if the reply is from us -- we already have it then continue } |