from .auth_silo import AuthenticationSilo
from .claim_type import ClaimType
from .computer import Computer
-from .constants import MODELS
from .container import Container
from .gmsa import GroupManagedServiceAccount
from .group import Group
from .model import Model
from .person import OrganizationalPerson, Person
+from .registry import MODELS
from .schema import AttributeSchema, ClassSchema
from .site import Site
from .subnet import Subnet
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-# Keeps track of registered models.
-# This gets populated by the ModelMeta class.
-MODELS = {}
-
# Default SDDL for GroupManagedServiceAccount msDS-GroupMSAMembership field.
GROUP_MSA_MEMBERSHIP_DEFAULT = "O:BAD:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;LA)"
SCOPE_ONELEVEL, SCOPE_SUBTREE)
from samba.sd_utils import SDUtils
-from .constants import MODELS
from .exceptions import (DeleteError, FieldError, NotFound, ProtectError,
UnprotectError)
from .fields import (DateTimeField, DnField, Field, GUIDField, IntegerField,
SIDField, StringField)
from .query import Query
+from .registry import MODELS
class ModelMeta(type):
import re
-from .constants import MODELS
from .exceptions import NotFound, MultipleObjectsReturned
+from .registry import MODELS
RE_SPLIT_CAMELCASE = re.compile(r"[A-Z](?:[a-z]+|[A-Z]*(?=[A-Z]|$))")
--- /dev/null
+# Unix SMB/CIFS implementation.
+#
+# Model registry.
+#
+# Copyright (C) Catalyst.Net Ltd. 2024
+#
+# Written by Rob van der Linde <rob@catalyst.net.nz>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+# Keeps track of registered models.
+# This gets populated by the ModelMeta class.
+MODELS = {}