public string Pack( List <VgcApis.Interfaces.ICoreServCtrl> servList, string orgServerUid, string packageName, VgcApis.Models.Datas.Enums.BalancerStrategies strategy) { return(vgcServers.PackServersV4Ui( servList, orgServerUid, packageName, strategy, VgcApis.Models.Datas.Enums.PackageTypes.Balancer)); }
public string PackSelectedServersV4( string orgUid, string pkgName, VgcApis.Models.Datas.Enums.BalancerStrategies strategy, VgcApis.Models.Datas.Enums.PackageTypes packageType) { var servList = new List <VgcApis.Interfaces.ICoreServCtrl>(); lock (serverListWriteLock) { servList = queryHandler.GetSelectedServers().ToList(); } return(PackServersIntoV4PackageWorker( servList, orgUid, pkgName, strategy, packageType)); }
void InjectBalacerStrategy( ref JObject config, VgcApis.Models.Datas.Enums.BalancerStrategies strategy) { switch (strategy) { case VgcApis.Models.Datas.Enums.BalancerStrategies.LeastPing: try { config["observatory"] = JObject.Parse("{subjectSelector:['agentout']}"); config["routing"]["balancers"][0]["strategy"] = JObject.Parse("{type:'leastPing'}"); } catch { } break; default: break; } }
/// <summary> /// packageName is Null or empty ? "PackageV4" : packageName /// </summary> /// <param name="packageName"></param> /// <param name="servList"></param> public string PackServersV4Ui( List <VgcApis.Interfaces.ICoreServCtrl> servList, string orgUid, string packageName, VgcApis.Models.Datas.Enums.BalancerStrategies strategy, VgcApis.Models.Datas.Enums.PackageTypes packageType) { if (servList == null || servList.Count < 1) { VgcApis.Misc.UI.MsgBoxAsync(I18N.ListIsEmpty); return(""); } var uid = PackServersIntoV4PackageWorker( servList, orgUid, packageName, strategy, packageType); Misc.UI.ShowMessageBoxDoneAsync(); return(uid); }
string PackServersIntoV4PackageWorker( List <ICoreServCtrl> servList, string orgUid, string packageName, VgcApis.Models.Datas.Enums.BalancerStrategies strategy, VgcApis.Models.Datas.Enums.PackageTypes packageType) { if (servList == null || servList.Count < 1) { return(""); } JObject package = configMgr.GenV4ServersPackageConfig( servList, packageName, packageType); string mark; switch (packageType) { case VgcApis.Models.Datas.Enums.PackageTypes.Balancer: InjectBalacerStrategy(ref package, strategy); mark = @"PackageV4"; break; case VgcApis.Models.Datas.Enums.PackageTypes.Chain: default: mark = @"ChainV4"; break; } var newConfig = package.ToString(Formatting.None); string newUid = ReplaceOrAddNewServer(orgUid, newConfig, mark); UpdateMarkList(); setting.SendLog(I18N.PackageDone); return(newUid); }