libzypp  10.5.0
zypp::RepoInfo Class Reference

What is known about a repository. More...

#include <RepoInfo.h>

Inheritance diagram for zypp::RepoInfo:

List of all members.

Classes

struct  Impl
 RepoInfo implementation. More...

Public Types

typedef std::set< Urlurl_set
typedef url_set::size_type urls_size_type
typedef transform_iterator
< repo::RepoVariablesUrlReplacer,
url_set::const_iterator > 
urls_const_iterator

Public Member Functions

 RepoInfo ()
virtual ~RepoInfo ()
unsigned priority () const
 Repository priority for solver.
void setPriority (unsigned newval_r)
 Set repository priority for solver.
bool baseUrlsEmpty () const
 whether repository urls are available
bool baseUrlSet () const
 whether there are manualy configured repository urls
urls_size_type baseUrlsSize () const
 number of repository urls
urls_const_iterator baseUrlsBegin () const
 iterator that points at begin of repository urls
urls_const_iterator baseUrlsEnd () const
 iterator that points at end of repository urls
Url url () const
 Pars pro toto: The first repository url.
std::set< UrlbaseUrls () const
 A Url under which the metadata are located, or a set of mirrors.
void addBaseUrl (const Url &url)
 Add a base url.
void setBaseUrl (const Url &url)
 Clears current base URL list and adds url.
Pathname path () const
 Repository path.
void setPath (const Pathname &path)
 set the product path.
Url mirrorListUrl () const
 Url of a file which contains a list of Urls If empty, the base url will be used.
void setMirrorListUrl (const Url &url)
 Set mirror list url.
repo::RepoType type () const
 Type of repository,.
void setProbedType (const repo::RepoType &t) const
 This allows to adjust the RepoType lazy, from NONE to some probed value, even for const objects.
void setType (const repo::RepoType &t)
 set the repository type
Pathname metadataPath () const
 Path where this repo metadata was read from.
void setMetadataPath (const Pathname &path)
 set the path where the local metadata is stored
Pathname packagesPath () const
 Path where this repo packages are cached.
void setPackagesPath (const Pathname &path)
 set the path where the local packages are stored
bool gpgCheck () const
 Whether to check or not this repository with gpg.
void setGpgCheck (bool check)
 Whether to check or not this repository with gpg.
Url gpgKeyUrl () const
 Key to use for gpg checking of this repository.
void setGpgKeyUrl (const Url &gpgkey)
 Key to use for gpg checking of this repository.
bool keepPackages () const
 Whether packages downloaded from this repository will be kept in local cache.
void setKeepPackages (bool keep)
 Set if packaqes downloaded from this repository will be kept in local cache.
std::string service () const
 Gets name of the service to which this repository belongs or empty string if it has been added manually.
void setService (const std::string &name)
 sets service which added this repository
std::string targetDistribution () const
 Distribution for which is this repository meant.
void setTargetDistribution (const std::string &targetDistribution)
 Sets the distribution for which is this repository meant.
virtual std::ostream & dumpOn (std::ostream &str) const
 Write a human-readable representation of this RepoInfo object into the str stream.
virtual std::ostream & dumpAsIniOn (std::ostream &str) const
 Write this RepoInfo object into str in a .repo file format.
virtual std::ostream & dumpAsXMLOn (std::ostream &str) const
 Write an XML representation of this RepoInfo object.
virtual std::ostream & dumpAsXMLOn (std::ostream &str, const std::string &content) const
 Write an XML representation of this RepoInfo object.
Repository license
bool hasLicense () const
 Whether there is a license associated with the repo.
std::string getLicense (const Locale &lang_r=Locale())
 Return the best license for the current (or a specified) locale.
LocaleSet getLicenseLocales () const
 Return the locales the license is available for.

Static Public Member Functions

static unsigned defaultPriority ()
 The default priority (99).

Static Public Attributes

static const RepoInfo noRepo
 Represents no Repository (one with an empty alias).

Private Attributes

