/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/transport/__init__.py

merge bzr.dev@3883

Show diffs side-by-side

added added

removed removed

Lines of Context:
84
84
def _get_transport_modules():
85
85
    """Return a list of the modules providing transports."""
86
86
    modules = set()
87
 
    for prefix, factory_list in transport_list_registry.iteritems():
 
87
    for prefix, factory_list in transport_list_registry.items():
88
88
        for factory in factory_list:
89
89
            if hasattr(factory, "_module_name"):
90
90
                modules.add(factory._module_name)
797
797
        cur = _CoalescedOffset(None, None, [])
798
798
        coalesced_offsets = []
799
799
 
 
800
        if max_size <= 0:
 
801
            # 'unlimited', but we actually take this to mean 100MB buffer limit
 
802
            max_size = 100*1024*1024
 
803
 
800
804
        for start, size in offsets:
801
805
            end = start + size
802
806
            if (last_end is not None
1035
1039
        implement it.
1036
1040
        """
1037
1041
        source = self.clone(from_relpath)
1038
 
        self.mkdir(to_relpath)
1039
1042
        target = self.clone(to_relpath)
 
1043
        target.mkdir('.')
 
1044
        source.copy_tree_to_transport(target)
 
1045
 
 
1046
    def copy_tree_to_transport(self, to_transport):
 
1047
        """Copy a subtree from one transport to another.
 
1048
 
 
1049
        self.base is used as the source tree root, and to_transport.base
 
1050
        is used as the target.  to_transport.base must exist (and be a
 
1051
        directory).
 
1052
        """
1040
1053
        files = []
1041
1054
        directories = ['.']
1042
1055
        while directories:
1043
1056
            dir = directories.pop()
1044
1057
            if dir != '.':
1045
 
                target.mkdir(dir)
1046
 
            for path in source.list_dir(dir):
 
1058
                to_transport.mkdir(dir)
 
1059
            for path in self.list_dir(dir):
1047
1060
                path = dir + '/' + path
1048
 
                stat = source.stat(path)
 
1061
                stat = self.stat(path)
1049
1062
                if S_ISDIR(stat.st_mode):
1050
1063
                    directories.append(path)
1051
1064
                else:
1052
1065
                    files.append(path)
1053
 
        source.copy_to(files, target)
 
1066
        self.copy_to(files, to_transport)
1054
1067
 
1055
1068
    def rename(self, rel_from, rel_to):
1056
1069
        """Rename a file or directory.
1574
1587
                    possible_transports.append(t_same_connection)
1575
1588
                return t_same_connection
1576
1589
 
1577
 
    for proto, factory_list in transport_list_registry.iteritems():
 
1590
    for proto, factory_list in transport_list_registry.items():
1578
1591
        if proto is not None and base.startswith(proto):
1579
1592
            transport, last_err = _try_transport_factories(base, factory_list)
1580
1593
            if transport: