1234567891011121314151617181920212223242526272829 |
- from intelligine.core.exceptions import BrainPartAlreadyExist
- from intelligine.cst import BRAIN_SCHEMA
-
-
- class Brain():
-
- _brain_part_class = {}
-
- def __init__(self, context, host):
- self._context = context
- self._host = host
- self._schema = {}
- self._parts = {}
-
- def _set_brain_part(self, name, brain_part, replace=False):
- if name in self._parts and not replace:
- raise BrainPartAlreadyExist()
- self._parts[name] = brain_part
- self._update_schema()
-
- def get_part(self, name):
- return self._parts[name]
-
- def _update_schema(self):
- self._schema = {}
- for part_name in self._parts:
- self._schema[part_name] = self._parts[part_name].__class__
- self._context.metas.value.set(BRAIN_SCHEMA, self._host.get_id(), self._schema)
|