libzypp: zypp::RepoInfo::Impl Struct Reference

libzypp 17.38.11

zypp::RepoInfo::Impl Struct Reference

RepoInfo implementation. More...

## Public Member Functions
| Impl ()
| Impl (const Impl &)=default
| Impl (Impl &&)=delete
Impl & | operator= (const Impl &)=delete
Impl & | operator= (Impl &&)=delete
| ~Impl ()
void | setType (const repo::RepoType &t)
void | setProbedType (const repo::RepoType &t) const
repo::RepoType | type () const
Pathname | licenseTgz (const std::string &name_r) const
| Path to a license tarball in case it exists in the repo.
RepoVariablesReplacedUrl | baseUrl () const
const RepoVariablesReplacedUrlList & | baseUrls () const
Url | location () const
void | resetMirrorUrls () const
RepoVariablesReplacedUrlList & | mirrorUrls () const
| Fetch the repo mirrors from the server.
MirroredOriginSet | repoOrigins () const
RepoVariablesReplacedUrlList & | baseUrls ()
bool | baseurl2dump () const
const RepoVariablesReplacedUrlList & | gpgKeyUrls () const
RepoVariablesReplacedUrlList & | gpgKeyUrls ()
std::string | repoStatusString () const
const std::set< std::string > & | contentKeywords () const
void | addContent (const std::string &keyword_r)
bool | hasContent () const
bool | hasContent (const std::string &keyword_r) const
TriBool | internalValidRepoSignature () const
| Signature check result needs to be stored/retrieved from _metadataPath.
void | internalSetValidRepoSignature (TriBool value_r)
bool | internalUnsignedConfirmed () const
| We definitely have a symlink pointing to "indeterminate" (for repoGpgCheckIsMandatory)?
bool | triBoolFromPath (const Pathname &path_r, TriBool &ret_r) const
TriBool | triBoolFromPath (const Pathname &path_r) const
TriBool | rawGpgCheck () const
TriBool | rawRepoGpgCheck () const
TriBool | rawPkgGpgCheck () const
void | rawGpgCheck (TriBool val_r)
void | rawRepoGpgCheck (TriBool val_r)
void | rawPkgGpgCheck (TriBool val_r)
bool | cfgGpgCheck () const
TriBool | cfgRepoGpgCheck () const
TriBool | cfgPkgGpgCheck () const
const RepoVariablesReplacedUrl & | mirrorListUrl () const
| THE mirrorListUrl to work with (either_cfgMirrorlistUrl or _cfgMetalinkUrl).
void | setMirrorlistUrl (const Url &url_r)
void | setMetalinkUrl (const Url &url_r)
const RepoVariablesReplacedUrl & | cfgMirrorlistUrl () const
| Config file writing needs to tell them appart.
const RepoVariablesReplacedUrl & | cfgMetalinkUrl () const
| Config file writing needs to tell them appart.
void | metadataPath (Pathname new_r)
void | packagesPath (Pathname new_r)
bool | usesAutoMetadataPaths () const
Pathname | metadataPath () const
Pathname | systemPackagesPath () const
Pathname | packagesPath () const
Pathname | predownloadPath () const
TriBool | isBuiltinExtraValue (std::string_view key_r) const
| Return bool whether a dumpable key_r is known; indeterminate if the key must not be dumped.
bool | hasExtraValue (const std::string &key_r) const
std::string | extraValue (const std::string &key_r) const
bool | setExtraValue (const std::string &key_r, std::string value_r)
template<typename Fnc>
void | forDumpableExtraValues (Fnc &&fnc_r) const
| Filter discarding not dumpable extra values.

## Public Attributes
TriBool | keeppackages
Pathname | path
std::string | service
std::string | targetDistro
DefaultIntegral< unsigned, defaultPriority > | priority
std::map< std::string, std::string > | _extraValues
| Basically raw .repo file key-value lines.

## Static Public Attributes
static const unsigned | defaultPriority = 99
static const unsigned | noPriority = unsigned(-1)

## Private Member Functions
Impl * | clone () const
| clone for RWCOW_pointer

