/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/plugins/launchpad/hoster.py

Expose owner in propose API.

Merged from https://code.launchpad.net/~jelmer/brz/expose-owner/+merge/390511

Show diffs side-by-side

added added

removed removed

Lines of Context:
478
478
            if creds is not None:
479
479
                yield cls(service_root)
480
480
 
481
 
    def iter_my_proposals(self, status='open'):
 
481
    def iter_my_proposals(self, status='open', author=None):
482
482
        statuses = status_to_lp_mp_statuses(status)
483
 
        for mp in self.launchpad.me.getMergeProposals(status=statuses):
 
483
        if author_obj is None:
 
484
            author_obj = self.launchpad.me
 
485
        else:
 
486
            author_obj = self._getPerson(author)
 
487
        for mp in author_obj.getMergeProposals(status=statuses):
484
488
            yield LaunchpadMergeProposal(mp)
485
489
 
486
 
    def iter_my_forks(self):
 
490
    def iter_my_forks(self, owner=None):
487
491
        # Launchpad doesn't really have the concept of "forks"
488
492
        return iter([])
489
493
 
 
494
    def _getPerson(self, person):
 
495
        if '@' in name:
 
496
            return self.launchpad.people.getByEmail(email=name)
 
497
        else:
 
498
            return self.launchpad.people[name]
 
499
 
490
500
    def get_proposal_by_url(self, url):
491
501
        # Launchpad doesn't have a way to find a merge proposal by URL.
492
502
        (scheme, user, password, host, port, path) = urlutils.parse_url(
604
614
        else:
605
615
            reviewer_objs = []
606
616
            for reviewer in reviewers:
607
 
                if '@' in reviewer:
608
 
                    reviewer_obj = self.launchpad.people.getByEmail(email=reviewer)
609
 
                else:
610
 
                    reviewer_obj = self.launchpad.people[reviewer]
611
 
                reviewer_objs.append(reviewer_obj)
 
617
                reviewer_objs.append(self.lp_host._getPerson(reviewer))
612
618
        try:
613
619
            mp = _call_webservice(
614
620
                self.source_branch_lp.createMergeProposal,