예제 #1
0
        /// <summary>
        /// Called, when a value becomes dirty
        /// </summary>
        /// <param name="property"></param>
        protected virtual void OnDirtyProperty(IObservableProperty property)
        {
            _notBroadcastedProperties.Add(property);
            UnsavedProperties.Add(property);

            // TODO Possible optimisation, by not invoking OnChanged event.
            // Need to do more research, if this event is necessary to be invoked
            // on every change
            OnModifiedEvent?.Invoke(this);

            OnPropertyUpdatedEvent?.Invoke(property.Key, property);
        }
예제 #2
0
        protected void Dispose()
        {
            if (OnDisposedEvent != null)
            {
                Dispose();
            }

            OnModifiedInServerEvent = null;
            OnDisposedEvent         = null;

            UnsavedProperties.Clear();
            ClearUpdates();
        }
예제 #3
0
        protected void Dispose()
        {
            if (Disposed != null)
            {
                Dispose();
            }

            ModifiedInServer = null;
            Disposed         = null;

            UnsavedProperties.Clear();
            ClearUpdates();
        }