## Private Attributes
TriBool | _rawGpgCheck
| default gpgcheck behavior: Y/N/ZConf
TriBool | _rawRepoGpgCheck
| need to check repo sign.: Y/N/(ZConf(Y/N/gpgCheck))
TriBool | _rawPkgGpgCheck
| need to check pkg sign.: Y/N/(ZConf(Y/N/gpgCheck))
TriBool | _validRepoSignature
| have signed and valid repo metadata
repo::RepoType | _type
RepoVariablesReplacedUrl | _cfgMirrorlistUrl
RepoVariablesReplacedUrl | _cfgMetalinkUrl
Pathname | _metadataPath
Pathname | _packagesPath
std::optional< Pathname > | _alternatePackagesPath
| in case _packagesPath is not writable
RepoVariablesReplacedUrlList | _baseUrls
| baseUrls as configured
RepoVariablesReplacedUrlList | _mirrorUrls
| possible mirrors as fetched via mirrorlist or metalink
std::chrono::steady_clock::time_point | _lastMirrorUrlsUpdate = std::chrono::steady_clock::time_point::min()
std::vector< MirroredOrigin > | _repoOrigins
std::pair< FalseBool, std::set< std::string > > | _keywords
RepoVariablesReplacedUrlList | _gpgKeyUrls

## Friends
Impl * | rwcowClone (const Impl *rhs)

## Detailed Description

RepoInfo implementation.

Definition at line 104 of file RepoInfo.cc.

## Constructor & Destructor Documentation

## ◆ Impl() [1/3]

zypp::RepoInfo::Impl::Impl | ( |  | ) |
| inline

Definition at line 106 of file RepoInfo.cc.

## ◆ Impl() [2/3]

zypp::RepoInfo::Impl::Impl | ( | const Impl & |  | ) |
| default

## ◆ Impl() [3/3]

zypp::RepoInfo::Impl::Impl | ( | Impl && |  | ) |
| delete

## ◆ ~Impl()

zypp::RepoInfo::Impl::~Impl | ( |  | ) |
| inline

Definition at line 120 of file RepoInfo.cc.

## Member Function Documentation

## ◆ operator=() [1/2]

Impl & zypp::RepoInfo::Impl::operator= | ( | const Impl & |  | ) |
| delete

## ◆ operator=() [2/2]

Impl & zypp::RepoInfo::Impl::operator= | ( | Impl && |  | ) |
| delete

## ◆ setType()

void zypp::RepoInfo::Impl::setType | ( | const repo::RepoType & | t | ) |
| inline

Definition at line 126 of file RepoInfo.cc.

## ◆ setProbedType()

void zypp::RepoInfo::Impl::setProbedType | ( | const repo::RepoType & | t | ) | const
| inline

Definition at line 129 of file RepoInfo.cc.

## ◆ type()

repo::RepoType zypp::RepoInfo::Impl::type | ( |  | ) | const
| inline

Definition at line 135 of file RepoInfo.cc.

## ◆ licenseTgz()

Pathname zypp::RepoInfo::Impl::licenseTgz | ( | const std::string & | name_r | ) | const
| inline

Path to a license tarball in case it exists in the repo.

Definition at line 144 of file RepoInfo.cc.

## ◆ baseUrl()

RepoVariablesReplacedUrl zypp::RepoInfo::Impl::baseUrl | ( |  | ) | const
| inline

Definition at line 169 of file RepoInfo.cc.

## ◆ baseUrls() [1/2]

const RepoVariablesReplacedUrlList & zypp::RepoInfo::Impl::baseUrls | ( |  | ) | const
| inline

Definition at line 179 of file RepoInfo.cc.

## ◆ location()

Url zypp::RepoInfo::Impl::location | ( |  | ) | const
| inline

Definition at line 184 of file RepoInfo.cc.

## ◆ resetMirrorUrls()

void zypp::RepoInfo::Impl::resetMirrorUrls | ( |  | ) | const
| inline

Definition at line 190 of file RepoInfo.cc.

## ◆ mirrorUrls()

RepoVariablesReplacedUrlList & zypp::RepoInfo::Impl::mirrorUrls | ( |  | ) | const
| inline

Fetch the repo mirrors from the server.

Todo
  this should be a pipeline

Definition at line 200 of file RepoInfo.cc.

## ◆ repoOrigins()

MirroredOriginSet zypp::RepoInfo::Impl::repoOrigins | ( |  | ) | const
| inline

Definition at line 255 of file RepoInfo.cc.

## ◆ baseUrls() [2/2]

RepoVariablesReplacedUrlList & zypp::RepoInfo::Impl::baseUrls | ( |  | ) |
| inline

Definition at line 268 of file RepoInfo.cc.

## ◆ baseurl2dump()

bool zypp::RepoInfo::Impl::baseurl2dump | ( |  | ) | const
| inline

Definition at line 271 of file RepoInfo.cc.

## ◆ gpgKeyUrls() [1/2]

const RepoVariablesReplacedUrlList & zypp::RepoInfo::Impl::gpgKeyUrls | ( |  | ) | const
| inline

Definition at line 275 of file RepoInfo.cc.

