~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/transport/remote.py

Reconcile NEWS

Show diffs side-by-side

added added

removed removed

Lines of Context:
127
127
 
128
128
    def is_readonly(self):
129
129
        """Smart server transport can do read/write file operations."""
130
 
        resp = self._call2('Transport.is_readonly')
131
 
        if resp == ('yes', ):
132
 
            return True
133
 
        elif resp == ('no', ):
134
 
            return False
135
 
        elif (resp == ('error', "Generic bzr smart protocol error: "
136
 
                                "bad request 'Transport.is_readonly'") or
137
 
              resp == ('error', "Generic bzr smart protocol error: "
138
 
                                "bad request u'Transport.is_readonly'")):
 
130
        try:
 
131
            resp = self._call2('Transport.is_readonly')
 
132
        except errors.UnknownSmartMethod:
139
133
            # XXX: nasty hack: servers before 0.16 don't have a
140
134
            # 'Transport.is_readonly' verb, so we do what clients before 0.16
141
135
            # did: assume False.
142
136
            return False
 
137
        if resp == ('yes', ):
 
138
            return True
 
139
        elif resp == ('no', ):
 
140
            return False
143
141
        else:
144
142
            self._translate_error(resp)
145
143
        raise errors.UnexpectedSmartServerResponse(resp)