Revert "Remove all attributes except those inherited from Hierarchy"

This reverts commit 4236005541347868627faeefb372d7287cf5e791.
This commit is contained in:
Eric Torres 2019-03-28 12:29:18 -07:00
parent a3fca71d21
commit 32b5ffec1a

View File

@ -19,12 +19,83 @@ class Snapshot(Hierarchy):
---------- ----------
* path (inherited from Hierarchy) * path (inherited from Hierarchy)
* name (inherited from Hierarchy) * name (inherited from Hierarchy)
* boot_dir
* etc_dir
* home_dir
* root_home_dir
""" """
def __init__(self, path): def __init__(self, path):
"""Default constructor for the Snapshot class.""" """Default constructor for the Snapshot class."""
super().__init__(path) super().__init__(path)
@property
def boot_dir(self):
"""Retrieve the /boot backup directory of this snapshot.
Example
-------
>>> s = Snapshot('backup/data/snapshot-new')
>>> s.boot_dir
PosixPath('backup/data/snapshot-new/boot/loader')
:rtype: path-like object
"""
return self.path / "boot" / "loader"
@property
def etc_dir(self):
"""Retrieve the /etc backup directory of this snapshot.
Example
-------
>>> s = Snapshot('backup/data/snapshot-new')
>>> s.etc_dir
PosixPath('backup/data/snapshot-new/etc')
:rtype: path-like object
"""
return self.path / "etc"
@property
def home_dir(self):
"""Retrieve the /home backup directory of this snapshot.
Example
-------
>>> s = Snapshot('backup/data/snapshot-new')
>>> s.home_dir
PosixPath('backup/data/snapshot-new/home')
:rtype: path-like object
"""
return self.path / "home"
@property
def pkg_dir(self):
"""Retrieve the package manager backup directory of this snapshot.
>>> s = Snapshot('backup/data/snapshot-new')
>>> s.pkg_dir
PosixPath('backup/data/snapshot-new/pkg')
:rtype: path-like object
"""
return self.path / "pkg"
@property
def root_home_dir(self):
"""Retrieve root's home directory of this snapshot.
Example
-------
>>> s = Snapshot('backup/data/snapshot-new')
>>> s.root_home_dir
PosixPath('backup/data/snapshot-new/root')
:rtype: path-like object
"""
return self.path / "root"
# ========== Functions ========== # ========== Functions ==========
if __name__ == "__main__": if __name__ == "__main__":