public void RemoveToolpaths(ToolpathSO sourceSO) { List <AnalysisViz> found; lock (SOToAnalysis) { if (SOToAnalysis.TryGetValue(sourceSO, out found)) { foreach (var analysis in found) { analysis.OnComputeUpdateRequired -= OnVisualizationRequestedUpdate; analysis.OnGeometryUpdateRequired -= OnVisualizationHasGeometryUpdate; analysis.Disconnect(); } SOToAnalysis.Remove(sourceSO); } } lock (DirtyList) { if (found != null) { foreach (var analysis in found) { DirtyList.Remove(analysis); } } } }
public void RegisterDirty(T obj) { if (!NewList.Contains(obj) && !RemovedList.Contains(obj)) { DirtyList.Add(obj); } // Console.WriteLine("Updating: " + obj.ToBsonDocument()[0]);\ }
public bool IsDirty(string columnName) { if (DirtyList.ContainsKey(columnName)) { return(DirtyList[columnName]); } throw new KeyNotFoundException(columnName); }
public CircuitState(int reserveState) { int seed = (int)DateTime.UtcNow.Ticks; //seed = -142808611; Tracer.FullInfo("CircuitState", "CircuitState.seed={0}", seed); this.dirty = new DirtyList(seed); this.Random = new Random(seed); this.Count = reserveState; }
public void PopulateArray_HandlesDuplicateIds() { var customField = new CustomField { FieldName = "CX.ABC", StringValue = "ABC" }; var list = new DirtyList <CustomField> { customField }; JsonHelper.PopulateFromJson(@"[{""fieldName"":""CX.ABC"",""stringValue"":""DEF""},{""fieldName"":""CX.ABC"",""stringValue"":""GHI""}]", list); Assert.AreEqual(2, list.Count); Assert.AreSame(customField, list[0]); Assert.AreEqual("DEF", customField.StringValue); Assert.AreEqual("GHI", list[1].StringValue); }
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); if (propertyName != null && propertyName.Equals("DupDirtyList")) { return; } if (DirtyList == null) { DirtyList = new List <string>(); } if (DirtyList.SingleOrDefault(x => x == propertyName) == null) { DirtyList.Add(propertyName); } }
public void RegisterRemoved(T obj) { // remove from dirty list (nothing will happen even if the obj not inside the dirty list) DirtyList.Remove(obj); if (NewList.Contains(obj)) { // if obj is newly created, not yet saved in db, then just remove it from new list NewList.Remove(obj); } else if (!RemovedList.Contains(obj)) { // only add obj into removed list if its not already inside RemovedList.Add(obj); } }
void add_new_so_analysis(SceneObject so, AnalysisViz analysis) { lock (SOToAnalysis) { List <AnalysisViz> l; if (SOToAnalysis.TryGetValue(so, out l) == false) { l = new List <AnalysisViz>(); SOToAnalysis[so] = l; } l.Add(analysis); } analysis.OnComputeUpdateRequired += OnVisualizationRequestedUpdate; analysis.OnGeometryUpdateRequired += OnVisualizationHasGeometryUpdate; lock (DirtyList) { DirtyList.Add(analysis); processThreadEvent.Set(); } }
public void RemoveMesh(DMeshSO sourceSO) { List <AnalysisViz> found; lock (SOToAnalysis) { if (SOToAnalysis.TryGetValue(sourceSO, out found)) { foreach (var analysis in found) { disconnect_analysis(analysis); } SOToAnalysis.Remove(sourceSO); } } lock (DirtyList) { if (found != null) { foreach (var analysis in found) { DirtyList.Remove(analysis); } } } }
public void MakeClean() { DirtyList.Clear(); DupDirtyList.Clear(); }
public bool AnyDirtyRelations(ORMEntity entity) { return(DirtyList.Any(x => entity.Relations.Any(e => e.GetType().Name != x.Key))); }
public void SaveResource(bool bNew, DataSet dataSet) { DataSet dsReturn = new DataSet(); DataSet ds = new DataSet(); if (bNew) { ds = dataSet; } else { if (IsDirty) { if (this.DirtyList.Count > 0) { if (DirtyList.ContainsKey(RBAC_RESOURCE_FIELDS.FIELD_RESOURCE_CODE)) { DirtyItem dItem = new DirtyItem(); dItem.FieldOriginalValue = ""; dItem.FieldNewValue = _resourceGroupKey; DirtyList.Add(RBAC_RESOURCE_FIELDS.FIELD_RESOURCE_GROUP_KEY, dItem); } DataTable resourceTable = DataTableHelper.CreateDataTableForUpdateBasicData(RBAC_RESOURCE_FIELDS.DATABASE_TABLE_NAME); foreach (string Key in DirtyList.Keys) { Dictionary <string, string> rowData = new Dictionary <string, string>() { { COMMON_FIELDS.FIELD_COMMON_UPDATE_KEY, _resourceKey }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_NAME, Key }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_OLD_VALUE, this.DirtyList[Key].FieldOriginalValue }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_NEW_VALUE, this.DirtyList[Key].FieldNewValue } }; FanHai.Hemera.Utils.Common.Utils.AddRowDataToDataTable(ref resourceTable, rowData); } if (resourceTable.Rows.Count > 0) { ds.Tables.Add(resourceTable); } } } } try { IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject(); if (null != serverFactory) { if (bNew) { dsReturn = serverFactory.CreateIResourceEngine().AddResource(ds); } else { dsReturn = serverFactory.CreateIResourceEngine().UpdateResource(ds); } _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn); } } catch (Exception ex) { _errorMsg = ex.Message; } finally { CallRemotingService.UnregisterChannel(); } }