diff options
| author | Horus_Arch | 2015-02-23 12:13:32 +0100 |
|---|---|---|
| committer | Horus_Arch | 2015-02-23 12:13:32 +0100 |
| commit | 70d080b69a1bce3125d8d0b83e23775880241763 (patch) | |
| tree | 6fac80f9291e361045098b2ce9eb0839652e6b42 /app/cache.go | |
| parent | 00b28812fb5ab68156ead5b45b66740a4d5ca688 (diff) | |
| download | statuspage-70d080b69a1bce3125d8d0b83e23775880241763.tar.gz | |
Refactor and more unit tests.
Diffstat (limited to 'app/cache.go')
| -rw-r--r-- | app/cache.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/app/cache.go b/app/cache.go new file mode 100644 index 0000000..f75f317 --- /dev/null +++ b/app/cache.go @@ -0,0 +1,33 @@ +package main + +import ( + "encoding/json" + "github.com/garyburd/redigo/redis" + "log" +) + +const ( + cache_prefix = "status_" +) + +func CacheHosts(prefix string, h []Host) error { + c := pool.Get() + js, err := json.Marshal(h) + if err != nil { + log.Println("Serizaling to JSON failed.") + return err + } + c.Do("SET", prefix, js) + return nil +} + +func GetCache(key string) (string, error) { + c := pool.Get() + return redis.String(c.Do("GET", key)) +} + +func DelCache(key string) error { + c := pool.Get() + _, err := c.Do("DEL", key) + return err +} |
