From ea6485cf0a7af989fc7649f59c2e0d91fd9a6cec Mon Sep 17 00:00:00 2001 From: TeoV Date: Thu, 21 Nov 2019 05:11:52 -0500 Subject: [PATCH] Implement Replication for Remove methods --- apier/v1/replicator.go | 168 +++++++++++++++++++++++++++++++++++++++++ engine/datamanager.go | 116 +++++++++++++++++++++++++++- utils/consts.go | 131 ++++++++++++++++++-------------- 3 files changed, 358 insertions(+), 57 deletions(-) diff --git a/apier/v1/replicator.go b/apier/v1/replicator.go index 2d251f35f..2ddf651fd 100644 --- a/apier/v1/replicator.go +++ b/apier/v1/replicator.go @@ -526,6 +526,174 @@ func (rplSv1 *ReplicatorSv1) SetLoadIDs(loadIDs map[string]int64, reply *string) return nil } +func (rplSv1 *ReplicatorSv1) RemoveDestination(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveDestinationDrv(id, utils.NonTransactional); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveAccount(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveAccountDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveStatQueue(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemStoredStatQueueDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveFilter(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveFilterDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveThresholdProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemThresholdProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveStatQueueProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemStatQueueProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveTiming(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveTimingDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveResource(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveResourceDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveResourceProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveResourceProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveActionTriggers(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveActionTriggersDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveSharedGroup(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveSharedGroupDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveActions(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveActionsDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveActionPlan(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveActionPlanDrv(id, utils.NonTransactional); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemAccountActionPlans(args *engine.RemAccountActionPlansArgs, reply *string) error { + if err := rplSv1.dm.DataDB().RemAccountActionPlansDrv(args.AcntID, args.ApIDs); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveRatingPlan(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveRatingPlanDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveRatingProfile(id string, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveRatingProfileDrv(id); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveSupplierProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveSupplierProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveAttributeProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveAttributeProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveChargerProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveChargerProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveDispatcherProfile(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveDispatcherProfileDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + +func (rplSv1 *ReplicatorSv1) RemoveDispatcherHost(args *utils.TenantID, reply *string) error { + if err := rplSv1.dm.DataDB().RemoveDispatcherHostDrv(args.Tenant, args.ID); err != nil { + return err + } + *reply = utils.OK + return nil +} + func (rplSv1 *ReplicatorSv1) Ping(ign *utils.CGREventWithArgDispatcher, reply *string) error { *reply = utils.Pong return nil diff --git a/engine/datamanager.go b/engine/datamanager.go index 1e36d5a3c..4a5c6624e 100644 --- a/engine/datamanager.go +++ b/engine/datamanager.go @@ -348,7 +348,15 @@ func (dm *DataManager) SetDestination(dest *Destination, transactionID string) ( } func (dm *DataManager) RemoveDestination(destID string, transactionID string) (err error) { - return dm.dataDB.RemoveDestinationDrv(destID, transactionID) + if err = dm.dataDB.RemoveDestinationDrv(destID, transactionID); err != nil { + return + } + if config.CgrConfig().DataDbCfg().Items[utils.MetaDestinations].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveDestination, + destID, &reply) + } + return } func (dm *DataManager) SetReverseDestination(dest *Destination, transactionID string) (err error) { @@ -423,6 +431,11 @@ func (dm *DataManager) RemoveAccount(id string) (err error) { if err = dm.dataDB.RemoveAccountDrv(id); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaAccounts].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveAccount, + id, &reply) + } return } @@ -492,6 +505,11 @@ func (dm *DataManager) RemoveStatQueue(tenant, id string, transactionID string) if err = dm.dataDB.RemStoredStatQueueDrv(tenant, id); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaStatQueues].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveStatQueue, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -557,6 +575,11 @@ func (dm *DataManager) RemoveFilter(tenant, id, transactionID string) (err error if err = dm.DataDB().RemoveFilterDrv(tenant, id); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaFilters].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveFilter, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -715,7 +738,11 @@ func (dm *DataManager) RemoveThresholdProfile(tenant, id, return } } - + if config.CgrConfig().DataDbCfg().Items[utils.MetaThresholdProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveThresholdProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -812,6 +839,11 @@ func (dm *DataManager) RemoveStatQueueProfile(tenant, id, return } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaStatQueueProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveStatQueueProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -872,6 +904,11 @@ func (dm *DataManager) RemoveTiming(id, transactionID string) (err error) { } Cache.Remove(utils.CacheTimings, id, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaTimings].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveTiming, + id, &reply) + } return } @@ -930,6 +967,11 @@ func (dm *DataManager) RemoveResource(tenant, id, transactionID string) (err err if err = dm.DataDB().RemoveResourceDrv(tenant, id); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaResources].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveResource, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -1025,6 +1067,11 @@ func (dm *DataManager) RemoveResourceProfile(tenant, id, transactionID string, w return } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaResourceProfile].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveResourceProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -1067,6 +1114,11 @@ func (dm *DataManager) RemoveActionTriggers(id, transactionID string) (err error } Cache.Remove(utils.CacheActionTriggers, id, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaActionTriggers].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveActionTriggers, + id, &reply) + } return } @@ -1153,6 +1205,11 @@ func (dm *DataManager) RemoveSharedGroup(id, transactionID string) (err error) { } Cache.Remove(utils.CacheSharedGroups, id, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaSharedGroups].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveSharedGroup, + id, &reply) + } return } @@ -1221,6 +1278,11 @@ func (dm *DataManager) RemoveActions(key, transactionID string) (err error) { } Cache.Remove(utils.CacheActions, key, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaActions].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveActions, + key, &reply) + } return } @@ -1283,6 +1345,11 @@ func (dm *DataManager) RemoveActionPlan(key string, transactionID string) (err e if err = dm.dataDB.RemoveActionPlanDrv(key, transactionID); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaActionPlans].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveActionPlan, + key, &reply) + } return } func (dm *DataManager) GetAccountActionPlans(acntID string, @@ -1326,10 +1393,20 @@ func (dm *DataManager) SetAccountActionPlans(acntID string, aPlIDs []string, ove return } +type RemAccountActionPlansArgs struct { + AcntID string + ApIDs []string +} + func (dm *DataManager) RemAccountActionPlans(acntID string, apIDs []string) (err error) { if err = dm.dataDB.RemAccountActionPlansDrv(acntID, apIDs); err != nil { return } + if config.CgrConfig().DataDbCfg().Items[utils.MetaAccountActionPlans].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemAccountActionPlans, + &RemAccountActionPlansArgs{AcntID: acntID, ApIDs: apIDs}, &reply) + } return } func (dm *DataManager) GetRatingPlan(key string, skipCache bool, @@ -1388,6 +1465,11 @@ func (dm *DataManager) RemoveRatingPlan(key string, transactionID string) (err e } Cache.Remove(utils.CacheRatingPlans, key, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaRatingPlans].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveRatingPlan, + key, &reply) + } return } @@ -1449,6 +1531,11 @@ func (dm *DataManager) RemoveRatingProfile(key string, } Cache.Remove(utils.CacheRatingProfiles, key, cacheCommit(transactionID), transactionID) + if config.CgrConfig().DataDbCfg().Items[utils.MetaRatingProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveRatingProfile, + key, &reply) + } return } @@ -1655,6 +1742,11 @@ func (dm *DataManager) RemoveSupplierProfile(tenant, id, transactionID string, w return } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaSupplierProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveSupplierProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -1763,6 +1855,11 @@ func (dm *DataManager) RemoveAttributeProfile(tenant, id string, transactionID s } } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaAttributeProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveAttributeProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -1859,6 +1956,11 @@ func (dm *DataManager) RemoveChargerProfile(tenant, id string, return } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaChargerProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveChargerProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -1964,6 +2066,11 @@ func (dm *DataManager) RemoveDispatcherProfile(tenant, id string, } } } + if config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherProfiles].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveDispatcherProfile, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } @@ -2040,6 +2147,11 @@ func (dm *DataManager) RemoveDispatcherHost(tenant, id string, if oldDpp == nil { return utils.ErrNotFound } + if config.CgrConfig().DataDbCfg().Items[utils.MetaDispatcherHosts].Replicate { + var reply string + dm.rplConns.Call(utils.ReplicatorSv1RemoveDispatcherHost, + &utils.TenantID{Tenant: tenant, ID: id}, &reply) + } return } diff --git a/utils/consts.go b/utils/consts.go index 6e090a976..0b9988311 100755 --- a/utils/consts.go +++ b/utils/consts.go @@ -790,61 +790,82 @@ const ( // ReplicatorSv1 APIs const ( - ReplicatorSv1 = "ReplicatorSv1" - ReplicatorSv1Ping = "ReplicatorSv1.Ping" - ReplicatorSv1GetAccount = "ReplicatorSv1.GetAccount" - ReplicatorSv1GetDestination = "ReplicatorSv1.GetDestination" - ReplicatorSv1GetReverseDestination = "ReplicatorSv1.GetReverseDestination" - ReplicatorSv1GetStatQueue = "ReplicatorSv1.GetStatQueue" - ReplicatorSv1GetFilter = "ReplicatorSv1.GetFilter" - ReplicatorSv1GetThreshold = "ReplicatorSv1.GetThreshold" - ReplicatorSv1GetThresholdProfile = "ReplicatorSv1.GetThresholdProfile" - ReplicatorSv1GetStatQueueProfile = "ReplicatorSv1.GetStatQueueProfile" - ReplicatorSv1GetTiming = "ReplicatorSv1.GetTiming" - ReplicatorSv1GetResource = "ReplicatorSv1.GetResource" - ReplicatorSv1GetResourceProfile = "ReplicatorSv1.GetResourceProfile" - ReplicatorSv1GetActionTriggers = "ReplicatorSv1.GetActionTriggers" - ReplicatorSv1GetShareGroup = "ReplicatorSv1.GetShareGroup" - ReplicatorSv1GetActions = "ReplicatorSv1.GetActions" - ReplicatorSv1GetActionPlan = "ReplicatorSv1.GetActionPlan" - ReplicatorSv1GetAllActionPlans = "ReplicatorSv1.GetAllActionPlans" - ReplicatorSv1GetAccountActionPlans = "ReplicatorSv1.GetAccountActionPlans" - ReplicatorSv1GetRatingPlan = "ReplicatorSv1.GetRatingPlan" - ReplicatorSv1GetRatingProfile = "ReplicatorSv1.GetRatingProfile" - ReplicatorSv1GetSupplierProfile = "ReplicatorSv1.GetSupplierProfile" - ReplicatorSv1GetAttributeProfile = "ReplicatorSv1.GetAttributeProfile" - ReplicatorSv1GetChargerProfile = "ReplicatorSv1.GetChargerProfile" - ReplicatorSv1GetDispatcherProfile = "ReplicatorSv1.GetDispatcherProfile" - ReplicatorSv1GetDispatcherHost = "ReplicatorSv1.GetDispatcheHost" - ReplicatorSv1GetItemLoadIDs = "ReplicatorSv1.GetItemLoadIDs" - ReplicatorSv1GetFilterIndexes = "ReplicatorSv1.GetFilterIndexes" - ReplicatorSv1MatchFilterIndex = "ReplicatorSv1.MatchFilterIndex" - ReplicatorSv1SetThresholdProfile = "ReplicatorSv1.SetThresholdProfile" - ReplicatorSv1SetThreshold = "ReplicatorSv1.SetThreshold" - ReplicatorSv1SetFilterIndexes = "ReplicatorSv1.SetFilterIndexes" - ReplicatorSv1Account = "ReplicatorSv1.SetAccount" - ReplicatorSv1SetDestination = "ReplicatorSv1.SetDestination" - ReplicatorSv1SetReverseDestination = "ReplicatorSv1.SetReverseDestination" - ReplicatorSv1SetStatQueue = "ReplicatorSv1.SetStatQueue" - ReplicatorSv1SetFilter = "ReplicatorSv1.SetFilter" - ReplicatorSv1SetStatQueueProfile = "ReplicatorSv1.SetStatQueueProfile" - ReplicatorSv1SetTiming = "ReplicatorSv1.SetTiming" - ReplicatorSv1SetResource = "ReplicatorSv1.SetResource" - ReplicatorSv1SetResourceProfile = "ReplicatorSv1.SetResourceProfile" - ReplicatorSv1SetActionTriggers = "ReplicatorSv1.SetActionTriggers" - ReplicatorSv1SetSharedGroup = "ReplicatorSv1.SetSharedGroup" - ReplicatorSv1SetActions = "ReplicatorSv1.SetActions" - ReplicatorSv1SetActionPlan = "ReplicatorSv1.SetActionPlan" - ReplicatorSv1SetAccountActionPlans = "ReplicatorSv1.SetAccountActionPlans" - ReplicatorSv1SetRatingPlan = "ReplicatorSv1.SetRatingPlan" - ReplicatorSv1SetRatingProfile = "ReplicatorSv1.SetRatingProfile" - ReplicatorSv1SetSupplierProfile = "ReplicatorSv1.SetSupplierProfile" - ReplicatorSv1SetAttributeProfile = "ReplicatorSv1.SetAttributeProfile" - ReplicatorSv1SetChargerProfile = "ReplicatorSv1.SetChargerProfile" - ReplicatorSv1SetDispatcherProfile = "ReplicatorSv1.SetDispatcherProfile" - ReplicatorSv1SetDispatcherHost = "ReplicatorSv1.SetDispatcherHost" - ReplicatorSv1SetLoadIDs = "ReplicatorSv1.SetLoadIDs" - ReplicatorSv1RemoveThreshold = "ReplicatorSv1.RemoveThreshold" + ReplicatorSv1 = "ReplicatorSv1" + ReplicatorSv1Ping = "ReplicatorSv1.Ping" + ReplicatorSv1GetAccount = "ReplicatorSv1.GetAccount" + ReplicatorSv1GetDestination = "ReplicatorSv1.GetDestination" + ReplicatorSv1GetReverseDestination = "ReplicatorSv1.GetReverseDestination" + ReplicatorSv1GetStatQueue = "ReplicatorSv1.GetStatQueue" + ReplicatorSv1GetFilter = "ReplicatorSv1.GetFilter" + ReplicatorSv1GetThreshold = "ReplicatorSv1.GetThreshold" + ReplicatorSv1GetThresholdProfile = "ReplicatorSv1.GetThresholdProfile" + ReplicatorSv1GetStatQueueProfile = "ReplicatorSv1.GetStatQueueProfile" + ReplicatorSv1GetTiming = "ReplicatorSv1.GetTiming" + ReplicatorSv1GetResource = "ReplicatorSv1.GetResource" + ReplicatorSv1GetResourceProfile = "ReplicatorSv1.GetResourceProfile" + ReplicatorSv1GetActionTriggers = "ReplicatorSv1.GetActionTriggers" + ReplicatorSv1GetShareGroup = "ReplicatorSv1.GetShareGroup" + ReplicatorSv1GetActions = "ReplicatorSv1.GetActions" + ReplicatorSv1GetActionPlan = "ReplicatorSv1.GetActionPlan" + ReplicatorSv1GetAllActionPlans = "ReplicatorSv1.GetAllActionPlans" + ReplicatorSv1GetAccountActionPlans = "ReplicatorSv1.GetAccountActionPlans" + ReplicatorSv1GetRatingPlan = "ReplicatorSv1.GetRatingPlan" + ReplicatorSv1GetRatingProfile = "ReplicatorSv1.GetRatingProfile" + ReplicatorSv1GetSupplierProfile = "ReplicatorSv1.GetSupplierProfile" + ReplicatorSv1GetAttributeProfile = "ReplicatorSv1.GetAttributeProfile" + ReplicatorSv1GetChargerProfile = "ReplicatorSv1.GetChargerProfile" + ReplicatorSv1GetDispatcherProfile = "ReplicatorSv1.GetDispatcherProfile" + ReplicatorSv1GetDispatcherHost = "ReplicatorSv1.GetDispatcheHost" + ReplicatorSv1GetItemLoadIDs = "ReplicatorSv1.GetItemLoadIDs" + ReplicatorSv1GetFilterIndexes = "ReplicatorSv1.GetFilterIndexes" + ReplicatorSv1MatchFilterIndex = "ReplicatorSv1.MatchFilterIndex" + ReplicatorSv1SetThresholdProfile = "ReplicatorSv1.SetThresholdProfile" + ReplicatorSv1SetThreshold = "ReplicatorSv1.SetThreshold" + ReplicatorSv1SetFilterIndexes = "ReplicatorSv1.SetFilterIndexes" + ReplicatorSv1Account = "ReplicatorSv1.SetAccount" + ReplicatorSv1SetDestination = "ReplicatorSv1.SetDestination" + ReplicatorSv1SetReverseDestination = "ReplicatorSv1.SetReverseDestination" + ReplicatorSv1SetStatQueue = "ReplicatorSv1.SetStatQueue" + ReplicatorSv1SetFilter = "ReplicatorSv1.SetFilter" + ReplicatorSv1SetStatQueueProfile = "ReplicatorSv1.SetStatQueueProfile" + ReplicatorSv1SetTiming = "ReplicatorSv1.SetTiming" + ReplicatorSv1SetResource = "ReplicatorSv1.SetResource" + ReplicatorSv1SetResourceProfile = "ReplicatorSv1.SetResourceProfile" + ReplicatorSv1SetActionTriggers = "ReplicatorSv1.SetActionTriggers" + ReplicatorSv1SetSharedGroup = "ReplicatorSv1.SetSharedGroup" + ReplicatorSv1SetActions = "ReplicatorSv1.SetActions" + ReplicatorSv1SetActionPlan = "ReplicatorSv1.SetActionPlan" + ReplicatorSv1SetAccountActionPlans = "ReplicatorSv1.SetAccountActionPlans" + ReplicatorSv1SetRatingPlan = "ReplicatorSv1.SetRatingPlan" + ReplicatorSv1SetRatingProfile = "ReplicatorSv1.SetRatingProfile" + ReplicatorSv1SetSupplierProfile = "ReplicatorSv1.SetSupplierProfile" + ReplicatorSv1SetAttributeProfile = "ReplicatorSv1.SetAttributeProfile" + ReplicatorSv1SetChargerProfile = "ReplicatorSv1.SetChargerProfile" + ReplicatorSv1SetDispatcherProfile = "ReplicatorSv1.SetDispatcherProfile" + ReplicatorSv1SetDispatcherHost = "ReplicatorSv1.SetDispatcherHost" + ReplicatorSv1SetLoadIDs = "ReplicatorSv1.SetLoadIDs" + ReplicatorSv1RemoveThreshold = "ReplicatorSv1.RemoveThreshold" + ReplicatorSv1RemoveDestination = "ReplicatorSv1.RemoveDestination" + ReplicatorSv1RemoveAccount = "ReplicatorSv1.RemoveAccount" + ReplicatorSv1RemoveStatQueue = "ReplicatorSv1.RemoveStatQueue" + ReplicatorSv1RemoveFilter = "ReplicatorSv1.RemoveFilter" + ReplicatorSv1RemoveThresholdProfile = "ReplicatorSv1.RemoveThresholdProfile" + ReplicatorSv1RemoveStatQueueProfile = "ReplicatorSv1.RemoveStatQueueProfile" + ReplicatorSv1RemoveTiming = "ReplicatorSv1.RemoveTiming" + ReplicatorSv1RemoveResource = "ReplicatorSv1.RemoveResource" + ReplicatorSv1RemoveResourceProfile = "ReplicatorSv1.RemoveResourceProfile" + ReplicatorSv1RemoveActionTriggers = "ReplicatorSv1.RemoveActionTriggers" + ReplicatorSv1RemoveSharedGroup = "ReplicatorSv1.RemoveSharedGroup" + ReplicatorSv1RemoveActions = "ReplicatorSv1.RemoveActions" + ReplicatorSv1RemoveActionPlan = "ReplicatorSv1.RemoveActionPlan" + ReplicatorSv1RemAccountActionPlans = "ReplicatorSv1.RemAccountActionPlans" + ReplicatorSv1RemoveRatingPlan = "ReplicatorSv1.RemoveRatingPlan" + ReplicatorSv1RemoveRatingProfile = "ReplicatorSv1.RemoveRatingProfile" + ReplicatorSv1RemoveSupplierProfile = "ReplicatorSv1.RemoveSupplierProfile" + ReplicatorSv1RemoveAttributeProfile = "ReplicatorSv1.RemoveAttributeProfile" + ReplicatorSv1RemoveChargerProfile = "ReplicatorSv1.RemoveChargerProfile" + ReplicatorSv1RemoveDispatcherProfile = "ReplicatorSv1.RemoveDispatcherProfile" + ReplicatorSv1RemoveDispatcherHost = "ReplicatorSv1.RemoveDispatcherHost" ) // ApierV1 APIs