//public string ReadString(string fieldName)
 //{
 //    lock (this)
 //    {
 //        if (_values.ContainsKey(fieldName))
 //        {
 //            return string.Empty;
 //        }
 //        return _values[fieldName];
 //    }
 //}
 public PersistentData Clone()
 {
     PersistentData result = new PersistentData();
     lock (this)
     {
         foreach (string key in _values.Keys)
         {
             result._values.Add(key, _values[key]);
         }
     }
     return result;
 }
Ejemplo n.º 2
0
        //public string ReadString(string fieldName)
        //{
        //    lock (this)
        //    {
        //        if (_values.ContainsKey(fieldName))
        //        {
        //            return string.Empty;
        //        }

        //        return _values[fieldName];
        //    }
        //}

        public PersistentData Clone()
        {
            PersistentData result = new PersistentData();

            lock (this)
            {
                foreach (string key in _values.Keys)
                {
                    result._values.Add(key, _values[key]);
                }
            }
            return(result);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Allows the user of this interface to force an update to an object.
        /// Also the object itself can raise an request to be updated (saved).
        /// </summary>
        public bool SaveObjectState(IPersistentEx persistent)
        {
            TracerHelper.Trace("[" + ActualPersistentId(persistent) + "] invoked by: " + ReflectionHelper.GetFullCallingMethodName(2));

            lock (this)
            {
                RegisterObject(persistent);
                PersistentData data = _pendingSaveObjects[ActualPersistentId(persistent)];
                if (persistent.OnSaveState(this, data) == false)
                {
                    return(false);
                }

                // Only if the receiver has confirmed the saving operation, replace the current data.
                _pendingSaveObjects[ActualPersistentId(persistent)] = data;
            }

            return(true);
        }
Ejemplo n.º 4
0
 public abstract bool OnRestoreState(IPersistentManager manager, PersistentData data);
Ejemplo n.º 5
0
 public abstract bool OnSaveState(IPersistentManager manager, PersistentData data);