## ◆ gpgKeyUrls() [2/2]

RepoVariablesReplacedUrlList & zypp::RepoInfo::Impl::gpgKeyUrls | ( |  | ) |
| inline

Definition at line 278 of file RepoInfo.cc.

## ◆ repoStatusString()

std::string zypp::RepoInfo::Impl::repoStatusString | ( |  | ) | const
| inline

Definition at line 281 of file RepoInfo.cc.

## ◆ contentKeywords()

const std::set< std::string > & zypp::RepoInfo::Impl::contentKeywords | ( |  | ) | const
| inline

Definition at line 290 of file RepoInfo.cc.

## ◆ addContent()

void zypp::RepoInfo::Impl::addContent | ( | const std::string & | keyword_r | ) |
| inline

Definition at line 293 of file RepoInfo.cc.

## ◆ hasContent() [1/2]

bool zypp::RepoInfo::Impl::hasContent | ( |  | ) | const
| inline

Definition at line 296 of file RepoInfo.cc.

## ◆ hasContent() [2/2]

bool zypp::RepoInfo::Impl::hasContent | ( | const std::string & | keyword_r | ) | const
| inline

Definition at line 341 of file RepoInfo.cc.

## ◆ internalValidRepoSignature()

TriBool zypp::RepoInfo::Impl::internalValidRepoSignature | ( |  | ) | const
| inline

Signature check result needs to be stored/retrieved from _metadataPath.

Don't call them from outside validRepoSignature/setValidRepoSignature

Definition at line 348 of file RepoInfo.cc.

## ◆ internalSetValidRepoSignature()

void zypp::RepoInfo::Impl::internalSetValidRepoSignature | ( | TriBool | value_r | ) |
| inline

Definition at line 362 of file RepoInfo.cc.

## ◆ internalUnsignedConfirmed()

bool zypp::RepoInfo::Impl::internalUnsignedConfirmed | ( |  | ) | const
| inline

We definitely have a symlink pointing to "indeterminate" (for repoGpgCheckIsMandatory)?

I.e. user accepted the unsigned repo in Downloader. A test whether internalValidRepoSignature is indeterminate would include not yet checked repos, which is unwanted here.

Definition at line 384 of file RepoInfo.cc.

## ◆ triBoolFromPath() [1/2]

bool zypp::RepoInfo::Impl::triBoolFromPath | ( | const Pathname & | path_r,
|  | TriBool & | ret_r ) const
| inline

Definition at line 390 of file RepoInfo.cc.

## ◆ triBoolFromPath() [2/2]

TriBool zypp::RepoInfo::Impl::triBoolFromPath | ( | const Pathname & | path_r | ) | const
| inline

Definition at line 416 of file RepoInfo.cc.

## ◆ rawGpgCheck() [1/2]

TriBool zypp::RepoInfo::Impl::rawGpgCheck | ( |  | ) | const
| inline

Definition at line 427 of file RepoInfo.cc.

## ◆ rawRepoGpgCheck() [1/2]

TriBool zypp::RepoInfo::Impl::rawRepoGpgCheck | ( |  | ) | const
| inline

Definition at line 428 of file RepoInfo.cc.

## ◆ rawPkgGpgCheck() [1/2]

TriBool zypp::RepoInfo::Impl::rawPkgGpgCheck | ( |  | ) | const
| inline

Definition at line 429 of file RepoInfo.cc.

## ◆ rawGpgCheck() [2/2]

void zypp::RepoInfo::Impl::rawGpgCheck | ( | TriBool | val_r | ) |
| inline

Definition at line 431 of file RepoInfo.cc.

## ◆ rawRepoGpgCheck() [2/2]

void zypp::RepoInfo::Impl::rawRepoGpgCheck | ( | TriBool | val_r | ) |
| inline

Definition at line 432 of file RepoInfo.cc.

## ◆ rawPkgGpgCheck() [2/2]

void zypp::RepoInfo::Impl::rawPkgGpgCheck | ( | TriBool | val_r | ) |
| inline

Definition at line 433 of file RepoInfo.cc.

## ◆ cfgGpgCheck()

bool zypp::RepoInfo::Impl::cfgGpgCheck | ( |  | ) | const
| inline

Definition at line 435 of file RepoInfo.cc.

## ◆ cfgRepoGpgCheck()

TriBool zypp::RepoInfo::Impl::cfgRepoGpgCheck | ( |  | ) | const
| inline

Definition at line 437 of file RepoInfo.cc.

## ◆ cfgPkgGpgCheck()

TriBool zypp::RepoInfo::Impl::cfgPkgGpgCheck | ( |  | ) | const
| inline

