summaryrefslogtreecommitdiffstats
path: root/mof
diff options
context:
space:
mode:
authorMichal Minar <miminar@redhat.com>2013-08-22 09:37:03 +0200
committerMichal Minar <miminar@redhat.com>2013-08-23 06:47:40 +0200
commit00d048f15816a319044f192d8a12e09b96f8bf72 (patch)
tree3273f7cd1a19dcbb21ea8f2b63e55ebb808d15ff /mof
parent1ad3a75d07f2b8d1d0518d76c83c3fb26540bdbe (diff)
downloadopenlmi-providers-00d048f15816a319044f192d8a12e09b96f8bf72.tar.gz
openlmi-providers-00d048f15816a319044f192d8a12e09b96f8bf72.tar.xz
openlmi-providers-00d048f15816a319044f192d8a12e09b96f8bf72.zip
software: added FindIdentity() function
Since disablement of SoftwareIdentity enumeration, there has been no way to search for particular package (using [WC]QL query for example). This serious limitation is now treated by this addition to LMI_SoftwareInstallationService.
Diffstat (limited to 'mof')
-rw-r--r--mof/60_LMI_Software.mof33
1 files changed, 33 insertions, 0 deletions
diff --git a/mof/60_LMI_Software.mof b/mof/60_LMI_Software.mof
index 49905c1..5c11ae2 100644
--- a/mof/60_LMI_Software.mof
+++ b/mof/60_LMI_Software.mof
@@ -636,6 +636,39 @@ class LMI_SoftwareInstallationService : CIM_SoftwareInstallationService {
" This is NULL in case that asynchronous job has been started.")]
LMI_SoftwareIdentityFileCheck REF Failed[]);
+ [Implemented(True), Description(
+ "Search for installed or available software identity matching"
+ " specified properties. In case \"Repository\" is given, only"
+ " available packages of this repository will be browsed."
+ " \"AllowDuplicates\" causes, that packages of the name <name>.<arch>"
+ " will be listed multiple times if more versions are available."
+ " Other input parameters with non-NULL values are compared to"
+ " corresponding properties of LMI_SoftwareIdentity instances."
+ " 0 is returned if any matching package is found, 1 otherwise.")]
+ uint32 FindIdentity(
+ [IN] string Name,
+ [IN] uint32 Epoch,
+ [IN] string Version,
+ [IN] string Release,
+ [IN] string Architecture,
+ [IN, Description(
+ "Allows to specify particular software repository, where the"
+ " search shall take place. If given, only available packages will"
+ " be browsed.")]
+ LMI_SoftwareIdentityResource REF Repository,
+ [IN, Description(
+ "Whether the different versions of the same package shall be"
+ " included in result. This defaults to \"False\".")]
+ boolean AllowDuplicates,
+ [IN, Description(
+ "Whether to compare \"Name\" for exact match. If \"False\", package"
+ " name and its summary string (\"Caption\") will be searched for"
+ " occurences of \"Name\" parameter's value. Defaults to \"True\".")]
+ boolean ExactMatch,
+ [IN(false), OUT, Description(
+ "All matching packages found shall be available in this parameter.")]
+ LMI_SoftwareIdentity REF Matches[]);
+
};
[Version("0.1.0")]