Miscellaneous » zfs-replicate
Clone URL:  
Pushed to one repository · View In Graph Contained in tip

Refactor Zfs class methods to classmethods to match their use case

Changeset 0e3e1d9e18d2

Parent ddfb26309aa4

by Profile picture of User 912Tim Stewart <tim@fogcreek.com>

Changes to one file · Browse files at 0e3e1d9e18d2 Showing diff from parent ddfb26309aa4 Diff from another changeset...

Change 1 of 2 Show Entire File zfs-replicate Stacked
 
19
20
21
22
 
 
23
24
25
 
49
50
51
52
 
 
53
54
 
55
56
57
58
59
 
 
60
61
 
62
63
 
 
64
65
 
66
67
 
 
68
69
 
70
71
 
 
72
73
 
74
75
76
 
19
20
21
 
22
23
24
25
26
 
50
51
52
 
53
54
55
 
56
57
58
59
60
 
61
62
63
 
64
65
 
66
67
68
 
69
70
 
71
72
73
 
74
75
 
76
77
78
 
79
80
81
82
@@ -19,7 +19,8 @@
 class Zfs(object):   """This class represents the overall ZFS system.   - It can be used to get a list of all ZFS pools on the system.""" + It can be used to get a list of all ZFS pools and datasets on the + system."""     @classmethod   def _datasets(cls, dset_type, filter, cmd_prefix="", cmd_postfix=""): @@ -49,28 +50,33 @@
  raise NonZeroExitStatus(stderr.strip())   return (stdout, stderr)   - def pools(self): + @classmethod + def pools(cls):   """Return a list of ZFS pools.""" - stdout, stderr = Zfs._run_cmd('zpool list -Ho name') + stdout, stderr = cls._run_cmd('zpool list -Ho name')   stdout_lines = stdout.strip().splitlines()   def f(x): return Zpool(x)   return map(f, stdout_lines)   - def datasets(self, filter=".*", cmd_prefix=""): + @classmethod + def datasets(cls, filter=".*", cmd_prefix=""):   """Return a list of datasets in all pools.""" - return Zfs._datasets('all', filter, cmd_prefix) + return cls._datasets('all', filter, cmd_prefix)   - def filesystems(self, filter=".*", cmd_prefix=""): + @classmethod + def filesystems(cls, filter=".*", cmd_prefix=""):   """Return a list of all datasets that are filesystems in all pools.""" - return Zfs._datasets('filesystem', filter, cmd_prefix) + return cls._datasets('filesystem', filter, cmd_prefix)   - def snapshots(self, filter=".*", cmd_prefix=""): + @classmethod + def snapshots(cls, filter=".*", cmd_prefix=""):   """Return a list of all datasets that are snapshots in all pools.""" - return Zfs._datasets('snapshot', filter, cmd_prefix) + return cls._datasets('snapshot', filter, cmd_prefix)   - def volumes(self, filter=".*", cmd_prefix=""): + @classmethod + def volumes(cls, filter=".*", cmd_prefix=""):   """Return a list of all datasets that are volumes in all pools.""" - return Zfs._datasets('all', filter, cmd_prefix) + return cls._datasets('all', filter, cmd_prefix)      class Zpool(object):