X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=python%2Fcumulus%2Fmetadata.py;h=af668c1a6229151520f39587b31ab356ab94bc91;hb=567bd6a883eaa54d10ca61d0b6083da09bf48085;hp=e5d55070f9c37c7b9c7eccda7b24b37d1eb9e0c2;hpb=f51789bfa9d0f6f9826b72f3c32ff89307ec3dc6;p=cumulus.git diff --git a/python/cumulus/metadata.py b/python/cumulus/metadata.py index e5d5507..af668c1 100644 --- a/python/cumulus/metadata.py +++ b/python/cumulus/metadata.py @@ -1,3 +1,21 @@ +# Cumulus: Efficient Filesystem Backup to the Cloud +# Copyright (C) 2008 The Cumulus Developers +# See the AUTHORS file for a list of contributors. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + """Advanced metadata iterator for Cumulus snapshots. Allow fast random access to Cumulus metadata logs. This requires that the @@ -5,6 +23,8 @@ underlying metadata log have been generated by a depth-first-search traversal of the filesystem, in sorted order. """ +from __future__ import division, print_function, unicode_literals + import cumulus class Metadata: @@ -27,7 +47,7 @@ class Metadata: lines = self._load(ref)[n:] try: - return cumulus.parse(lines, lambda l: len(l) == 0).next() + return next(cumulus.parse(lines, lambda l: len(l) == 0)) except StopIteration: return {} @@ -177,6 +197,6 @@ if __name__ == '__main__': metadata = Metadata(store, root) ptr = metadata.search(['home', 'mvrable', 'docs']) - print ptr - print metadata._read(ptr) + print(ptr) + print(metadata._read(ptr)) store.cleanup()