mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-20 06:38:45 +05:00
New errors for dispatcher hosts/profile
This commit is contained in:
@@ -40,7 +40,7 @@ type DataDBMock struct {
|
||||
RemStatQueueProfileDrvF func(tenant, id string) (err error)
|
||||
}
|
||||
|
||||
//Storage methods
|
||||
// Storage methods
|
||||
func (dbM *DataDBMock) Close() {}
|
||||
|
||||
func (dbM *DataDBMock) Flush(string) error {
|
||||
@@ -78,7 +78,7 @@ func (dbM *DataDBMock) IsDBEmpty() (resp bool, err error) {
|
||||
return false, utils.ErrNotImplemented
|
||||
}
|
||||
|
||||
//DataDB methods
|
||||
// DataDB methods
|
||||
func (dbM *DataDBMock) HasDataDrv(string, string, string) (bool, error) {
|
||||
return false, utils.ErrNotImplemented
|
||||
}
|
||||
|
||||
@@ -270,7 +270,7 @@ func (dm *DataManager) CacheDataFromDB(prfx string, ids []string, mustBeCached b
|
||||
_, err = dm.GetAPIBan(utils.EmptyString, config.CgrConfig().APIBanCfg().Keys, false, false, true)
|
||||
}
|
||||
if err != nil {
|
||||
if err != utils.ErrNotFound {
|
||||
if err != utils.ErrNotFound && err != utils.ErrDSPProfileNotFound && err != utils.ErrDSPHostNotFound {
|
||||
return utils.NewCGRError(utils.DataManager,
|
||||
utils.ServerErrorCaps,
|
||||
err.Error(),
|
||||
@@ -2768,7 +2768,7 @@ func (dm *DataManager) GetDispatcherProfile(tenant, id string, cacheRead, cacheW
|
||||
if cacheRead {
|
||||
if x, ok := Cache.Get(utils.CacheDispatcherProfiles, tntID); ok {
|
||||
if x == nil {
|
||||
return nil, utils.ErrNotFound
|
||||
return nil, utils.ErrDSPProfileNotFound
|
||||
}
|
||||
return x.(*DispatcherProfile), nil
|
||||
}
|
||||
@@ -2779,7 +2779,7 @@ func (dm *DataManager) GetDispatcherProfile(tenant, id string, cacheRead, cacheW
|
||||
}
|
||||
dpp, err = dm.dataDB.GetDispatcherProfileDrv(tenant, id)
|
||||
if err != nil {
|
||||
if itm := config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherProfiles]; err == utils.ErrNotFound && itm.Remote {
|
||||
if itm := config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherProfiles]; err == utils.ErrDSPProfileNotFound && itm.Remote {
|
||||
if err = dm.connMgr.Call(config.CgrConfig().DataDbCfg().RmtConns, nil,
|
||||
utils.ReplicatorSv1GetDispatcherProfile,
|
||||
&utils.TenantIDWithAPIOpts{
|
||||
@@ -2793,7 +2793,7 @@ func (dm *DataManager) GetDispatcherProfile(tenant, id string, cacheRead, cacheW
|
||||
}
|
||||
if err != nil {
|
||||
err = utils.CastRPCErr(err)
|
||||
if err == utils.ErrNotFound && cacheWrite {
|
||||
if err == utils.ErrDSPProfileNotFound && cacheWrite {
|
||||
if errCh := Cache.Set(utils.CacheDispatcherProfiles, tntID, nil, nil,
|
||||
cacheCommit(transactionID), transactionID); errCh != nil {
|
||||
return nil, errCh
|
||||
@@ -2824,7 +2824,7 @@ func (dm *DataManager) SetDispatcherProfile(dpp *DispatcherProfile, withIndex bo
|
||||
}
|
||||
}
|
||||
oldDpp, err := dm.GetDispatcherProfile(dpp.Tenant, dpp.ID, true, false, utils.NonTransactional)
|
||||
if err != nil && err != utils.ErrNotFound {
|
||||
if err != nil && err != utils.ErrDSPProfileNotFound {
|
||||
return err
|
||||
}
|
||||
if err = dm.DataDB().SetDispatcherProfileDrv(dpp); err != nil {
|
||||
@@ -2860,14 +2860,14 @@ func (dm *DataManager) RemoveDispatcherProfile(tenant, id string, withIndex bool
|
||||
return utils.ErrNoDatabaseConn
|
||||
}
|
||||
oldDpp, err := dm.GetDispatcherProfile(tenant, id, true, false, utils.NonTransactional)
|
||||
if err != nil && err != utils.ErrNotFound {
|
||||
if err != nil && err != utils.ErrDSPProfileNotFound {
|
||||
return err
|
||||
}
|
||||
if err = dm.DataDB().RemoveDispatcherProfileDrv(tenant, id); err != nil {
|
||||
return
|
||||
}
|
||||
if oldDpp == nil {
|
||||
return utils.ErrNotFound
|
||||
return utils.ErrDSPProfileNotFound
|
||||
}
|
||||
if withIndex {
|
||||
if err = removeIndexFiltersItem(dm, utils.CacheDispatcherFilterIndexes, tenant, id, oldDpp.FilterIDs); err != nil {
|
||||
@@ -2899,7 +2899,7 @@ func (dm *DataManager) GetDispatcherHost(tenant, id string, cacheRead, cacheWrit
|
||||
if cacheRead {
|
||||
if x, ok := Cache.Get(utils.CacheDispatcherHosts, tntID); ok {
|
||||
if x == nil {
|
||||
return nil, utils.ErrNotFound
|
||||
return nil, utils.ErrDSPHostNotFound
|
||||
}
|
||||
return x.(*DispatcherHost), nil
|
||||
}
|
||||
@@ -2910,7 +2910,7 @@ func (dm *DataManager) GetDispatcherHost(tenant, id string, cacheRead, cacheWrit
|
||||
}
|
||||
dH, err = dm.dataDB.GetDispatcherHostDrv(tenant, id)
|
||||
if err != nil {
|
||||
if itm := config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherHosts]; err == utils.ErrNotFound && itm.Remote {
|
||||
if itm := config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherHosts]; err == utils.ErrDSPHostNotFound && itm.Remote {
|
||||
if err = dm.connMgr.Call(config.CgrConfig().DataDbCfg().RmtConns, nil,
|
||||
utils.ReplicatorSv1GetDispatcherHost,
|
||||
&utils.TenantIDWithAPIOpts{
|
||||
@@ -2924,7 +2924,7 @@ func (dm *DataManager) GetDispatcherHost(tenant, id string, cacheRead, cacheWrit
|
||||
}
|
||||
if err != nil {
|
||||
err = utils.CastRPCErr(err)
|
||||
if err == utils.ErrNotFound && cacheWrite {
|
||||
if err == utils.ErrDSPHostNotFound && cacheWrite {
|
||||
if errCh := Cache.Set(utils.CacheDispatcherHosts, tntID, nil, nil,
|
||||
cacheCommit(transactionID), transactionID); errCh != nil {
|
||||
return nil, errCh
|
||||
@@ -2968,14 +2968,14 @@ func (dm *DataManager) RemoveDispatcherHost(tenant, id string) (err error) {
|
||||
return utils.ErrNoDatabaseConn
|
||||
}
|
||||
oldDpp, err := dm.GetDispatcherHost(tenant, id, true, false, utils.NonTransactional)
|
||||
if err != nil && err != utils.ErrNotFound {
|
||||
if err != nil && err != utils.ErrDSPHostNotFound {
|
||||
return err
|
||||
}
|
||||
if err = dm.DataDB().RemoveDispatcherHostDrv(tenant, id); err != nil {
|
||||
return
|
||||
}
|
||||
if oldDpp == nil {
|
||||
return utils.ErrNotFound
|
||||
return utils.ErrDSPHostNotFound
|
||||
}
|
||||
if itm := config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherHosts]; itm.Replicate {
|
||||
replicate(dm.connMgr, config.CgrConfig().DataDbCfg().RplConns,
|
||||
|
||||
@@ -372,7 +372,7 @@ func getIHObjFromCache(dm *DataManager, objCache *ltcache.Cache, indxType, tnt,
|
||||
var filtIDs []string
|
||||
var contexts *[]string
|
||||
if filtIDs, contexts, err = getFiltersAndContexts(dm, indxType, tnt, id); err != nil {
|
||||
if err == utils.ErrNotFound {
|
||||
if err == utils.ErrNotFound || err == utils.ErrDSPProfileNotFound || err == utils.ErrDSPHostNotFound {
|
||||
objCache.Set(cacheKey, nil, nil)
|
||||
}
|
||||
return
|
||||
@@ -581,7 +581,7 @@ func GetFltrIdxHealth(dm *DataManager, fltrCache, fltrIdxCache, objCache *ltcach
|
||||
for itmID := range idx {
|
||||
var obj *objFIH
|
||||
if obj, err = getIHObjFromCache(dm, objCache, indxType, tnt, itmID); err != nil {
|
||||
if err != utils.ErrNotFound {
|
||||
if err != utils.ErrNotFound && err != utils.ErrDSPHostNotFound && err != utils.ErrDSPProfileNotFound {
|
||||
return
|
||||
}
|
||||
missingObj.Add(utils.ConcatenatedKey(tnt, itmID))
|
||||
|
||||
@@ -726,7 +726,7 @@ func (iDB *InternalDB) RemoveChargerProfileDrv(tenant, id string) (err error) {
|
||||
func (iDB *InternalDB) GetDispatcherProfileDrv(tenant, id string) (dpp *DispatcherProfile, err error) {
|
||||
x, ok := iDB.db.Get(utils.CacheDispatcherProfiles, utils.ConcatenatedKey(tenant, id))
|
||||
if !ok || x == nil {
|
||||
return nil, utils.ErrNotFound
|
||||
return nil, utils.ErrDSPProfileNotFound
|
||||
}
|
||||
return x.(*DispatcherProfile), nil
|
||||
}
|
||||
@@ -764,7 +764,7 @@ func (iDB *InternalDB) SetLoadIDsDrv(loadIDs map[string]int64) (err error) {
|
||||
func (iDB *InternalDB) GetDispatcherHostDrv(tenant, id string) (dpp *DispatcherHost, err error) {
|
||||
x, ok := iDB.db.Get(utils.CacheDispatcherHosts, utils.ConcatenatedKey(tenant, id))
|
||||
if !ok || x == nil {
|
||||
return nil, utils.ErrNotFound
|
||||
return nil, utils.ErrDSPHostNotFound
|
||||
}
|
||||
return x.(*DispatcherHost), nil
|
||||
}
|
||||
|
||||
@@ -1774,7 +1774,7 @@ func (ms *MongoStorage) GetDispatcherProfileDrv(tenant, id string) (r *Dispatche
|
||||
if err := cur.Decode(r); err != nil {
|
||||
r = nil
|
||||
if err == mongo.ErrNoDocuments {
|
||||
return utils.ErrNotFound
|
||||
return utils.ErrDSPProfileNotFound
|
||||
}
|
||||
return err
|
||||
}
|
||||
@@ -1810,7 +1810,7 @@ func (ms *MongoStorage) GetDispatcherHostDrv(tenant, id string) (r *DispatcherHo
|
||||
if err := cur.Decode(r); err != nil {
|
||||
r = nil
|
||||
if err == mongo.ErrNoDocuments {
|
||||
return utils.ErrNotFound
|
||||
return utils.ErrDSPHostNotFound
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -1080,7 +1080,7 @@ func (rs *RedisStorage) GetDispatcherProfileDrv(tenant, id string) (r *Dispatche
|
||||
if err = rs.Cmd(&values, redis_GET, utils.DispatcherProfilePrefix+utils.ConcatenatedKey(tenant, id)); err != nil {
|
||||
return
|
||||
} else if len(values) == 0 {
|
||||
err = utils.ErrNotFound
|
||||
err = utils.ErrDSPProfileNotFound
|
||||
return
|
||||
}
|
||||
err = rs.ms.Unmarshal(values, &r)
|
||||
@@ -1104,7 +1104,7 @@ func (rs *RedisStorage) GetDispatcherHostDrv(tenant, id string) (r *DispatcherHo
|
||||
if err = rs.Cmd(&values, redis_GET, utils.DispatcherHostPrefix+utils.ConcatenatedKey(tenant, id)); err != nil {
|
||||
return
|
||||
} else if len(values) == 0 {
|
||||
err = utils.ErrNotFound
|
||||
err = utils.ErrDSPHostNotFound
|
||||
return
|
||||
}
|
||||
err = rs.ms.Unmarshal(values, &r)
|
||||
|
||||
@@ -2162,7 +2162,7 @@ func testOnStorITDispatcherProfile(t *testing.T) {
|
||||
Weight: 20,
|
||||
}
|
||||
if _, rcvErr := onStor.GetDispatcherProfile("cgrates.org", "Dsp1",
|
||||
true, false, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrNotFound {
|
||||
true, false, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrDSPProfileNotFound {
|
||||
t.Error(rcvErr)
|
||||
}
|
||||
if err := onStor.SetDispatcherProfile(dpp, false); err != nil {
|
||||
@@ -2199,7 +2199,7 @@ func testOnStorITDispatcherProfile(t *testing.T) {
|
||||
}
|
||||
//check database if removed
|
||||
if _, rcvErr := onStor.GetDispatcherProfile("cgrates.org", "Dsp1",
|
||||
false, false, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrNotFound {
|
||||
false, false, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrDSPProfileNotFound {
|
||||
t.Error(rcvErr)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user