RWCOW_pointer< Impl_pimpl
 Pointer to implementation.

Friends

std::ostream & operator<< (std::ostream &str, const RepoInfo &obj)

Related Functions

(Note that these are not member functions.)

typedef shared_ptr< RepoInfoRepoInfo_Ptr
typedef shared_ptr< const
RepoInfo
RepoInfo_constPtr
typedef std::list< RepoInfoRepoInfoList
std::ostream & operator<< (std::ostream &str, const RepoInfo &obj)

Detailed Description

What is known about a repository.

The class RepoInfo represents everything that is known about a software repository.

It can be used to store information about known sources.

This class tries to be compatible with the concept of a .repo file used by YUM and also available in the openSUSE build service. See man yum.conf.

Example file

 [ruby]
 name=Ruby repository (openSUSE_10.2)
 type=rpm-md
 baseurl=http://software.opensuse.org/download/ruby/openSUSE_10.2/
 gpgcheck=1
 gpgkey=http://software.opensuse.org/openSUSE-Build-Service.asc
 enabled=1
 priority=10
Note:
A RepoInfo is a hint about how to create a Repository.

Definition at line 66 of file RepoInfo.h.


Member Typedef Documentation

typedef std::set<Url> zypp::RepoInfo::url_set

Definition at line 94 of file RepoInfo.h.

typedef url_set::size_type zypp::RepoInfo::urls_size_type

Definition at line 95 of file RepoInfo.h.

typedef transform_iterator<repo::RepoVariablesUrlReplacer, url_set::const_iterator> zypp::RepoInfo::urls_const_iterator

Definition at line 96 of file RepoInfo.h.


Constructor & Destructor Documentation

zypp::RepoInfo::RepoInfo ( )

Definition at line 144 of file RepoInfo.cc.

zypp::RepoInfo::~RepoInfo ( ) [virtual]

Definition at line 153 of file RepoInfo.cc.


Member Function Documentation

unsigned zypp::RepoInfo::defaultPriority ( ) [static]

The default priority (99).

Definition at line 161 of file RepoInfo.cc.

unsigned zypp::RepoInfo::priority ( ) const

Repository priority for solver.

Some number between 1 (highest priority) and 99 (defaultPriority).

Definition at line 158 of file RepoInfo.cc.

void zypp::RepoInfo::setPriority ( unsigned  newval_r)

Set repository priority for solver.

A newval_r of 0 sets the default priority.

See also:
priority.

Definition at line 164 of file RepoInfo.cc.

bool zypp::RepoInfo::baseUrlsEmpty ( ) const

whether repository urls are available

Definition at line 269 of file RepoInfo.cc.

bool zypp::RepoInfo::baseUrlSet ( ) const

whether there are manualy configured repository urls

Definition at line 272 of file RepoInfo.cc.

RepoInfo::urls_size_type zypp::RepoInfo::baseUrlsSize ( ) const

number of repository urls

Definition at line 266 of file RepoInfo.cc.

RepoInfo::urls_const_iterator zypp::RepoInfo::baseUrlsBegin ( ) const

iterator that points at begin of repository urls

Definition at line 252 of file RepoInfo.cc.

RepoInfo::urls_const_iterator zypp::RepoInfo::baseUrlsEnd ( ) const

iterator that points at end of repository urls

Definition at line 259 of file RepoInfo.cc.

Url zypp::RepoInfo::url ( ) const [inline]

Pars pro toto: The first repository url.

Definition at line 120 of file RepoInfo.h.

std::set< Url > zypp::RepoInfo::baseUrls ( ) const

A Url under which the metadata are located, or a set of mirrors.

This can't be empty in order the repository to be valid unless the download of the mirror list succeeds and it contains a valid url.

Deprecated:
IMO superfluous as we provide begin/end iterator.

Definition at line 231 of file RepoInfo.cc.

void zypp::RepoInfo::addBaseUrl ( const Url url)

Add a base url.

See also:
baseUrls
Parameters:
urlThe base url for the repository.

