mirror of
https://git.yoctoproject.org/poky
synced 2026-02-13 04:03:03 +01:00
wic: reimplement getting paths of used tools
So far every used tool have to have separate property and private attribute in the Disk class. This is too verbose, considering that there will be much more tools used. Reimplemented getting tools paths using custom __getattr__ method. This is much more compact and readable. (From OE-Core rev: d1a831a9870bc31e936eb480485b28f1ffc13080) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
051a3a61d8
commit
ff0bbdafa4
@@ -236,10 +236,6 @@ class Disk:
|
||||
self.imagepath = imagepath
|
||||
self.native_sysroot = native_sysroot
|
||||
self._partitions = None
|
||||
self._mdir = None
|
||||
self._mcopy = None
|
||||
self._mdel = None
|
||||
self._mdeltree = None
|
||||
self._partimages = {}
|
||||
|
||||
# find parted
|
||||
@@ -270,30 +266,16 @@ class Disk:
|
||||
|
||||
return self._partitions
|
||||
|
||||
def _prop(self, name):
|
||||
def __getattr__(self, name):
|
||||
"""Get path to the executable in a lazy way."""
|
||||
aname = "_%s" % name
|
||||
if getattr(self, aname) is None:
|
||||
setattr(self, aname, find_executable(name, self.paths))
|
||||
if not getattr(self, aname):
|
||||
raise WicError("Can't find executable {}".format(name))
|
||||
return getattr(self, aname)
|
||||
|
||||
@property
|
||||
def mdir(self):
|
||||
return self._prop('mdir')
|
||||
|
||||
@property
|
||||
def mcopy(self):
|
||||
return self._prop("mcopy")
|
||||
|
||||
@property
|
||||
def mdel(self):
|
||||
return self._prop("mdel")
|
||||
|
||||
@property
|
||||
def mdeltree(self):
|
||||
return self._prop("mdeltree")
|
||||
if name in ("mdir", "mcopy", "mdel", "mdeltree"):
|
||||
aname = "_%s" % name
|
||||
if aname not in self.__dict__:
|
||||
setattr(self, aname, find_executable(name, self.paths))
|
||||
if aname not in self.__dict__:
|
||||
raise WicError("Can't find executable {}".format(name))
|
||||
return self.__dict__[aname]
|
||||
return self.__dict__[name]
|
||||
|
||||
def _get_part_image(self, pnum):
|
||||
if pnum not in self.partitions:
|
||||
|
||||
Reference in New Issue
Block a user