/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 bzrlib/remote.py

  • Committer: Martin Pool
  • Date: 2008-09-15 09:42:16 UTC
  • mto: (3697.2.6 261315-into-1.7)
  • mto: This revision was merged to the branch mainline in revision 3710.
  • Revision ID: mbp@sourcefrog.net-20080915094216-g4cnw14q7m1u4n14
Disable RemoteBranch stacking, but get get_stacked_on_url working, and passing back exceptions

Show diffs side-by-side

added added

removed removed

Lines of Context:
600
600
        if isinstance(repository, RemoteRepository):
601
601
            raise AssertionError()
602
602
        self._real_repository = repository
 
603
#        for fb in self._fallback_repositories:
 
604
#            self._real_repository.add_fallback_repository(fb)
603
605
        if self._lock_mode == 'w':
604
606
            # if we are already locked, the real repository must be able to
605
607
            # acquire the lock with our token.
726
728
        # We need to accumulate additional repositories here, to pass them in
727
729
        # on various RPC's.
728
730
        self._fallback_repositories.append(repository)
 
731
        # They are also seen by the fallback repository.  If it doesn't exist
 
732
        # yet they'll be added then.
 
733
##        if self._real_repository is not None:
 
734
##            self._real_repository.add_fallback_repository(repository)
729
735
 
730
736
    def add_inventory(self, revid, inv, parents):
731
737
        self._ensure_real()
1285
1291
        self._repo_lock_token = None
1286
1292
        self._lock_count = 0
1287
1293
        self._leave_lock = False
1288
 
        self._setup_stacking()
 
1294
        ## self._setup_stacking()
1289
1295
 
1290
1296
    def _setup_stacking(self):
1291
1297
        # configure stacking into the remote repository, by reading it from
1393
1399
            self._ensure_real()
1394
1400
            return self._real_branch.get_stacked_on_url()
1395
1401
        else:
1396
 
            response = self._client.call('Branch.get_stacked_on_url',
1397
 
                self._remote_path())
 
1402
            try:
 
1403
                response = self._client.call('Branch.get_stacked_on_url',
 
1404
                    self._remote_path())
 
1405
            except errors.ErrorFromSmartServer, err:
 
1406
                self._translate_error(err)
1398
1407
            if response[0] != 'ok':
1399
1408
                raise errors.UnexpectedSmartServerResponse(response)
1400
1409
            return response[1]
1764
1773
        raise errors.DivergedBranches(find('branch'), find('other_branch'))
1765
1774
    elif err.error_verb == 'TipChangeRejected':
1766
1775
        raise errors.TipChangeRejected(err.error_args[0].decode('utf8'))
 
1776
    elif err.error_verb == 'UnstackableBranchFormat':
 
1777
        raise errors.UnstackableBranchFormat(*err.error_args)
 
1778
    elif err.error_verb == 'UnstackableRepositoryFormat':
 
1779
        raise errors.UnstackableRepositoryFormat(*err.error_args)
 
1780
    elif err.error_verb == 'NotStacked':
 
1781
        raise errors.NotStacked(branch=find('branch'))
1767
1782
    raise
1768
1783