コード例 #1
0
ファイル: __init__.py プロジェクト: emonty/glance
    def _base_entries(self, basepath):
        def iso8601_from_timestamp(timestamp):
            return datetime.datetime.utcfromtimestamp(timestamp)\
                                    .isoformat()

        for path in self.get_all_regular_files(basepath):
            filename = os.path.basename(path)
            try:
                image_id = int(filename)
            except ValueError, TypeError:
                continue

            entry = {}
            entry['id'] = image_id
            entry['path'] = path
            entry['name'] = utils.get_xattr(path, 'image_name',
                                            default='UNKNOWN')

            mtime = os.path.getmtime(path)
            entry['last_modified'] = iso8601_from_timestamp(mtime)

            atime = os.path.getatime(path)
            entry['last_accessed'] = iso8601_from_timestamp(atime)

            entry['size'] = os.path.getsize(path)

            entry['expected_size'] = utils.get_xattr(
                    path, 'expected_size', default='UNKNOWN')

            yield entry
コード例 #2
0
    def _base_entries(self, basepath):
        def iso8601_from_timestamp(timestamp):
            return datetime.datetime.utcfromtimestamp(timestamp)\
                                    .isoformat()

        for path in self.get_all_regular_files(basepath):
            filename = os.path.basename(path)
            try:
                image_id = int(filename)
            except ValueError, TypeError:
                continue

            entry = {}
            entry['id'] = image_id
            entry['path'] = path
            entry['name'] = utils.get_xattr(path,
                                            'image_name',
                                            default='UNKNOWN')

            mtime = os.path.getmtime(path)
            entry['last_modified'] = iso8601_from_timestamp(mtime)

            atime = os.path.getatime(path)
            entry['last_accessed'] = iso8601_from_timestamp(atime)

            entry['size'] = os.path.getsize(path)

            entry['expected_size'] = utils.get_xattr(path,
                                                     'expected_size',
                                                     default='UNKNOWN')

            yield entry
コード例 #3
0
ファイル: __init__.py プロジェクト: ntt-pf-lab/backup_glance
    def _base_entries(self, basepath):
        def iso8601_from_timestamp(timestamp):
            return datetime.datetime.utcfromtimestamp(timestamp).isoformat()

        for path in self.get_all_regular_files(basepath):
            filename = os.path.basename(path)
            try:
                image_id = int(filename)
            except ValueError, TypeError:
                continue

            entry = {}
            entry["id"] = image_id
            entry["path"] = path
            entry["name"] = utils.get_xattr(path, "image_name", default="UNKNOWN")

            mtime = os.path.getmtime(path)
            entry["last_modified"] = iso8601_from_timestamp(mtime)

            atime = os.path.getatime(path)
            entry["last_accessed"] = iso8601_from_timestamp(atime)

            entry["size"] = os.path.getsize(path)

            entry["expected_size"] = utils.get_xattr(path, "expected_size", default="UNKNOWN")

            yield entry
コード例 #4
0
ファイル: __init__.py プロジェクト: Oneiroi/glance
    def get_hit_count(self, image_id):
        """
        Return the number of hits that an image has

        :param image_id: Opaque image identifier
        """
        path = self.path_for_image(image_id)
        return int(utils.get_xattr(path, 'hits', default=0))
コード例 #5
0
ファイル: __init__.py プロジェクト: emonty/glance
 def entries(self):
     """Cache info for currently cached images"""
     for entry in self._base_entries(self.path):
         path = entry['path']
         entry['hits'] = utils.get_xattr(path, 'hits', default='UNKNOWN')
         yield entry
コード例 #6
0
ファイル: __init__.py プロジェクト: emonty/glance
 def invalid_entries(self):
     """Cache info for invalid cached images"""
     for entry in self._base_entries(self.invalid_path):
         path = entry['path']
         entry['error'] = utils.get_xattr(path, 'error', default='UNKNOWN')
         yield entry
コード例 #7
0
 def entries(self):
     """Cache info for currently cached images"""
     for entry in self._base_entries(self.path):
         path = entry['path']
         entry['hits'] = utils.get_xattr(path, 'hits', default='UNKNOWN')
         yield entry
コード例 #8
0
 def invalid_entries(self):
     """Cache info for invalid cached images"""
     for entry in self._base_entries(self.invalid_path):
         path = entry['path']
         entry['error'] = utils.get_xattr(path, 'error', default='UNKNOWN')
         yield entry
コード例 #9
0
ファイル: __init__.py プロジェクト: ntt-pf-lab/backup_glance
 def entries(self):
     """Cache info for currently cached images"""
     for entry in self._base_entries(self.path):
         path = entry["path"]
         entry["hits"] = utils.get_xattr(path, "hits", default="UNKNOWN")
         yield entry
コード例 #10
0
ファイル: __init__.py プロジェクト: ntt-pf-lab/backup_glance
 def invalid_entries(self):
     """Cache info for invalid cached images"""
     for entry in self._base_entries(self.invalid_path):
         path = entry["path"]
         entry["error"] = utils.get_xattr(path, "error", default="UNKNOWN")
         yield entry