Definition at line 439 of file RepoInfo.cc.

## ◆ mirrorListUrl()

const RepoVariablesReplacedUrl & zypp::RepoInfo::Impl::mirrorListUrl | ( |  | ) | const
| inline

THE mirrorListUrl to work with (either_cfgMirrorlistUrl or _cfgMetalinkUrl).

Definition at line 451 of file RepoInfo.cc.

## ◆ setMirrorlistUrl()

void zypp::RepoInfo::Impl::setMirrorlistUrl | ( | const Url & | url_r | ) |
| inline

Definition at line 454 of file RepoInfo.cc.

## ◆ setMetalinkUrl()

void zypp::RepoInfo::Impl::setMetalinkUrl | ( | const Url & | url_r | ) |
| inline

Definition at line 457 of file RepoInfo.cc.

## ◆ cfgMirrorlistUrl()

const RepoVariablesReplacedUrl & zypp::RepoInfo::Impl::cfgMirrorlistUrl | ( |  | ) | const
| inline

Config file writing needs to tell them appart.

Definition at line 461 of file RepoInfo.cc.

## ◆ cfgMetalinkUrl()

const RepoVariablesReplacedUrl & zypp::RepoInfo::Impl::cfgMetalinkUrl | ( |  | ) | const
| inline

Config file writing needs to tell them appart.

Definition at line 464 of file RepoInfo.cc.

## ◆ metadataPath() [1/2]

void zypp::RepoInfo::Impl::metadataPath | ( | Pathname | new_r | ) |
| inline

Definition at line 473 of file RepoInfo.cc.

## ◆ packagesPath() [1/2]

void zypp::RepoInfo::Impl::packagesPath | ( | Pathname | new_r | ) |
| inline

Definition at line 476 of file RepoInfo.cc.

## ◆ usesAutoMetadataPaths()

bool zypp::RepoInfo::Impl::usesAutoMetadataPaths | ( |  | ) | const
| inline

Definition at line 487 of file RepoInfo.cc.

## ◆ metadataPath() [2/2]

Pathname zypp::RepoInfo::Impl::metadataPath | ( |  | ) | const
| inline

Definition at line 490 of file RepoInfo.cc.

## ◆ systemPackagesPath()

Pathname zypp::RepoInfo::Impl::systemPackagesPath | ( |  | ) | const
| inline

Definition at line 497 of file RepoInfo.cc.

## ◆ packagesPath() [2/2]

Pathname zypp::RepoInfo::Impl::packagesPath | ( |  | ) | const
| inline

Definition at line 504 of file RepoInfo.cc.

## ◆ predownloadPath()

Pathname zypp::RepoInfo::Impl::predownloadPath | ( |  | ) | const
| inline

Definition at line 509 of file RepoInfo.cc.

## ◆ isBuiltinExtraValue()

TriBool zypp::RepoInfo::Impl::isBuiltinExtraValue | ( | std::string_view | key_r | ) | const
| inline

Return bool whether a dumpable key_r is known; indeterminate if the key must not be dumped.

Keys containing a '=' are considered to be internal only and must not be dumped to an INI file or XML.

Definition at line 523 of file RepoInfo.cc.

## ◆ hasExtraValue()

bool zypp::RepoInfo::Impl::hasExtraValue | ( | const std::string & | key_r | ) | const
| inline

Definition at line 535 of file RepoInfo.cc.

## ◆ extraValue()

std::string zypp::RepoInfo::Impl::extraValue | ( | const std::string & | key_r | ) | const
| inline

Definition at line 538 of file RepoInfo.cc.

## ◆ setExtraValue()

bool zypp::RepoInfo::Impl::setExtraValue | ( | const std::string & | key_r,
|  | std::string | value_r )
| inline

Definition at line 541 of file RepoInfo.cc.

## ◆ forDumpableExtraValues()

template<typename Fnc>

void zypp::RepoInfo::Impl::forDumpableExtraValues | ( | Fnc && | fnc_r | ) | const
| inline

Filter discarding not dumpable extra values.

Definition at line 549 of file RepoInfo.cc.

## ◆ clone()

Impl * zypp::RepoInfo::Impl::clone | ( |  | ) | const
| inlineprivate

clone for RWCOW_pointer

Definition at line 584 of file RepoInfo.cc.

## Friends And Related Symbol Documentation

## ◆ rwcowClone

Impl * rwcowClone | ( | const Impl * | rhs | ) |
| friend

## Member Data Documentation

## ◆ defaultPriority

const unsigned zypp::RepoInfo::Impl::defaultPriority = 99
| static

Definition at line 123 of file RepoInfo.cc.

