Merge ~cjwatson/launchpad:snappy-dbenum into launchpad:master

Proposed by Colin Watson
Status: Merged
Approved by: Colin Watson
Approved revision: 1f8b9273845d0820a441a035a1f67022ce34fe8d
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~cjwatson/launchpad:snappy-dbenum
Merge into: launchpad:master
Diff against target: 66 lines (+6/-6)
3 files modified
lib/lp/snappy/model/snapbuildjob.py (+2/-2)
lib/lp/snappy/model/snapjob.py (+2/-2)
lib/lp/snappy/model/snappyseries.py (+2/-2)
Reviewer Review Type Date Requested Status
Ioana Lasc (community) Approve
Review via email: mp+411157@code.launchpad.net

Commit message

lp.snappy: Use DBEnum rather than EnumCol

Description of the change

This is mainly intended as an example of how to convert these model definitions from the old SQLObject style to the new Storm style.

To post a comment you must log in.
Revision history for this message
Ioana Lasc (ilasc) wrote :

Looks good.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/lib/lp/snappy/model/snapbuildjob.py b/lib/lp/snappy/model/snapbuildjob.py
2index 4c522e1..4c4617f 100644
3--- a/lib/lp/snappy/model/snapbuildjob.py
4+++ b/lib/lp/snappy/model/snapbuildjob.py
5@@ -33,7 +33,7 @@ from zope.interface import (
6
7 from lp.app.errors import NotFoundError
8 from lp.services.config import config
9-from lp.services.database.enumcol import EnumCol
10+from lp.services.database.enumcol import DBEnum
11 from lp.services.database.interfaces import (
12 IMasterStore,
13 IStore,
14@@ -86,7 +86,7 @@ class SnapBuildJob(StormBase):
15 snapbuild_id = Int(name='snapbuild', allow_none=False)
16 snapbuild = Reference(snapbuild_id, 'SnapBuild.id')
17
18- job_type = EnumCol(enum=SnapBuildJobType, notNull=True)
19+ job_type = DBEnum(enum=SnapBuildJobType, allow_none=False)
20
21 metadata = JSON('json_data', allow_none=False)
22
23diff --git a/lib/lp/snappy/model/snapjob.py b/lib/lp/snappy/model/snapjob.py
24index 3c6b33b..bf16b2d 100644
25--- a/lib/lp/snappy/model/snapjob.py
26+++ b/lib/lp/snappy/model/snapjob.py
27@@ -37,7 +37,7 @@ from lp.registry.interfaces.pocket import PackagePublishingPocket
28 from lp.services.config import config
29 from lp.services.database.bulk import load_related
30 from lp.services.database.decoratedresultset import DecoratedResultSet
31-from lp.services.database.enumcol import EnumCol
32+from lp.services.database.enumcol import DBEnum
33 from lp.services.database.interfaces import (
34 IMasterStore,
35 IStore,
36@@ -91,7 +91,7 @@ class SnapJob(StormBase):
37 snap_id = Int(name='snap', allow_none=False)
38 snap = Reference(snap_id, 'Snap.id')
39
40- job_type = EnumCol(enum=SnapJobType, notNull=True)
41+ job_type = DBEnum(enum=SnapJobType, allow_none=False)
42
43 metadata = JSON('json_data', allow_none=False)
44
45diff --git a/lib/lp/snappy/model/snappyseries.py b/lib/lp/snappy/model/snappyseries.py
46index e36fa96..52de880 100644
47--- a/lib/lp/snappy/model/snappyseries.py
48+++ b/lib/lp/snappy/model/snappyseries.py
49@@ -25,7 +25,7 @@ from zope.interface import implementer
50 from lp.registry.interfaces.series import SeriesStatus
51 from lp.registry.model.distroseries import DistroSeries
52 from lp.services.database.constants import DEFAULT
53-from lp.services.database.enumcol import EnumCol
54+from lp.services.database.enumcol import DBEnum
55 from lp.services.database.interfaces import (
56 IMasterStore,
57 IStore,
58@@ -61,7 +61,7 @@ class SnappySeries(Storm):
59
60 display_name = Unicode(name='display_name', allow_none=False)
61
62- status = EnumCol(enum=SeriesStatus, notNull=True)
63+ status = DBEnum(enum=SeriesStatus, allow_none=False)
64
65 def __init__(self, registrant, name, display_name, status,
66 preferred_distro_series=None, date_created=DEFAULT):

Subscribers

People subscribed via source and target branches

to status/vote changes: