Esempio n. 1
0
        override public void ForgetInstance(MudObject Object)
        {
            var instanceName = Object.Path + "@" + Object.Instance;

            if (ActiveInstances.ContainsKey(instanceName))
            {
                ActiveInstances.Remove(instanceName);
            }
            Object.IsPersistent = false;
        }
Esempio n. 2
0
 override public void PersistInstance(MudObject Object)
 {
     if (Object.IsPersistent)
     {
         return;                      //The object is already persistent.
     }
     if (ActiveInstances.ContainsKey(Object.GetFullName()))
     {
         throw new InvalidOperationException("An instance with this name is already persisted.");
     }
     if (Object.IsNamedObject)
     {
         Object.IsPersistent = true;
         ActiveInstances.Upsert(Object.GetFullName(), Object);
         ReadPersistentObject(Object);
     }
     else
     {
         throw new InvalidOperationException("Anonymous objects cannot be persisted.");
     }
 }