From 585a6ba796f2e6fdf93993812eb40a14024964cd Mon Sep 17 00:00:00 2001 From: Patrick Jentsch <p.jentsch@uni-bielefeld.de> Date: Thu, 10 Feb 2022 12:01:31 +0100 Subject: [PATCH] Rename some IntEnumColumn related stuff --- app/models.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/models.py b/app/models.py index 55423d96..357153d8 100644 --- a/app/models.py +++ b/app/models.py @@ -17,23 +17,23 @@ import xml.etree.ElementTree as ET import yaml -class IntEnumProxy(db.TypeDecorator): +class IntEnumColumn(db.TypeDecorator): impl = db.Integer - def __init__(self, enumtype, *args, **kwargs): + def __init__(self, enum_type, *args, **kwargs): super().__init__(*args, **kwargs) - self._enumtype = enumtype + self.enum_type = enum_type def process_bind_param(self, value, dialect): - if isinstance(value, self._enumtype): + if isinstance(value, self.enum_type) and isinstance(value.value, int): return value.value elif isinstance(value, int): - return value + return self.enum_type(value).value else: return TypeError() def process_result_value(self, value, dialect): - return self._enumtype(value) + return self.enum_type(value) class Permission(IntEnum): @@ -156,7 +156,7 @@ class User(HashidMixin, UserMixin, db.Model): username = db.Column(db.String(64), unique=True, index=True) setting_dark_mode = db.Column(db.Boolean, default=False) setting_job_status_mail_notification_level = db.Column( - IntEnumProxy(UserSettingJobStatusMailNotificationLevel), + IntEnumColumn(UserSettingJobStatusMailNotificationLevel), default=UserSettingJobStatusMailNotificationLevel.END ) # Backrefs: role: Role @@ -567,7 +567,7 @@ class Job(HashidMixin, db.Model): service_args = db.Column(db.String(255)) service_version = db.Column(db.String(16)) status = db.Column( - IntEnumProxy(JobStatus), + IntEnumColumn(JobStatus), default=JobStatus.INITIALIZING ) title = db.Column(db.String(32)) @@ -792,7 +792,7 @@ class Corpus(HashidMixin, db.Model): description = db.Column(db.String(255)) last_edited_date = db.Column(db.DateTime(), default=datetime.utcnow) status = db.Column( - IntEnumProxy(CorpusStatus), + IntEnumColumn(CorpusStatus), default=CorpusStatus.UNPREPARED ) title = db.Column(db.String(32)) -- GitLab