To recreate the base URLs list, use setBaseUrl(const Url &) followed by addBaseUrl().

Definition at line 176 of file RepoInfo.cc.

void zypp::RepoInfo::setBaseUrl ( const Url url)

Clears current base URL list and adds url.

Definition at line 179 of file RepoInfo.cc.

Pathname zypp::RepoInfo::path ( ) const

Repository path.

Pathname relative to the base Url where the product/repository is located

For media containing more than one product, or repositories not located at the root of the media it is important to know the path to the product directory relative to the media root. So a media verifier can be set for that media. You may also read it as baseUrl = url to mount and path = path on the mounted media.

It is not mandatory, and the default is /.

Note:
As a repository can have multiple Urls, the path is unique and the same for all Urls, so it is assumed all the Urls have the same media layout.

Definition at line 243 of file RepoInfo.cc.

void zypp::RepoInfo::setPath ( const Pathname &  path)

set the product path.

See also:
path()
Parameters:
paththe path to the product

Definition at line 185 of file RepoInfo.cc.

Url zypp::RepoInfo::mirrorListUrl ( ) const

Url of a file which contains a list of Urls If empty, the base url will be used.

Definition at line 225 of file RepoInfo.cc.

void zypp::RepoInfo::setMirrorListUrl ( const Url url)

Set mirror list url.

See also:
mirrorListUrl
Parameters:
urlThe base url for the list

Definition at line 170 of file RepoInfo.cc.

repo::RepoType zypp::RepoInfo::type ( ) const

Type of repository,.

Definition at line 222 of file RepoInfo.cc.

void zypp::RepoInfo::setProbedType ( const repo::RepoType t) const

This allows to adjust the RepoType lazy, from NONE to some probed value, even for const objects.

This is a NOOP if the current type is not NONE.

Definition at line 191 of file RepoInfo.cc.

void zypp::RepoInfo::setType ( const repo::RepoType t)

set the repository type

See also:
type
Parameters:
t

Definition at line 188 of file RepoInfo.cc.

Pathname zypp::RepoInfo::metadataPath ( ) const

Path where this repo metadata was read from.

Note:
could be an empty pathname for repo infos created in memory.

Definition at line 216 of file RepoInfo.cc.

void zypp::RepoInfo::setMetadataPath ( const Pathname &  path)

set the path where the local metadata is stored

The path to the metadata of this repository was defined, or empty if nowhere.

Parameters:
pathdirectory path

Definition at line 195 of file RepoInfo.cc.

Pathname zypp::RepoInfo::packagesPath ( ) const

Path where this repo packages are cached.

Definition at line 219 of file RepoInfo.cc.

void zypp::RepoInfo::setPackagesPath ( const Pathname &  path)

set the path where the local packages are stored

Parameters:
pathdirectory path

Definition at line 198 of file RepoInfo.cc.

bool zypp::RepoInfo::gpgCheck ( ) const

Whether to check or not this repository with gpg.

Note:
This is a just a hint to the application and can be ignored.

Definition at line 210 of file RepoInfo.cc.

void zypp::RepoInfo::setGpgCheck ( bool  check)

Whether to check or not this repository with gpg.

