~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bzrdir.py

  • Committer: Alexander Belchenko
  • Date: 2007-05-04 11:02:41 UTC
  • mto: This revision was merged to the branch mainline in revision 2495.
  • Revision ID: bialix@ukr.net-20070504110241-bgormskp9ihlft2r
don't bundle into standalone bzr.exe site.py (with their depends), and tools/doc_generate

Show diffs side-by-side

added added

removed removed

Lines of Context:
213
213
        t = get_transport(url)
214
214
        t.ensure_base()
215
215
 
 
216
    # TODO: Should take a Transport
216
217
    @classmethod
217
 
    def create(cls, base, format=None, possible_transports=None):
 
218
    def create(cls, base, format=None):
218
219
        """Create a new BzrDir at the url 'base'.
219
220
        
220
221
        This will call the current default formats initialize with base
222
223
 
223
224
        :param format: If supplied, the format of branch to create.  If not
224
225
            supplied, the default is used.
225
 
        :param possible_transports: If supplied, a list of transports that 
226
 
            can be reused to share a remote connection.
227
226
        """
228
227
        if cls is not BzrDir:
229
228
            raise AssertionError("BzrDir.create always creates the default"
230
229
                " format, not one of %r" % cls)
231
 
        t = get_transport(base, possible_transports)
 
230
        t = get_transport(base)
232
231
        t.ensure_base()
233
232
        if format is None:
234
233
            format = BzrDirFormat.get_default_format()
235
 
        return format.initialize(safe_unicode(base), possible_transports)
 
234
        return format.initialize(safe_unicode(base))
236
235
 
237
236
    def create_branch(self):
238
237
        """Create a branch in this BzrDir.
271
270
        
272
271
    @staticmethod
273
272
    def create_branch_convenience(base, force_new_repo=False,
274
 
                                  force_new_tree=None, format=None,
275
 
                                  possible_transports=None):
 
273
                                  force_new_tree=None, format=None):
276
274
        """Create a new BzrDir, Branch and Repository at the url 'base'.
277
275
 
278
276
        This is a convenience function - it will use an existing repository
294
292
        :param force_new_repo: If True a new repository is always created.
295
293
        :param force_new_tree: If True or False force creation of a tree or 
296
294
                               prevent such creation respectively.
297
 
        :param format: Override for the for the bzrdir format to create.
298
 
        :param possible_transports: An optional reusable transports list.
 
295
        :param format: Override for the for the bzrdir format to create
299
296
        """
300
297
        if force_new_tree:
301
298
            # check for non local urls
302
 
            t = get_transport(safe_unicode(base), possible_transports)
 
299
            t = get_transport(safe_unicode(base))
303
300
            if not isinstance(t, LocalTransport):
304
301
                raise errors.NotLocalUrl(base)
305
 
        bzrdir = BzrDir.create(base, format, possible_transports)
 
302
        bzrdir = BzrDir.create(base, format)
306
303
        repo = bzrdir._find_or_create_repository(force_new_repo)
307
304
        result = bzrdir.create_branch()
308
 
        if force_new_tree or (repo.make_working_trees() and
 
305
        if force_new_tree or (repo.make_working_trees() and 
309
306
                              force_new_tree is None):
310
307
            try:
311
308
                bzrdir.create_workingtree()
312
309
            except errors.NotLocalUrl:
313
310
                pass
314
311
        return result
315
 
 
 
312
        
316
313
    @staticmethod
317
314
    def create_repository(base, shared=False, format=None):
318
315
        """Create a new BzrDir and Repository at the url 'base'.
1294
1291
        """
1295
1292
        raise NotImplementedError(self.get_converter)
1296
1293
 
1297
 
    def initialize(self, url, possible_transports=None):
 
1294
    def initialize(self, url):
1298
1295
        """Create a bzr control dir at this url and return an opened copy.
1299
1296
        
1300
1297
        Subclasses should typically override initialize_on_transport
1301
1298
        instead of this method.
1302
1299
        """
1303
 
        return self.initialize_on_transport(get_transport(url,
1304
 
                                                          possible_transports))
 
1300
        return self.initialize_on_transport(get_transport(url))
1305
1301
 
1306
1302
    def initialize_on_transport(self, transport):
1307
1303
        """Initialize a new bzrdir in the base directory of a Transport."""