From e7b3418932e2d8ea63458f3adb38f5073913824b Mon Sep 17 00:00:00 2001 From: bel Date: Sat, 13 Apr 2024 09:20:03 -0600 Subject: [PATCH] extract parsing ?since --- config.go | 2 +- main.go | 7 ++----- storage.go | 10 +++++++--- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/config.go b/config.go index 4c4c851..87551e0 100644 --- a/config.go +++ b/config.go @@ -37,7 +37,7 @@ func newConfig(ctx context.Context) (Config, error) { func newConfigFromEnv(ctx context.Context, getEnv func(string) string) (Config, error) { def := Config{ - Port: 8080, + Port: 38080, OllamaModel: "gemma:2b", } diff --git a/main.go b/main.go index d97488a..77340c0 100644 --- a/main.go +++ b/main.go @@ -107,13 +107,10 @@ func newHandlerGetAPIV1Threads(cfg Config) http.HandlerFunc { return } - since := time.Unix(0, 0) - if sinceS := r.URL.Query().Get("since"); sinceS == "" { - } else if n, err := strconv.ParseInt(sinceS, 10, 64); err != nil { + since, err := parseSince(r.URL.Query().Get("since")) + if err != nil { http.Error(w, err.Error(), http.StatusBadRequest) return - } else { - since = time.Unix(n, 0) } threads, err := cfg.storage.ThreadsSince(r.Context(), since) diff --git a/storage.go b/storage.go index 5442a3c..34ca605 100644 --- a/storage.go +++ b/storage.go @@ -19,14 +19,18 @@ func NewStorage(driver Driver) Storage { return Storage{driver: driver} } +func (s Storage) MessagesSince(ctx context.Context, t time.Time) ([]Message, error) { + return s.messagesWhere(ctx, func(m Message) bool { + return !t.After(m.Time()) + }) +} + func (s Storage) Threads(ctx context.Context) ([]string, error) { return s.ThreadsSince(ctx, time.Unix(0, 0)) } func (s Storage) ThreadsSince(ctx context.Context, t time.Time) ([]string, error) { - messages, err := s.messagesWhere(ctx, func(m Message) bool { - return !t.After(m.Time()) - }) + messages, err := s.MessagesSince(ctx, t) if err != nil { return nil, err }