/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: Andrew Bennetts
  • Date: 2008-04-02 00:14:00 UTC
  • mfrom: (3324 +trunk)
  • mto: This revision was merged to the branch mainline in revision 3756.
  • Revision ID: andrew.bennetts@canonical.com-20080402001400-r1pqse38i03dl97w
Merge from bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
62
62
        self._real_bzrdir = None
63
63
 
64
64
        if _client is None:
65
 
            self._shared_medium = transport.get_shared_medium()
66
 
            self._client = client._SmartClient(self._shared_medium)
 
65
            medium = transport.get_smart_medium()
 
66
            self._client = client._SmartClient(medium, transport.base)
67
67
        else:
68
68
            self._client = _client
69
 
            self._shared_medium = None
70
69
            return
71
70
 
72
71
        path = self._path_for_remote_call(self._client)
277
276
            self._real_repository = None
278
277
        self.bzrdir = remote_bzrdir
279
278
        if _client is None:
280
 
            self._client = client._SmartClient(self.bzrdir._shared_medium)
 
279
            self._client = remote_bzrdir._client
281
280
        else:
282
281
            self._client = _client
283
282
        self._format = format
361
360
        self._ensure_real()
362
361
        return self._real_repository._generate_text_key_index()
363
362
 
 
363
    @symbol_versioning.deprecated_method(symbol_versioning.one_four)
364
364
    def get_revision_graph(self, revision_id=None):
365
365
        """See Repository.get_revision_graph()."""
 
366
        return self._get_revision_graph(revision_id)
 
367
 
 
368
    def _get_revision_graph(self, revision_id):
 
369
        """Private method for using with old (< 1.2) servers to fallback."""
366
370
        if revision_id is None:
367
371
            revision_id = ''
368
372
        elif revision.is_null(revision_id):
831
835
 
832
836
    def _get_parent_map(self, keys):
833
837
        """Helper for get_parent_map that performs the RPC."""
834
 
        medium = self._client.get_smart_medium()
 
838
        medium = self._client._medium
835
839
        if not medium._remote_is_at_least_1_2:
836
840
            # We already found out that the server can't understand
837
841
            # Repository.get_parent_map requests, so just fetch the whole
838
842
            # graph.
 
843
            # XXX: Note that this will issue a deprecation warning. This is ok
 
844
            # :- its because we're working with a deprecated server anyway, and
 
845
            # the user will almost certainly have seen a warning about the
 
846
            # server version already.
839
847
            return self.get_revision_graph()
840
848
 
841
849
        keys = set(keys)
889
897
            # To avoid having to disconnect repeatedly, we keep track of the
890
898
            # fact the server doesn't understand remote methods added in 1.2.
891
899
            medium._remote_is_at_least_1_2 = False
892
 
            return self.get_revision_graph()
 
900
            return self._get_revision_graph(None)
893
901
        elif response[0][0] not in ['ok']:
894
902
            reponse[1].cancel_read_body()
895
903
            raise errors.UnexpectedSmartServerResponse(response[0])
1046
1054
        return self._real_repository.has_signature_for_revision_id(revision_id)
1047
1055
 
1048
1056
    def get_data_stream_for_search(self, search):
1049
 
        medium = self._client.get_smart_medium()
 
1057
        medium = self._client._medium
1050
1058
        if not medium._remote_is_at_least_1_2:
1051
1059
            self._ensure_real()
1052
1060
            return self._real_repository.get_data_stream_for_search(search)
1220
1228
        if _client is not None:
1221
1229
            self._client = _client
1222
1230
        else:
1223
 
            self._client = client._SmartClient(self.bzrdir._shared_medium)
 
1231
            self._client = remote_bzrdir._client
1224
1232
        self.repository = remote_repository
1225
1233
        if real_branch is not None:
1226
1234
            self._real_branch = real_branch