## ◆ noPriority

const unsigned zypp::RepoInfo::Impl::noPriority = unsigned(-1)
| static

Definition at line 124 of file RepoInfo.cc.

## ◆ _rawGpgCheck

TriBool zypp::RepoInfo::Impl::_rawGpgCheck
| private

default gpgcheck behavior: Y/N/ZConf

Definition at line 422 of file RepoInfo.cc.

## ◆ _rawRepoGpgCheck

TriBool zypp::RepoInfo::Impl::_rawRepoGpgCheck
| private

need to check repo sign.: Y/N/(ZConf(Y/N/gpgCheck))

Definition at line 423 of file RepoInfo.cc.

## ◆ _rawPkgGpgCheck

TriBool zypp::RepoInfo::Impl::_rawPkgGpgCheck
| private

need to check pkg sign.: Y/N/(ZConf(Y/N/gpgCheck))

Definition at line 424 of file RepoInfo.cc.

## ◆ _validRepoSignature

TriBool zypp::RepoInfo::Impl::_validRepoSignature
| private

have signed and valid repo metadata

Definition at line 443 of file RepoInfo.cc.

## ◆ _type

repo::RepoType zypp::RepoInfo::Impl::_type
| private

Definition at line 444 of file RepoInfo.cc.

## ◆ _cfgMirrorlistUrl

RepoVariablesReplacedUrl zypp::RepoInfo::Impl::_cfgMirrorlistUrl
| private

Definition at line 447 of file RepoInfo.cc.

## ◆ _cfgMetalinkUrl

RepoVariablesReplacedUrl zypp::RepoInfo::Impl::_cfgMetalinkUrl
| private

Definition at line 448 of file RepoInfo.cc.

## ◆ keeppackages

TriBool zypp::RepoInfo::Impl::keeppackages

Definition at line 468 of file RepoInfo.cc.

## ◆ path

Pathname zypp::RepoInfo::Impl::path

Definition at line 469 of file RepoInfo.cc.

## ◆ service

std::string zypp::RepoInfo::Impl::service

Definition at line 470 of file RepoInfo.cc.

## ◆ targetDistro

std::string zypp::RepoInfo::Impl::targetDistro

Definition at line 471 of file RepoInfo.cc.

## ◆ priority

DefaultIntegral<unsigned,defaultPriority> zypp::RepoInfo::Impl::priority

Definition at line 514 of file RepoInfo.cc.

## ◆ _extraValues

std::map<std::string,std::string> zypp::RepoInfo::Impl::_extraValues

Basically raw .repo file key-value lines.

Definition at line 517 of file RepoInfo.cc.

## ◆ _metadataPath

Pathname zypp::RepoInfo::Impl::_metadataPath
| private

Definition at line 568 of file RepoInfo.cc.

## ◆ _packagesPath

Pathname zypp::RepoInfo::Impl::_packagesPath
| private

Definition at line 569 of file RepoInfo.cc.

## ◆ _alternatePackagesPath

std::optional<Pathname> zypp::RepoInfo::Impl::_alternatePackagesPath
| private

in case _packagesPath is not writable

Definition at line 570 of file RepoInfo.cc.

## ◆ _baseUrls

RepoVariablesReplacedUrlList zypp::RepoInfo::Impl::_baseUrls
| mutableprivate

baseUrls as configured

Definition at line 572 of file RepoInfo.cc.

## ◆ _mirrorUrls

RepoVariablesReplacedUrlList zypp::RepoInfo::Impl::_mirrorUrls
| mutableprivate

possible mirrors as fetched via mirrorlist or metalink

Definition at line 574 of file RepoInfo.cc.

## ◆ _lastMirrorUrlsUpdate

std::chrono::steady_clock::time_point zypp::RepoInfo::Impl::_lastMirrorUrlsUpdate = std::chrono::steady_clock::time_point::min()
| mutableprivate

Definition at line 575 of file RepoInfo.cc.

## ◆ _repoOrigins

std::vector<MirroredOrigin> zypp::RepoInfo::Impl::_repoOrigins
| mutableprivate

Definition at line 576 of file RepoInfo.cc.

## ◆ _keywords

std::pair<FalseBool, std::set<std::string> > zypp::RepoInfo::Impl::_keywords
| mutableprivate

Definition at line 578 of file RepoInfo.cc.

## ◆ _gpgKeyUrls

RepoVariablesReplacedUrlList zypp::RepoInfo::Impl::_gpgKeyUrls
| private

Definition at line 580 of file RepoInfo.cc.

The documentation for this struct was generated from the following file:

- zypp/RepoInfo.cc