mirror of
https://github.com/astaxie/beego.git
synced 2024-11-26 13:11:28 +00:00
commit
ca1fd96ea5
11
cache/cache.go
vendored
11
cache/cache.go
vendored
@ -51,7 +51,7 @@ func Register(name string, adapter Cache) {
|
|||||||
if adapter == nil {
|
if adapter == nil {
|
||||||
panic("cache: Register adapter is nil")
|
panic("cache: Register adapter is nil")
|
||||||
}
|
}
|
||||||
if _, dup := adapters[name]; dup {
|
if _, ok := adapters[name]; ok {
|
||||||
panic("cache: Register called twice for adapter " + name)
|
panic("cache: Register called twice for adapter " + name)
|
||||||
}
|
}
|
||||||
adapters[name] = adapter
|
adapters[name] = adapter
|
||||||
@ -60,14 +60,15 @@ func Register(name string, adapter Cache) {
|
|||||||
// Create a new cache driver by adapter name and config string.
|
// Create a new cache driver by adapter name and config string.
|
||||||
// config need to be correct JSON as string: {"interval":360}.
|
// config need to be correct JSON as string: {"interval":360}.
|
||||||
// it will start gc automatically.
|
// it will start gc automatically.
|
||||||
func NewCache(adapterName, config string) (Cache, error) {
|
func NewCache(adapterName, config string) (adapter Cache, e error) {
|
||||||
adapter, ok := adapters[adapterName]
|
adapter, ok := adapters[adapterName]
|
||||||
if !ok {
|
if !ok {
|
||||||
return nil, fmt.Errorf("cache: unknown adapter name %q (forgot to import?)", adapterName)
|
e = fmt.Errorf("cache: unknown adapter name %q (forgot to import?)", adapterName)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
err := adapter.StartAndGC(config)
|
err := adapter.StartAndGC(config)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
adapter = nil
|
||||||
}
|
}
|
||||||
return adapter, nil
|
return
|
||||||
}
|
}
|
||||||
|
42
cache/conv.go
vendored
42
cache/conv.go
vendored
@ -22,12 +22,11 @@ func GetString(v interface{}) string {
|
|||||||
case []byte:
|
case []byte:
|
||||||
return string(result)
|
return string(result)
|
||||||
default:
|
default:
|
||||||
if v == nil {
|
if v != nil {
|
||||||
return ""
|
|
||||||
} else {
|
|
||||||
return fmt.Sprintf("%v", result)
|
return fmt.Sprintf("%v", result)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert interface to int.
|
// convert interface to int.
|
||||||
@ -40,12 +39,9 @@ func GetInt(v interface{}) int {
|
|||||||
case int64:
|
case int64:
|
||||||
return int(result)
|
return int(result)
|
||||||
default:
|
default:
|
||||||
d := GetString(v)
|
if d := GetString(v); d != "" {
|
||||||
if d != "" {
|
value, _ := strconv.Atoi(d)
|
||||||
value, err := strconv.Atoi(d)
|
return value
|
||||||
if err == nil {
|
|
||||||
return value
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0
|
return 0
|
||||||
@ -61,12 +57,10 @@ func GetInt64(v interface{}) int64 {
|
|||||||
case int64:
|
case int64:
|
||||||
return result
|
return result
|
||||||
default:
|
default:
|
||||||
d := GetString(v)
|
|
||||||
if d != "" {
|
if d := GetString(v); d != "" {
|
||||||
result, err := strconv.ParseInt(d, 10, 64)
|
value, _ := strconv.ParseInt(d, 10, 64)
|
||||||
if err == nil {
|
return value
|
||||||
return result
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0
|
return 0
|
||||||
@ -78,12 +72,9 @@ func GetFloat64(v interface{}) float64 {
|
|||||||
case float64:
|
case float64:
|
||||||
return result
|
return result
|
||||||
default:
|
default:
|
||||||
d := GetString(v)
|
if d := GetString(v); d != "" {
|
||||||
if d != "" {
|
value, _ := strconv.ParseFloat(d, 64)
|
||||||
value, err := strconv.ParseFloat(d, 64)
|
return value
|
||||||
if err == nil {
|
|
||||||
return value
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0
|
return 0
|
||||||
@ -95,12 +86,9 @@ func GetBool(v interface{}) bool {
|
|||||||
case bool:
|
case bool:
|
||||||
return result
|
return result
|
||||||
default:
|
default:
|
||||||
d := GetString(v)
|
if d := GetString(v); d != "" {
|
||||||
if d != "" {
|
value, _ := strconv.ParseBool(d)
|
||||||
result, err := strconv.ParseBool(d)
|
return value
|
||||||
if err == nil {
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
|
Loading…
Reference in New Issue
Block a user