Commit f657509a authored by astaxie's avatar astaxie

Merge pull request #693 from fuxiaohei/develop

code style simplify
parents 15759f60 77c40e6f
......@@ -7,7 +7,7 @@
// @license http://github.com/astaxie/beego/blob/master/LICENSE
//
// @authors astaxie
package cache
package redis
import (
"encoding/json"
......@@ -46,23 +46,21 @@ func (rc *RedisCache) do(commandName string, args ...interface{}) (reply interfa
// Get cache from redis.
func (rc *RedisCache) Get(key string) interface{} {
v, err := rc.do("GET", key)
if err != nil {
return nil
if v, err := rc.do("GET", key); err == nil {
return v
}
return v
return nil
}
// put cache to redis.
func (rc *RedisCache) Put(key string, val interface{}, timeout int64) error {
_, err := rc.do("SET", key, val)
if err != nil {
return nil
var err error
if _, err = rc.do("SET", key, val); err != nil {
return err
}
_, err = rc.do("HSET", rc.key, key, true)
if err != nil {
return nil
if _, err = rc.do("HSET", rc.key, key, true); err != nil {
return err
}
_, err = rc.do("EXPIRE", key, timeout)
return err
......@@ -70,9 +68,9 @@ func (rc *RedisCache) Put(key string, val interface{}, timeout int64) error {
// delete cache in redis.
func (rc *RedisCache) Delete(key string) error {
_, err := rc.do("DEL", key)
if err != nil {
return nil
var err error
if _, err = rc.do("DEL", key); err != nil {
return err
}
_, err = rc.do("HDEL", rc.key, key)
return err
......@@ -85,8 +83,7 @@ func (rc *RedisCache) IsExist(key string) bool {
return false
}
if v == false {
_, err := rc.do("HDEL", rc.key, key)
if err != nil {
if _, err = rc.do("HDEL", rc.key, key); err != nil {
return false
}
}
......@@ -108,10 +105,12 @@ func (rc *RedisCache) Decr(key string) error {
// clean all cache in redis. delete this redis collection.
func (rc *RedisCache) ClearAll() error {
cachedKeys, err := redis.Strings(rc.do("HKEYS", rc.key))
if err != nil {
return err
}
for _, str := range cachedKeys {
_, err := rc.do("DEL", str)
if err != nil {
return nil
if _, err = rc.do("DEL", str); err != nil {
return err
}
}
_, err = rc.do("DEL", rc.key)
......@@ -140,26 +139,21 @@ func (rc *RedisCache) StartAndGC(config string) error {
c := rc.p.Get()
defer c.Close()
if err := c.Err(); err != nil {
return err
}
return nil
return c.Err()
}
// connect to redis.
func (rc *RedisCache) connectInit() {
dialFunc := func() (c redis.Conn, err error) {
c, err = redis.Dial("tcp", rc.conninfo)
return
}
// initialize a new pool
rc.p = &redis.Pool{
MaxIdle: 3,
IdleTimeout: 180 * time.Second,
Dial: func() (redis.Conn, error) {
c, err := redis.Dial("tcp", rc.conninfo)
if err != nil {
return nil, err
}
return c, nil
},
Dial: dialFunc,
}
}
......
......@@ -8,7 +8,7 @@
// @authors astaxie
package cache
package redis
import (
"testing"
......@@ -20,7 +20,7 @@ import (
)
func TestRedisCache(t *testing.T) {
bm, err := cache.NewCache("redis", `{"conn": "127.0.0.1:6379"}`)
bm, err := cache.NewCache("redis", `{"conn": "127.0.0.1:6379"}`)
if err != nil {
t.Error("init err")
}
......@@ -48,7 +48,7 @@ func TestRedisCache(t *testing.T) {
t.Error("Incr Error", err)
}
if v, _ := redis.Int(bm.Get("astaxie"), err); v != 2 {
if v, _ := redis.Int(bm.Get("astaxie"), err); v != 2 {
t.Error("get err")
}
......@@ -74,8 +74,8 @@ func TestRedisCache(t *testing.T) {
if v, _ := redis.String(bm.Get("astaxie"), err); v != "author" {
t.Error("get err")
}
// test clear all
if err = bm.ClearAll(); err != nil {
t.Error("clear all err")
}
// test clear all
if err = bm.ClearAll(); err != nil {
t.Error("clear all err")
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment