mirror of
https://github.com/evennia/evennia.git
synced 2026-04-02 14:07:16 +02:00
First, untested version of the OOBhandler mechanism.
This commit is contained in:
parent
90a64a3780
commit
b0b0fa7983
9 changed files with 454 additions and 106 deletions
|
|
@ -42,6 +42,7 @@ from src.utils.idmapper.models import SharedMemoryModel
|
|||
from src.server.caches import get_field_cache, set_field_cache, del_field_cache
|
||||
from src.server.caches import get_attr_cache, set_attr_cache, del_attr_cache
|
||||
from src.server.caches import get_prop_cache, set_prop_cache, del_prop_cache
|
||||
from src.server.caches import call_ndb_hooks
|
||||
from src.server.models import ServerConfig
|
||||
from src.typeclasses import managers
|
||||
from src.locks.lockhandler import LockHandler
|
||||
|
|
@ -1584,7 +1585,7 @@ class TypedObject(SharedMemoryModel):
|
|||
return None
|
||||
else:
|
||||
# act as a setter
|
||||
_SA(self.db, attribute_name, value)
|
||||
_SA(self.ndb, attribute_name, value)
|
||||
|
||||
#@property
|
||||
def __ndb_get(self):
|
||||
|
|
@ -1609,6 +1610,10 @@ class TypedObject(SharedMemoryModel):
|
|||
return _GA(self, key)
|
||||
except AttributeError:
|
||||
return None
|
||||
def __setattr__(self, key, value):
|
||||
# hook the oob handler here
|
||||
call_ndb_hooks(self, key, value)
|
||||
_SA(self, key, value)
|
||||
self._ndb_holder = NdbHolder()
|
||||
return self._ndb_holder
|
||||
#@ndb.setter
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue