libzypp  17.38.8
zypp::RepoInfo::Impl Struct Reference

RepoInfo implementation. More...

Public Member Functions

 Impl ()
 
 Impl (const Impl &)=default
 
 Impl (Impl &&)=delete
 
Imploperator= (const Impl &)=delete
 
Imploperator= (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. More...
 
RepoVariablesReplacedUrl baseUrl () const
 
const RepoVariablesReplacedUrlListbaseUrls () const
 
Url location () const
 
void resetMirrorUrls () const
 
RepoVariablesReplacedUrlListmirrorUrls () const
 Fetch the repo mirrors from the server. More...
 
MirroredOriginSet repoOrigins () const
 
RepoVariablesReplacedUrlListbaseUrls ()
 
bool baseurl2dump () const
 
const RepoVariablesReplacedUrlListgpgKeyUrls () const
 
RepoVariablesReplacedUrlListgpgKeyUrls ()
 
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 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 RepoVariablesReplacedUrlmirrorListUrl () const
 THE mirrorListUrl to work with (either_cfgMirrorlistUrl or _cfgMetalinkUrl) More...
 
void setMirrorlistUrl (const Url &url_r)
 
void setMetalinkUrl (const Url &url_r)
 
const RepoVariablesReplacedUrlcfgMirrorlistUrl () const
 Config file writing needs to tell them appart. More...
 
const RepoVariablesReplacedUrlcfgMetalinkUrl () const
 Config file writing needs to tell them appart. More...
 
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. More...
 
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. More...
 
TriBool internalValidRepoSignature () const
 Signature check result needs to be stored/retrieved from _metadataPath. More...
 
void internalSetValidRepoSignature (TriBool value_r)
 
bool internalUnsignedConfirmed () const
 We definitely have a symlink pointing to "indeterminate" (for repoGpgCheckIsMandatory)? I.e. More...
 
bool triBoolFromPath (const Pathname &path_r, TriBool &ret_r) const
 
TriBool triBoolFromPath (const Pathname &path_r) const
 

Public Attributes

TriBool keeppackages
 
Pathname path
 
std::string service
 
std::string targetDistro
 
DefaultIntegral< unsigned, defaultPrioritypriority
 
std::map< std::string, std::string > _extraValues
 Basically raw .repo file key-value lines. More...
 

Static Public Attributes

static const unsigned defaultPriority = 99
 
static const unsigned noPriority = unsigned(-1)
 

Private Member Functions

Implclone () const
 clone for RWCOW_pointer More...
 

Private Attributes

TriBool _rawGpgCheck
 default gpgcheck behavior: Y/N/ZConf More...
 
TriBool _rawRepoGpgCheck
 need to check repo sign.: Y/N/(ZConf(Y/N/gpgCheck)) More...
 
TriBool _rawPkgGpgCheck
 need to check pkg sign.: Y/N/(ZConf(Y/N/gpgCheck)) More...
 
TriBool _validRepoSignature
 have signed and valid repo metadata More...
 
repo::RepoType _type
 
RepoVariablesReplacedUrl _cfgMirrorlistUrl
 
RepoVariablesReplacedUrl _cfgMetalinkUrl
 
Pathname _metadataPath
 
Pathname _packagesPath
 
std::optional< Pathname_alternatePackagesPath
 in case _packagesPath is not writable More...
 
RepoVariablesReplacedUrlList _baseUrls
 baseUrls as configured More...
 
RepoVariablesReplacedUrlList _mirrorUrls
 possible mirrors as fetched via mirrorlist or metalink More...
 
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

ImplrwcowClone (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 Function 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: