public ClusterLoad GetVMLoad(string poolName) { var load = new ClusterLoad(); Task <IEnumerable <JobInstance> > tJobs; Task <IEnumerable <VMInstance> > tVms; tJobs = _repo.GetJobInstancesAsync(poolName); load.Jobs = tJobs.Result; tVms = _repo.GetVMInstancesAsync(poolName); load.Nodes = tVms.Result; return(load); }
private void ApplyClusterDesigns(object sender, RoutedEventArgs e) { ViewModel vm = (this.DataContext as ViewModel); List <Column> cols = new List <Column>(); var bd = vm.MyBatchDesignView.BatchDesign; for (int i = 0; i < bd.Clusters.Count; i++) { // look for all columns present in the cluster List <string> colsInCluster = new List <string>(); for (int j = 0; j < bd.LoadClusters[i].Loads.Count; j++) { ClusterLoad cl = bd.LoadClusters[i].Loads[j]; Column pc = bd.GetParentColumn(cl); var regex = new Regex(Regex.Escape(cl.ParentColumnName)); string name = regex.Replace(cl.Name, "", 1); regex = new Regex(Regex.Escape(" - ")); name = regex.Replace(name, "", 1); //string name = cl.Name.Replace(cl.ParentColumn.Name, "").Replace(" - ", ""); Load l = pc.Loads.First(m => m.Name == name).Clone(); l.Name = l.Name.Insert(0, cl.ParentColumnName + " - "); colsInCluster.Add(cl.ParentColumnName); } colsInCluster = colsInCluster.Distinct().ToList(); Column clusterCol = vm.MyBatchDesignView.BatchDesign.Designs[i]; // assign the cluster design to all the columns for (int j = 0; j < colsInCluster.Count; j++) { if (vm.MyColumns.Any(c => c.Name == colsInCluster[j])) { Column col = vm.MyColumns.Find(c => c.Name == colsInCluster[j]); int idx = vm.MyColumns.IndexOf(col); vm.MyColumns[idx].NRebarX = clusterCol.NRebarX; vm.MyColumns[idx].NRebarY = clusterCol.NRebarY; vm.MyColumns[idx].ConcreteGrade = clusterCol.ConcreteGrade; vm.MyColumns[idx].LX = clusterCol.LX; vm.MyColumns[idx].LY = clusterCol.LY; vm.MyColumns[idx].BarDiameter = clusterCol.BarDiameter; vm.MyColumns[idx].FDMStr = clusterCol.FDMStr; } } } MessageBox.Show("Cluster designs applied to corresponding columns in the current list of designs.", "", MessageBoxButton.OK); }
private void AddClusterDesigns(object sender, RoutedEventArgs e) { ViewModel vm = (this.DataContext as ViewModel); List <Column> cols = new List <Column>(); var bd = vm.MyBatchDesignView.BatchDesign; for (int i = 0; i < bd.Clusters.Count; i++) { Column col = bd.Designs[i].Clone(); col.Name = bd.LoadClusters[i].Name; col.Loads = new List <Load>(); col.IsCluster = true; col.ColsInCluster = new List <string>(); for (int j = 0; j < bd.LoadClusters[i].Loads.Count; j++) { ClusterLoad cl = bd.LoadClusters[i].Loads[j]; Column pc = bd.GetParentColumn(cl); var regex = new Regex(Regex.Escape(cl.ParentColumnName)); string name = regex.Replace(cl.Name, "", 1); regex = new Regex(Regex.Escape(" - ")); name = regex.Replace(name, "", 1); Load l = pc.Loads.First(m => m.Name == name).Clone(); l.Name = l.Name.Insert(0, cl.ParentColumnName + " - "); col.Loads.Add(l); col.ColsInCluster.Add(cl.ParentColumnName); } col.ColsInCluster = col.ColsInCluster.Distinct().ToList(); MaxLoadOnX(col); col.SelectedLoad = col.Loads[0]; col.AllLoads = true; cols.Add(col); } vm.MyColumns.AddRange(cols); MessageBox.Show("Cluster designs added to the current list of column designs.", "", MessageBoxButton.OK); }