Revision ace7592b snf-pithos-backend/pithos/backends/modular.py

b/snf-pithos-backend/pithos/backends/modular.py
209 209
                  'MATCH_PREFIX', 'MATCH_EXACT']:
210 210
            setattr(self, x, getattr(self.db_module, x))
211 211

  
212
        self.ALLOWED =  ['read','write']
212
        self.ALLOWED = ['read', 'write']
213 213

  
214 214
        self.block_module = load_module(block_module)
215 215
        self.block_params = block_params
......
876 876
        from which the object gets its permissions from,
877 877
        along with a dictionary containing the permissions."""
878 878

  
879
        permissions_path = self._get_permissions_path_bulk(account,
880
                container,names)
879
        permissions_path = self._get_permissions_path_bulk(account, container,
880
                                                           names)
881 881
        access_objects = self.permissions.access_check_bulk(permissions_path,
882
                user)
882
                                                            user)
883 883
        #group_parents = access_objects['group_parents']
884 884
        nobject_permissions = {}
885 885
        for path in permissions_path:
......
897 897
        self._lookup_objects(permissions_path)
898 898
        return nobject_permissions
899 899

  
900

  
901 900
    @debug_method
902 901
    def get_object_permissions(self, user, account, container, name):
903 902
        """Return the action allowed on the object, the path
......
1660 1659
        # raise ValueError('Bad characters in permissions')
1661 1660
        pass
1662 1661

  
1663

  
1664 1662
    def _get_formatted_paths(self, paths):
1665 1663
        formatted = []
1666
        if len(paths) == 0 :
1664
        if len(paths) == 0:
1667 1665
            return formatted
1668 1666
        props = self.node.get_props(paths)
1669 1667
        if props:
1670 1668
            for prop in props:
1671 1669
                if prop[1].split(';', 1)[0].strip() in (
1672 1670
                        'application/directory', 'application/folder'):
1673
                    formatted.append((prop[0].rstrip('/') + '/', self.MATCH_PREFIX))
1671
                    formatted.append((prop[0].rstrip('/') + '/',
1672
                                      self.MATCH_PREFIX))
1674 1673
                formatted.append((prop[0], self.MATCH_EXACT))
1675 1674
        return formatted
1676 1675

  
......
1690 1689
                if node is not None:
1691 1690
                    props = self.node.version_lookup(node, inf, CLUSTER_NORMAL)
1692 1691
                if props is not None:
1693
                    if props[self.TYPE].split(';', 1)[0].strip() in ('application/directory', 'application/folder'):
1692
                    if props[self.TYPE].split(';', 1)[0].strip() in (
1693
                            'application/directory', 'application/folder'):
1694 1694
                        return p
1695 1695
        return None
1696 1696

  
......
1699 1699
        for name in names:
1700 1700
            path = '/'.join((account, container, name))
1701 1701
            formatted_paths.append(path)
1702
        permission_paths = self.permissions.access_inherit_bulk(formatted_paths)
1702
        permission_paths = self.permissions.access_inherit_bulk(
1703
            formatted_paths)
1703 1704
        permission_paths.sort()
1704 1705
        permission_paths.reverse()
1705 1706
        permission_paths_list = []
......
1718 1719
                for prop in props:
1719 1720
                    if prop[1].split(';', 1)[0].strip() in (
1720 1721
                            'application/directory', 'application/folder'):
1721
                        permission_paths_list.append((prop[0].rstrip('/') + '/',self.MATCH_PREFIX))
1722
                        permission_paths_list.append((
1723
                            prop[0].rstrip('/') + '/', self.MATCH_PREFIX))
1722 1724

  
1723 1725
        if len(permission_paths_list) > 0:
1724 1726
            return permission_paths_list

Also available in: Unified diff