

def execute(self, ns, package_array, _allow_duplicates=False, _installed=False, _available=False, _repoid=None):
    if (_installed or _available):
        _installed = (not _available)
    else:
        _installed = None
    if (_installed is None):
        (yield ('NEVRA', 'Installed', 'Summary'))
    else:
        (yield ('NEVRA', 'Summary'))
    for pkg_spec in package_array:
        for pkg in software.find_package(ns, allow_duplicates=_allow_duplicates, exact_match=False, installed=_installed, pkg_spec=pkg_spec, repoid=_repoid):
            inst = pkg.to_instance()
            nevra = software.get_package_nevra(inst)
            if (_installed is None):
                (yield (nevra, ('Yes' if software.is_package_installed(inst) else 'No'), inst.Caption))
            else:
                (yield (nevra, inst.Caption))

dataset/ETHPy150Open openlmi/openlmi-scripts/commands/software/lmi/scripts/software/cmd.py Search.execute/original