summaryrefslogtreecommitdiff
path: root/internal/server/handler
diff options
context:
space:
mode:
Diffstat (limited to 'internal/server/handler')
-rw-r--r--internal/server/handler/handler.go18
1 files changed, 6 insertions, 12 deletions
diff --git a/internal/server/handler/handler.go b/internal/server/handler/handler.go
index 0d5dc11..2630433 100644
--- a/internal/server/handler/handler.go
+++ b/internal/server/handler/handler.go
@@ -5,7 +5,6 @@ import (
"fmt"
"io"
"net/http"
- "regexp"
"codeberg.org/snonux/gos/internal/config/server"
"codeberg.org/snonux/gos/internal/server/repository"
@@ -13,15 +12,12 @@ import (
)
type Handler struct {
- conf server.ServerConfig
- getIdRe *regexp.Regexp
+ conf server.ServerConfig
}
func New(conf server.ServerConfig) Handler {
return Handler{
- conf: conf,
- getIdRe: regexp.MustCompile(`^[a-z0-9]{64}$`),
- // getIdRe: regexp.MustCompile(`^/[0-9]{4}/[a-z0-9]{64}\.json$`),
+ conf: conf,
}
}
@@ -58,15 +54,13 @@ func (h Handler) List(w http.ResponseWriter, r *http.Request) error {
func (h Handler) Get(w http.ResponseWriter, r *http.Request) error {
id := r.URL.Query().Get("id")
- if !h.getIdRe.MatchString(id) {
- return fmt.Errorf("invalid id %s", id)
- }
- ent, ok := repository.Instance(h.conf).Get(id)
- if !ok {
- return fmt.Errorf("no entry with id %s found", id)
+ ent, err := repository.Instance(h.conf).Get(id)
+ if err != nil {
+ return err
}
+ // TODO: Move to repository.go
bytes, err := ent.JSONMarshal()
if err != nil {
return err