From 9ba599ff326c01911d29c7eb422f0fe02342b502 Mon Sep 17 00:00:00 2001 From: jvoisin Date: Thu, 21 Jul 2011 15:13:20 +0200 Subject: Some cleanup --- lib/archive.py | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'lib') diff --git a/lib/archive.py b/lib/archive.py index caa0a32..5b43f11 100644 --- a/lib/archive.py +++ b/lib/archive.py @@ -24,12 +24,12 @@ class ZipStripper(parser.Generic_parser): self.zipin.close() return metadata + class TarStripper(parser.Generic_parser): def __init__(self, realname, filename, parser, editor, backup): super(TarStripper, self).__init__(realname, filename, parser, editor, backup) self.compression = '' - self.tarin = tarfile.open(self.filename, 'r' + self.compression) self.folder_list = [] def _remove(self, current_file): @@ -44,21 +44,21 @@ class TarStripper(parser.Generic_parser): return current_file def remove_all(self): - self.tarin = tarfile.open(self.filename, 'r' + self.compression) - self.tarout = tarfile.open(self.filename + parser.POSTFIX, + tarin = tarfile.open(self.filename, 'r' + self.compression) + tarout = tarfile.open(self.filename + parser.POSTFIX, 'w' + self.compression) - for current_file in self.tarin.getmembers(): - self.tarin.extract(current_file) + for current_file in tarin.getmembers(): + tarin.extract(current_file) if current_file.type is '0': #is current_file a regular file ? #no backup file class_file = mat.create_class_file(current_file.name, False) class_file.remove_all() - self.tarout.add(current_file.name, filter=self._remove) + tarout.add(current_file.name, filter=self._remove) mat.secure_remove(current_file.name) else: self.folder_list.insert(0, current_file.name) - self.tarin.close() - self.tarout.close() + tarin.close() + tarout.close() print self.folder_list self.remove_folder() @@ -85,9 +85,9 @@ class TarStripper(parser.Generic_parser): return True def is_clean(self): - self.tarin = tarfile.open(self.filename, 'r' + self.compression) - for current_file in self.tarin.getmembers(): - self.tarin.extract(current_file) + tarin = tarfile.open(self.filename, 'r' + self.compression) + for current_file in tarin.getmembers(): + tarin.extract(current_file) if current_file.type is '0': #is current_file a regular file ? #no backup file class_file = mat.create_class_file(current_file.name, False) @@ -100,14 +100,14 @@ class TarStripper(parser.Generic_parser): mat.secure_remove(current_file.name) else: self.folder_list.insert(0, current_file.name) - self.tarin.close() + tarin.close() self.remove_folder() return True def get_meta(self): - self.tarin = tarfile.open(self.filename, 'r' + self.compression) + tarin = tarfile.open(self.filename, 'r' + self.compression) metadata = {} - for current_file in self.tarin.getmembers(): + for current_file in tarin.getmembers(): if current_file.type is '0': if not self.is_file_clean(current_file):#if there is meta current_meta = {} @@ -117,11 +117,11 @@ class TarStripper(parser.Generic_parser): current_meta['uname'] = current_file.uname current_meta['gname'] = current_file.gname metadata[current_file.name] = current_meta + tarin.close() return metadata def remove_folder(self): - for folder in self.folder_list: #delete remainings folders - shutil.rmtree(folder) + [shutil.rmtree(folder) for folder in self.folder_list] self.folder_list = [] class GzipStripper(TarStripper): -- cgit v1.3