diff options
Diffstat (limited to 'MAT/mutagenpowered.py')
| -rw-r--r-- | MAT/mutagenpowered.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/MAT/mutagenpowered.py b/MAT/mutagenpowered.py new file mode 100644 index 0000000..d44bbdb --- /dev/null +++ b/MAT/mutagenpowered.py | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | import parser | ||
| 2 | import shutil | ||
| 3 | |||
| 4 | |||
| 5 | class MutagenStripper(parser.GenericParser): | ||
| 6 | def __init__(self, filename, parser, mime, backup, **kwargs): | ||
| 7 | super(MutagenStripper, self).__init__(filename, parser, mime, backup, **kwargs) | ||
| 8 | self._create_mfile() | ||
| 9 | |||
| 10 | def _create_mfile(self): | ||
| 11 | raise NotImplemented | ||
| 12 | |||
| 13 | def is_clean(self): | ||
| 14 | return not self.mfile.tags | ||
| 15 | |||
| 16 | def remove_all(self): | ||
| 17 | if self.backup: | ||
| 18 | shutil.copy2(self.filename, self.output) | ||
| 19 | self.mfile.filename = self.output | ||
| 20 | else: | ||
| 21 | self.mfile.filename = self.filename | ||
| 22 | |||
| 23 | self.mfile.delete() | ||
| 24 | self.mfile.save() | ||
| 25 | return True | ||
| 26 | |||
| 27 | def get_meta(self): | ||
| 28 | ''' | ||
| 29 | Return the content of the metadata block is present | ||
| 30 | ''' | ||
| 31 | metadata = {} | ||
| 32 | if self.mfile.tags: | ||
| 33 | for key, value in self.mfile.tags: | ||
| 34 | metadata[key] = value | ||
| 35 | return metadata | ||
