aboutsummaryrefslogtreecommitdiff
path: root/internal/db
diff options
context:
space:
mode:
authorMax Resnick <max@ofmax.li>2020-05-23 07:56:12 -0700
committerMax Resnick <max@ofmax.li>2020-06-22 22:37:17 -0700
commit85e7eaa3a1c9024c02cc9a63744cdfb144cc3737 (patch)
treea44855abcf5424126c54ee636463dc866e558561 /internal/db
parent4e77ad5762539d8f9edf40d2668a998c38e834d3 (diff)
downloadiserv-85e7eaa3a1c9024c02cc9a63744cdfb144cc3737.tar.gz
adds tmpl, css, and fileserver
Diffstat (limited to 'internal/db')
-rw-r--r--internal/db/redis/image.go21
-rw-r--r--internal/db/redis/redis.go2
2 files changed, 20 insertions, 3 deletions
diff --git a/internal/db/redis/image.go b/internal/db/redis/image.go
index 6814fb7..1f4e8fa 100644
--- a/internal/db/redis/image.go
+++ b/internal/db/redis/image.go
@@ -9,7 +9,7 @@ import (
"git.ofmax.li/iserv/internal/image"
)
-const V1FilePathFmt = "filepath:up/%s"
+const V1FilePathFmt = "v1imagepost:%s"
// ImageRepo deps. for storage
type ImageRepo struct {
@@ -23,13 +23,30 @@ func NewRedisImageRepo(conn *redis.Pool) *ImageRepo {
}
}
+func fileKey(filename, V1FilePathFmt string) string {
+ return fmt.Sprintf(V1FilePathFmt, filename)
+}
+
func (r *ImageRepo) AddNewFile(filename string, meta *image.PostMeta, timeout int) error {
conn := r.db.Get()
defer conn.Close()
- key := fmt.Sprintf(V1FilePathFmt, filename)
+ key := fileKey(filename, V1FilePathFmt)
_, err := conn.Do("HMSET", redis.Args{}.Add(key).AddFlat(meta)...)
if err != nil {
log.Fatal(err)
}
return err
}
+
+func (r *ImageRepo) GetFile(fileUrl string) (*image.PostMeta, error) {
+ conn := r.db.Get()
+ defer conn.Close()
+ imageMeta := &image.PostMeta{}
+ key := fileKey(fileUrl, V1FilePathFmt)
+ res, err := redis.Values(conn.Do("HGETALL", key))
+ if err != nil {
+ return &image.PostMeta{}, err
+ }
+ err = redis.ScanStruct(res, imageMeta)
+ return imageMeta, err
+}
diff --git a/internal/db/redis/redis.go b/internal/db/redis/redis.go
index d769bb4..f9147be 100644
--- a/internal/db/redis/redis.go
+++ b/internal/db/redis/redis.go
@@ -5,7 +5,7 @@ import (
"github.com/gomodule/redigo/redis"
- "gitlab.com/grumps/environ"
+ "go.ofmax.li/environ"
)
var redisServer = environ.GetEnv("AUTH_REDIS", "localhost:6379")