_rec_tag_linux_xattr = 7 # getfattr(1) setfattr(1)
-class MetadataAcquisitionError(Exception):
+class MetadataError(Exception):
+ pass
+
+
+class MetadataAcquireError(MetadataError):
# Thrown when unable to extract any given bit of metadata from a path.
pass
-class MetadataApplicationError(Exception):
+class MetadataApplyError(MetadataError):
# Thrown when unable to apply any given bit of metadata to a path.
pass
self._apply_linux_attr_rec(path, restore_numeric_ids=num_ids)
self._apply_linux_xattr_rec(path, restore_numeric_ids=num_ids)
except Exception, e:
- raise MetadataApplicationError(e)
+ raise MetadataApplyError(e)
def from_path(path, archive_path=None, save_symlinks=True):
result._add_linux_attr(path, st)
result._add_linux_xattr(path, st)
except Exception, e:
- raise MetadataAcquisitionError(e)
+ raise MetadataAcquireError(e)
return result
try:
m = from_path(p, archive_path=safe_path,
save_symlinks=save_symlinks)
- except MetadataAcquisitionError, e:
+ except MetadataAcquireError, e:
add_error(e)
if verbose:
try:
meta.apply_to_path(path=xpath,
restore_numeric_ids=restore_numeric_ids)
- except MetadataApplicationError, e:
+ except MetadataApplyError, e:
add_error(e)
all_dirs.sort(key = lambda x : len(x.path), reverse=True)
try:
dir.apply_to_path(path=xpath,
restore_numeric_ids=restore_numeric_ids)
- except MetadataApplicationError, e:
+ except MetadataApplyError, e:
add_error(e)
print >> sys.stderr, '=', meta.path
try:
meta.apply_to_path(restore_numeric_ids=restore_numeric_ids)
- except MetadataApplicationError, e:
+ except MetadataApplyError, e:
add_error(e)
all_dirs.sort(key = lambda x : len(x.path), reverse=True)
for dir in all_dirs:
try:
dir.apply_to_path(path=dir.path,
restore_numeric_ids=restore_numeric_ids)
- except MetadataApplicationError, e:
+ except MetadataApplyError, e:
add_error(e)
m = metadata.from_path(path, archive_path=path, save_symlinks=True)
WVPASSEQ(m.path, path)
subprocess.call(['chmod', '000', path])
- WVEXCEPT(metadata.MetadataAcquisitionError,
+ WVEXCEPT(metadata.MetadataAcquireError,
metadata.from_path,
path,
archive_path=path,
m = metadata.from_path(path, archive_path=path, save_symlinks=True)
WVPASSEQ(m.path, path)
subprocess.call(['chmod', '000', tmpdir])
- WVEXCEPT(metadata.MetadataApplicationError,
+ WVEXCEPT(metadata.MetadataApplyError,
m.apply_to_path, path)
subprocess.call(['chmod', '700', tmpdir])
finally:
WVPASSEQ(m.apply_to_path(path), None)
orig_uid = m.uid
m.uid = 0;
- WVEXCEPT(metadata.MetadataApplicationError,
+ WVEXCEPT(metadata.MetadataApplyError,
m.apply_to_path, path, restore_numeric_ids=True)
m.uid = orig_uid
m.gid = 0;
- WVEXCEPT(metadata.MetadataApplicationError,
+ WVEXCEPT(metadata.MetadataApplyError,
m.apply_to_path, path, restore_numeric_ids=True)
finally:
subprocess.call(['rm', '-rf', tmpdir])