~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/code/model/branchcollection.py

[r=gmb][bug=827935] Add a new simplified menu branch without the
        counts.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright 2009 Canonical Ltd.  This software is licensed under the
 
1
# Copyright 2009-2011 Canonical Ltd.  This software is licensed under the
2
2
# GNU Affero General Public License version 3 (see the file LICENSE).
3
3
 
4
4
"""Implementations of `IBranchCollection`."""
33
33
    DecoratedResultSet,
34
34
    )
35
35
from canonical.launchpad.interfaces.lpstorm import IStore
 
36
from canonical.launchpad.searchbuilder import any
36
37
from canonical.launchpad.webapp.interfaces import (
37
38
    DEFAULT_FLAVOR,
38
39
    IStoreSelector,
39
40
    MAIN_STORE,
40
41
    )
41
 
from canonical.launchpad.searchbuilder import any
42
42
from canonical.launchpad.webapp.vocabulary import CountableIterator
43
43
from lp.bugs.interfaces.bugtask import (
 
44
    BugTaskSearchParams,
44
45
    IBugTaskSet,
45
 
    BugTaskSearchParams,
46
46
    )
47
47
from lp.bugs.interfaces.bugtaskfilter import filter_bugtasks_by_context
48
48
from lp.bugs.model.bugbranch import BugBranch
49
49
from lp.bugs.model.bugtask import BugTask
 
50
from lp.code.enums import BranchMergeProposalStatus
50
51
from lp.code.interfaces.branch import user_has_special_branch_access
51
52
from lp.code.interfaces.branchcollection import (
52
53
    IBranchCollection,
53
54
    InvalidFilter,
54
55
    )
 
56
from lp.code.interfaces.branchlookup import IBranchLookup
 
57
from lp.code.interfaces.codehosting import LAUNCHPAD_SERVICES
55
58
from lp.code.interfaces.seriessourcepackagebranch import (
56
59
    IFindOfficialBranchLinks,
57
60
    )
58
 
from lp.code.enums import BranchMergeProposalStatus
59
 
from lp.code.interfaces.branchlookup import IBranchLookup
60
 
from lp.code.interfaces.codehosting import LAUNCHPAD_SERVICES
61
61
from lp.code.model.branch import Branch
62
62
from lp.code.model.branchmergeproposal import BranchMergeProposal
63
63
from lp.code.model.branchsubscription import BranchSubscription
132
132
        """See `IBranchCollection`."""
133
133
        return self.getBranches(eager_load=False).count()
134
134
 
 
135
    def is_empty(self):
 
136
        """See `IBranchCollection`."""
 
137
        return self.getBranches(eager_load=False).is_empty()
 
138
 
135
139
    def ownerCounts(self):
136
140
        """See `IBranchCollection`."""
137
141
        is_team = Person.teamowner != None