Parameters:
checktrue (check) or false (dont'check)
Note:
This is a just a hint to the application and can be ignored.

Definition at line 167 of file RepoInfo.cc.

Url zypp::RepoInfo::gpgKeyUrl ( ) const

Key to use for gpg checking of this repository.

Parameters:
urlUrl to the key in ASCII armored format
Note:
This is a just a hint to the application and can be ignored.

Definition at line 228 of file RepoInfo.cc.

void zypp::RepoInfo::setGpgKeyUrl ( const Url gpgkey)

Key to use for gpg checking of this repository.

Parameters:
urlUrl to the key in ASCII armored format
Note:
This is a just a hint to the application and can be ignored.

Definition at line 173 of file RepoInfo.cc.

bool zypp::RepoInfo::keepPackages ( ) const

Whether packages downloaded from this repository will be kept in local cache.

Definition at line 213 of file RepoInfo.cc.

void zypp::RepoInfo::setKeepPackages ( bool  keep)

Set if packaqes downloaded from this repository will be kept in local cache.

If the setting is true, all downloaded packages from this repository will be copied to the local raw cache.

Parameters:
keeptrue (keep the downloaded packages) or false (delete them after installation)

Definition at line 201 of file RepoInfo.cc.

std::string zypp::RepoInfo::service ( ) const

Gets name of the service to which this repository belongs or empty string if it has been added manually.

Definition at line 246 of file RepoInfo.cc.

void zypp::RepoInfo::setService ( const std::string &  name)

sets service which added this repository

Definition at line 204 of file RepoInfo.cc.

std::string zypp::RepoInfo::targetDistribution ( ) const

Distribution for which is this repository meant.

Definition at line 249 of file RepoInfo.cc.

void zypp::RepoInfo::setTargetDistribution ( const std::string &  targetDistribution)

Sets the distribution for which is this repository meant.

This is an in-memory value only, does not get written to the .repo file upon saving.

Definition at line 207 of file RepoInfo.cc.

bool zypp::RepoInfo::hasLicense ( ) const

Whether there is a license associated with the repo.

Definition at line 277 of file RepoInfo.cc.

std::string zypp::RepoInfo::getLicense ( const Locale lang_r = Locale())

Return the best license for the current (or a specified) locale.

Definition at line 286 of file RepoInfo.cc.

LocaleSet zypp::RepoInfo::getLicenseLocales ( ) const

Return the locales the license is available for.

Locale::noCode is included in case of license.txt which does not specify a specific locale.

Definition at line 328 of file RepoInfo.cc.

std::ostream & zypp::RepoInfo::dumpOn ( std::ostream &  str) const [virtual]

Write a human-readable representation of this RepoInfo object into the str stream.

Useful for logging.

Reimplemented from zypp::repo::RepoInfoBase.

Definition at line 365 of file RepoInfo.cc.

std::ostream & zypp::RepoInfo::dumpAsIniOn ( std::ostream &  str) const [virtual]

Write this RepoInfo object into str in a .repo file format.

Reimplemented from zypp::repo::RepoInfoBase.

Definition at line 402 of file RepoInfo.cc.

std::ostream & zypp::RepoInfo::dumpAsXMLOn ( std::ostream &  str) const [virtual]

Write an XML representation of this RepoInfo object.

Reimplemented from zypp::repo::RepoInfoBase.

Definition at line 442 of file RepoInfo.cc.

std::ostream & zypp::RepoInfo::dumpAsXMLOn ( std::ostream &  str,
const std::string &  content 
) const [virtual]

Write an XML representation of this RepoInfo object.

Parameters:
str
contentthis argument is ignored (used in other classed derived from RepoInfoBase.

Reimplemented from zypp::repo::RepoInfoBase.

Definition at line 445 of file RepoInfo.cc.


Friends And Related Function Documentation

typedef shared_ptr<RepoInfo> RepoInfo_Ptr [related]

Definition at line 363 of file RepoInfo.h.

typedef shared_ptr<const RepoInfo> RepoInfo_constPtr [related]

Definition at line 365 of file RepoInfo.h.

typedef std::list<RepoInfo> RepoInfoList [related]

Definition at line 367 of file RepoInfo.h.

std::ostream& operator<< ( std::ostream &  str,
const RepoInfo obj 
) [friend]

Definition at line 476 of file RepoInfo.cc.

std::ostream & operator<< ( std::ostream &  str,
const RepoInfo obj 
) [related]

Stream output

Definition at line 476 of file RepoInfo.cc.


Member Data Documentation

Represents no Repository (one with an empty alias).

Definition at line 75 of file RepoInfo.h.

Pointer to implementation.

Reimplemented from zypp::repo::RepoInfoBase.

Definition at line 355 of file RepoInfo.h.


The documentation for this class was generated from the following files: