1
# Copyright 2011 Canonical Ltd. This software is licensed under the
2
# GNU Affero General Public License version 3 (see the file LICENSE).
4
"""BugSummary interfaces."""
7
__all__ = ['IBugSummary']
10
from zope.interface import Interface
11
from zope.schema import (
18
from canonical.launchpad import _
19
from lp.bugs.interfaces.bugtask import BugTaskStatus
20
from lp.registry.interfaces.distribution import IDistribution
21
from lp.registry.interfaces.distroseries import IDistroSeries
22
from lp.registry.interfaces.milestone import IMilestone
23
from lp.registry.interfaces.person import IPerson
24
from lp.registry.interfaces.product import IProduct
25
from lp.registry.interfaces.productseries import IProductSeries
26
from lp.registry.interfaces.sourcepackagename import ISourcePackageName
29
class IBugSummary(Interface):
30
"""Interface for BugSummary database class.
32
All fields are readonly as this table is maintained by database
36
id = Int(readonly=True)
37
count = Int(readonly=True)
39
product_id = Int(readonly=True)
40
product = Object(IProduct, readonly=True)
42
productseries_id = Int(readonly=True)
43
productseries = Object(IProductSeries, readonly=True)
45
distribution_id = Int(readonly=True)
46
distribution = Object(IDistribution, readonly=True)
48
distroseries_id = Int(readonly=True)
49
distroseries = Object(IDistroSeries, readonly=True)
51
sourcepackagename_id = Int(readonly=True)
52
sourcepackagename = Object(ISourcePackageName, readonly=True)
54
viewed_by_id = Int(readonly=True)
55
viewed_by = Object(IPerson, readonly=True)
57
tag = Text(readonly=True)
59
title=_('Status'), vocabulary=BugTaskStatus, readonly=True)
61
milestone_id = Int(readonly=True)
62
milestone = Object(IMilestone, readonly=True)