diff options
author | 2021-08-20 12:26:56 +0200 | |
---|---|---|
committer | 2021-08-20 12:26:56 +0200 | |
commit | 4920229a3b6e1d7dde536bc9ff766542b05d935c (patch) | |
tree | a9423beccec5331c372f01eedf38949dfb171e9e /internal/cache/cache.go | |
parent | Text/status parsing fixes (#141) (diff) | |
download | gotosocial-4920229a3b6e1d7dde536bc9ff766542b05d935c.tar.xz |
Database updates (#144)
* start moving some database stuff around
* continue moving db stuff around
* more fiddling
* more updates
* and some more
* and yet more
* i broke SOMETHING but what, it's a mystery
* tidy up
* vendor ttlcache
* use ttlcache
* fix up some tests
* rename some stuff
* little reminder
* some more updates
Diffstat (limited to 'internal/cache/cache.go')
-rw-r--r-- | internal/cache/cache.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/internal/cache/cache.go b/internal/cache/cache.go index 1d2d0533b..eb3744cfe 100644 --- a/internal/cache/cache.go +++ b/internal/cache/cache.go @@ -18,8 +18,28 @@ package cache +import ( + "time" + + "github.com/ReneKroon/ttlcache" +) + // Cache defines an in-memory cache that is safe to be wiped when the application is restarted type Cache interface { Store(k string, v interface{}) error Fetch(k string) (interface{}, error) } + +type cache struct { + c *ttlcache.Cache +} + +// New returns a new in-memory cache. +func New() Cache { + c := ttlcache.NewCache() + c.SetTTL(30 * time.Second) + cache := &cache{ + c: c, + } + return cache +} |