Go to the documentation of this file.
37 for_( it, query.begin(), query.end() )
39 ret_r.push_back( it.asString() );
74 bool foundBuildTime =
false;
80 bool fitsBuildtime = ( it->buildtime() ==
buildtime() );
83 bool lowerEdition = ( it->edition() <= found.
edition() );
84 if ( ( foundBuildTime && ( !fitsBuildtime || lowerEdition ) )
85 || ( !foundBuildTime && ( !fitsBuildtime && lowerEdition ) ) )
90 foundBuildTime =
true;
100 if ( ! refFile.empty() )
108 INT <<
"Product referenceFilename unexpectedly empty!" << endl;
112 WAR << *
this <<
": no reference package found: " << identCap << endl;
121 std::vector<constPtr> ret;
131 ret.push_back( make<Product>( *it ) );
140 ret.push_back( make<Product>( (*it).buddy() ) );
156 if ( ret.empty() ) ret =
name();
177 std::string capstr( cap->asString() );
181 capstr.erase( capstr.size()-1 );
187 return std::string();
195 std::list<std::string> ret;
218 std::vector<Repository::ContentIdentifier> ret;
224 ret.push_back( it.asString() );
234 if ( it.asString() == cident_r )
264 for (;url_it !=
url.end(); ++url_it, ++url_type_it)
267 if (url_type_it == url_type.
end())
269 ERR << *
this <<
" : The thing that should not happen, happened." << endl;
273 if ( url_type_it.
asString() == key_r )
std::string referenceFilename() const
For installed products the name of the corresponding /etc/products.d entry.
static const SolvAttr productShortlabel
CapabilitySet droplist() const
List of packages included in older versions of this product and now dropped.
Repository repository() const
std::string registerTarget() const
This is register.target attribute of a product.
const_iterator end() const
A Solvable object within the sat Pool.
static const SolvAttr productUpdates
array of repoids, hopefully label s too
Container of Solvable providing a Capability (read only).
Helper to iterate a products URL lists.
PoolItem poolItem() const
Access the corresponding PoolItem.
bool empty() const
Whether the query is empty.
String matching (STRING|SUBSTRING|GLOB|REGEX).
Solvable satSolvable() const
Return the corresponding sat::Solvable.
UrlList releaseNotesUrls() const
The URL to download the release notes for this product.
static const Match FILES
LookupAttr: match full path when matching in filelists, otherwise just the basenames.
static const SolvAttr productRegisterRelease
static const SolvAttr productProductLine
std::ostream & dumpRange(std::ostream &str, TIterator begin, TIterator end, const std::string &intro="{", const std::string &pfx="\n ", const std::string &sep="\n ", const std::string &sfx="\n", const std::string &extro="}")
Print range defined by iterators (multiline style).
const_iterator begin() const
Iterator pointing to the first Capability.
bool hasEndOfLife() const
Return whether an EndOfLife value is actually defined in the metadata.
iterator begin() const
Iterator to the begin of query results.
bool isTargetDistribution() const
This is the installed product that is also targeted by the /etc/products.d/baseproduct symlink.
UrlList smoltUrls() const
The URL for SMOLT.
Solvable inSolvable() const
The current Solvable.
std::string ContentIdentifier
static const SolvAttr productUrlType
std::vector< constPtr > ReplacedProducts
static const SolvAttr productEndOfLife
std::string registerFlavor() const
This is register.flavor attribute of a product.
const_iterator end() const
Iterator pointing behind the last Solvable.
std::string registerRelease() const
This is register.release attribute of an installed product.
UrlList extraUrls() const
Additional software for the product They are complementary, not alternatives.
static const ResKind product
std::vector< Repository::ContentIdentifier > updateContentIdentifier() const
ContentIdentifier of required update repositories.
const_iterator begin() const
const_iterator begin() const
Iterator pointing to the first Solvable.
bool hasUpdateContentIdentifier(const Repository::ContentIdentifier &cident_r) const
Whether cident_r is listed as required update repository.
static const SolvAttr productRegisterTarget
std::unordered_set< Capability > CapabilitySet
CapabilitySet valuesOfNamespace(const std::string &namespace_r) const
Return 'value[ op edition]' for namespaced provides 'namespace(value)[ op edition]'.
std::list< std::string > flags() const
The product flags.
std::string lookupStrAttribute(const SolvAttr &attr) const
UrlList urls(const std::string &key_r) const
Retrieve URLs flagged with key_r for this product.
Edition edition() const
The edition (version-release).
ReplacedProducts replacedProducts() const
Array of installed Products that would be replaced by installing this one.
static const SolvAttr productType
const_iterator end() const
Iterator pointing behind the last Capability.
std::string flavor() const
The product flavor (LiveCD Demo, FTP edition,...).
unsigned long long lookupNumAttribute(const SolvAttr &attr) const
static const SolvAttr productRegisterFlavor
std::string form(const char *format,...) __attribute__((format(printf
Printf style construction of std::string.
Easy-to use interface to the ZYPP dependency resolver.
static const SolvAttr productUrl
IMPL_PTR_TYPE(Application)
UrlList updateUrls() const
Online updates for the product.
Capabilities provides() const
Date endOfLife() const
The date when this Product goes out of support as indicated by it's medadata.
static const SolvAttr productUpdatesRepoid
std::string key() const
The key used to retrieve this list (for debug)
sat::Solvable buddy() const
Return the buddy we share our status object with.
std::string stripPrefix(const C_Str &str_r, const C_Str &prefix_r)
Strip a prefix_r from str_r and return the resulting string.
Container of installed Solvable which would be obsoleted by the Solvable passed to the ctor.
UrlList registerUrls() const
The URL for registration.
sat::Solvable referencePackage() const
The reference package providing the product metadata, if such a package exists.
const_iterator end() const
Iterator pointing behind the last Solvable.
std::ostream & operator<<(std::ostream &str, const Exception &obj)
Store and operate on date (time_t).
#define for_(IT, BEG, END)
Convenient for-loops using iterator.
static const SolvAttr filelist
UrlList optionalUrls() const
Optional software for the product.
std::string type() const
Get the product type Well, in an ideal world there is only one base product.
std::string productLine() const
Vendor specific string denoting the product line.
iterator end() const
Iterator behind the end of query results.
String related utilities and Regular expression matching.
bool hasPrefix(const C_Str &str_r, const C_Str &prefix_r)
Return whether str_r has prefix prefix_r.
PoolItem_iterator poolItemBegin() const
static const SolvAttr productFlags
void setStrMatcher(const StrMatcher &matcher_r)
Set the pattern to match.
PoolItem_iterator poolItemEnd() const
static const SolvAttr productReferenceFile
Base for resolvable objects.
Container of Capability (currently read only).
Lightweight attribute value lookup.
Product(const sat::Solvable &solvable_r)
Ctor.
const_iterator begin() const
Iterator pointing to the first Solvable.
std::string asString() const
This is an overloaded member function, provided for convenience. It differs from the above function o...
std::string shortName() const
Untranslated short name like SLES 10 (fallback: name)