diff options
Diffstat (limited to 'backend/fetchers/app.bsky.actor.go')
| -rw-r--r-- | backend/fetchers/app.bsky.actor.go | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/backend/fetchers/app.bsky.actor.go b/backend/fetchers/app.bsky.actor.go index a56fe0b..41a9c17 100644 --- a/backend/fetchers/app.bsky.actor.go +++ b/backend/fetchers/app.bsky.actor.go @@ -7,7 +7,6 @@ import ( "llostre/backend/auth" "llostre/backend/general" "llostre/backend/notes" - "log/slog" "net" "net/http" "strings" @@ -132,34 +131,34 @@ func FetchHandleAndPDS(did string) (string, string, error) { return handle, pds, nil } -func FetchAppBskyActorProfile(logger *slog.Logger, did, pdsURL, slingshotURL string, session *auth.OAuthState, cache *Cache) (*notes.Author, error) { +func FetchAppBskyActorProfile(conf *Config, did, pdsURL string, session *auth.OAuthState) (*notes.Author, error) { // construct profile record URI uri := fmt.Sprintf("at://%s/app.bsky.actor.profile/self", did) // try slingshot first - if slingshotURL != "" && general.SlingshotAvailable() { - rawRecord, err := general.FetchRawRecordByURI(logger, uri, slingshotURL, session) + if conf.SlingshotURL != "" && general.SlingshotAvailable() { + rawRecord, err := general.FetchRawRecordByURI(conf.Logger, uri, conf.SlingshotURL, session) if err != nil { - logger.Warn("slingshot profile fetch failed", "did", did, "error", err) + conf.Logger.Warn("slingshot profile fetch failed", "did", did, "error", err) general.SetSlingshotBackoff(5 * time.Minute) } else { - return parseAppBskyActorProfile(did, pdsURL, rawRecord, cache) + return parseAppBskyActorProfile(did, pdsURL, rawRecord, conf.Cache) } } // fallback to PDS - rawRecord, err := general.FetchRawRecordByURI(logger, uri, pdsURL, session) + rawRecord, err := general.FetchRawRecordByURI(conf.Logger, uri, pdsURL, session) if err != nil { return nil, err } - return parseAppBskyActorProfile(did, pdsURL, rawRecord, cache) + return parseAppBskyActorProfile(did, pdsURL, rawRecord, conf.Cache) } -func FetchAppBskyActorProfiles(logger *slog.Logger, dids []string, pdsURL, slingshotURL string, session *auth.OAuthState, cache *Cache) map[string]notes.Author { +func FetchAppBskyActorProfiles(conf *Config, dids []string, pdsURL string, session *auth.OAuthState) map[string]notes.Author { authors := make(map[string]notes.Author) for _, did := range dids { - author, err := FetchAppBskyActorProfile(logger, did, pdsURL, slingshotURL, session, cache) + author, err := FetchAppBskyActorProfile(conf, did, pdsURL, session) if err == nil { authors[did] = *author } |
