mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 10:06:24 +05:00
added get/set methods for ranking in datamanager
This commit is contained in:
committed by
Dan Christian Bogos
parent
c1b0efd455
commit
88805ac074
@@ -142,6 +142,22 @@ func (rplSv1 *ReplicatorSv1) GetRankingProfile(ctx *context.Context, tntID *util
|
||||
return nil
|
||||
}
|
||||
|
||||
// GetRanking is the remote method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) GetRanking(ctx *context.Context, tntID *utils.TenantIDWithAPIOpts, reply *engine.Ranking) error {
|
||||
engine.UpdateReplicationFilters(utils.RankingPrefix, tntID.TenantID.TenantID(), utils.IfaceAsString(tntID.APIOpts[utils.RemoteHostOpt]))
|
||||
rcv, err := rplSv1.dm.DataDB().GetRankingDrv(tntID.Tenant, tntID.ID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
reply.ID = rcv.ID
|
||||
reply.Tenant = rcv.Tenant
|
||||
reply.Sorting = rcv.Sorting
|
||||
reply.StatMetrics = rcv.StatMetrics
|
||||
reply.SortedStatIDs = rcv.SortedStatIDs
|
||||
reply.SortingParameters = rcv.SortingParameters
|
||||
return nil
|
||||
}
|
||||
|
||||
// GetTrend is the remote method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) GetTrend(ctx *context.Context, tntID *utils.TenantIDWithAPIOpts, reply *engine.Trend) error {
|
||||
engine.UpdateReplicationFilters(utils.TrendPrefix, tntID.TenantID.TenantID(), utils.IfaceAsString(tntID.APIOpts[utils.RemoteHostOpt]))
|
||||
@@ -453,6 +469,19 @@ func (rplSv1 *ReplicatorSv1) SetStatQueueProfile(ctx *context.Context, sq *engin
|
||||
return
|
||||
}
|
||||
|
||||
// SetRanking is the replication method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) SetRanking(ctx *context.Context, arg *engine.RankingWithAPIOpts, reply *string) (err error) {
|
||||
if err = rplSv1.dm.DataDB().SetRankingDrv(arg.Ranking); err != nil {
|
||||
return
|
||||
}
|
||||
if err = rplSv1.v1.CallCache(utils.IfaceAsString(arg.APIOpts[utils.CacheOpt]),
|
||||
arg.Tenant, utils.CacheRankings, arg.TenantID(), utils.EmptyString, nil, nil, arg.APIOpts); err != nil {
|
||||
return
|
||||
}
|
||||
*reply = utils.OK
|
||||
return
|
||||
}
|
||||
|
||||
// SetRankingQueueProfile is the replication method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) SetRankingProfile(ctx *context.Context, sg *engine.RankingProfileWithAPIOpts, reply *string) (err error) {
|
||||
if err = rplSv1.dm.DataDB().SetRankingProfileDrv(sg.RankingProfile); err != nil {
|
||||
@@ -903,6 +932,19 @@ func (rplSv1 *ReplicatorSv1) RemoveRankingProfile(ctx *context.Context, args *ut
|
||||
return
|
||||
}
|
||||
|
||||
// RemoveRanking is the replication method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) RemoveRanking(ctx *context.Context, args *utils.TenantIDWithAPIOpts, reply *string) (err error) {
|
||||
if err = rplSv1.dm.DataDB().RemoveRankingDrv(args.Tenant, args.ID); err != nil {
|
||||
return
|
||||
}
|
||||
if err = rplSv1.v1.CallCache(utils.IfaceAsString(args.APIOpts[utils.CacheOpt]),
|
||||
args.Tenant, utils.CacheTrends, args.TenantID.TenantID(), utils.EmptyString, nil, nil, args.APIOpts); err != nil {
|
||||
return
|
||||
}
|
||||
*reply = utils.OK
|
||||
return
|
||||
}
|
||||
|
||||
// RemoveTrend is the replication method coresponding to the dataDb driver method
|
||||
func (rplSv1 *ReplicatorSv1) RemoveTrend(ctx *context.Context, args *utils.TenantIDWithAPIOpts, reply *string) (err error) {
|
||||
if err = rplSv1.dm.DataDB().RemoveTrendDrv(args.Tenant, args.ID); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user