| 55 | obj.database = None |
| 56 | |
| 57 | def add(self, obj: Any) -> Any: |
| 58 | if isinstance(obj, Table): |
| 59 | return self.add_table(obj) |
| 60 | elif isinstance(obj, Reference): |
| 61 | return self.add_reference(obj) |
| 62 | elif isinstance(obj, Enum): |
| 63 | return self.add_enum(obj) |
| 64 | elif isinstance(obj, TableGroup): |
| 65 | return self.add_table_group(obj) |
| 66 | elif isinstance(obj, Project): |
| 67 | return self.add_project(obj) |
| 68 | elif isinstance(obj, StickyNote): |
| 69 | return self.add_sticky_note(obj) |
| 70 | else: |
| 71 | raise DatabaseValidationError(f'Unsupported type {type(obj)}.') |
| 72 | |
| 73 | def add_table(self, obj: Table) -> Table: |
| 74 | if obj in self.tables: |