aboutsummaryrefslogtreecommitdiff
path: root/backend/fetchers/app.bsky.actor.go
diff options
context:
space:
mode:
Diffstat (limited to 'backend/fetchers/app.bsky.actor.go')
-rw-r--r--backend/fetchers/app.bsky.actor.go19
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
}