mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
storage better error checking
This commit is contained in:
@@ -28,6 +28,7 @@ The struture that is saved to storage.
|
||||
type ActivationPeriod struct {
|
||||
ActivationTime time.Time
|
||||
Intervals []*Interval
|
||||
Moaca string
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -82,10 +82,11 @@ func (ks *KyotoStorage) GetActivationPeriods(key string) (aps []*ActivationPerio
|
||||
defer ks.mux.Unlock()
|
||||
|
||||
values, err := ks.db.Get([]byte(key))
|
||||
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
ks.dec.Decode(&aps)
|
||||
if err == nil {
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
err = ks.dec.Decode(&aps)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -103,10 +104,11 @@ func (ks *KyotoStorage) GetDestination(key string) (dest *Destination, err error
|
||||
defer ks.mux.Unlock()
|
||||
|
||||
values, err := ks.db.Get([]byte(key))
|
||||
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
ks.dec.Decode(&dest)
|
||||
if err == nil {
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
err = ks.dec.Decode(&dest)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -124,10 +126,11 @@ func (ks *KyotoStorage) GetTariffPlan(key string) (tp *TariffPlan, err error) {
|
||||
defer ks.mux.Unlock()
|
||||
|
||||
values, err := ks.db.Get([]byte(key))
|
||||
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
ks.dec.Decode(&tp)
|
||||
if err == nil {
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
err = ks.dec.Decode(&tp)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -145,9 +148,10 @@ func (ks *KyotoStorage) GetUserBudget(key string) (ub *UserBudget, err error) {
|
||||
defer ks.mux.Unlock()
|
||||
|
||||
values, err := ks.db.Get([]byte(key))
|
||||
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
ks.dec.Decode(&ub)
|
||||
if err == nil {
|
||||
ks.buf.Reset()
|
||||
ks.buf.Write(values)
|
||||
ks.dec.Decode(&ub)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -80,12 +80,13 @@ func (rs *RedisStorage) GetActivationPeriods(key string) (aps []*ActivationPerio
|
||||
//rs.db.Select(rs.dbNb)
|
||||
rs.mux.Lock()
|
||||
defer rs.mux.Unlock()
|
||||
|
||||
elem, err := rs.db.Get(key)
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
if err == nil {
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
|
||||
rs.dec.Decode(&aps)
|
||||
err = rs.dec.Decode(&aps)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -105,9 +106,11 @@ func (rs *RedisStorage) GetDestination(key string) (dest *Destination, err error
|
||||
defer rs.mux.Unlock()
|
||||
|
||||
elem, err := rs.db.Get(key)
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
rs.dec.Decode(&dest)
|
||||
if err == nil {
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
err = rs.dec.Decode(&dest)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -127,9 +130,11 @@ func (rs *RedisStorage) GetTariffPlan(key string) (tp *TariffPlan, err error) {
|
||||
defer rs.mux.Unlock()
|
||||
|
||||
elem, err := rs.db.Get(key)
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
rs.dec.Decode(&tp)
|
||||
if err == nil {
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
err = rs.dec.Decode(&tp)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -149,8 +154,10 @@ func (rs *RedisStorage) GetUserBudget(key string) (ub *UserBudget, err error) {
|
||||
defer rs.mux.Unlock()
|
||||
|
||||
elem, err := rs.db.Get(key)
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
rs.dec.Decode(&ub)
|
||||
if err == nil {
|
||||
rs.buf.Reset()
|
||||
rs.buf.Write(elem.Bytes())
|
||||
err = rs.dec.Decode(&ub)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user