libzypp 17.38.7
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

Public Attributes

TriBool keeppackages
Pathname path
std::string service
std::string targetDistro
DefaultIntegral< unsigned, defaultPriority > priority

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 100 of file RepoInfo.cc.

Constructor & Destructor Documentation

◆ Impl() [1/3]

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

Definition at line 102 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 116 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 122 of file RepoInfo.cc.

◆ setProbedType()

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

Definition at line 125 of file RepoInfo.cc.

◆ type()

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

Definition at line 131 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 140 of file RepoInfo.cc.

◆ baseUrl()

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

Definition at line 165 of file RepoInfo.cc.

◆ baseUrls() [1/2]

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

Definition at line 175 of file RepoInfo.cc.

◆ location()

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

Definition at line 180 of file RepoInfo.cc.

◆ resetMirrorUrls()

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

Definition at line 186 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 196 of file RepoInfo.cc.

◆ repoOrigins()

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

Definition at line 251 of file RepoInfo.cc.

◆ baseUrls() [2/2]

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

Definition at line 264 of file RepoInfo.cc.

◆ baseurl2dump()

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

Definition at line 267 of file RepoInfo.cc.

◆ gpgKeyUrls() [1/2]

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

Definition at line 271 of file RepoInfo.cc.

◆ gpgKeyUrls() [2/2]

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

Definition at line 274 of file RepoInfo.cc.

◆ repoStatusString()

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

Definition at line 277 of file RepoInfo.cc.

◆ contentKeywords()

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

Definition at line 286 of file RepoInfo.cc.

◆ addContent()

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

Definition at line 289 of file RepoInfo.cc.

◆ hasContent() [1/2]

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

Definition at line 292 of file RepoInfo.cc.

◆ hasContent() [2/2]

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

Definition at line 337 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 344 of file RepoInfo.cc.

◆ internalSetValidRepoSignature()

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

Definition at line 358 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 380 of file RepoInfo.cc.

◆ triBoolFromPath() [1/2]

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

Definition at line 386 of file RepoInfo.cc.

◆ triBoolFromPath() [2/2]

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

Definition at line 412 of file RepoInfo.cc.

◆ rawGpgCheck() [1/2]

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

Definition at line 423 of file RepoInfo.cc.

◆ rawRepoGpgCheck() [1/2]

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

Definition at line 424 of file RepoInfo.cc.

◆ rawPkgGpgCheck() [1/2]

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

Definition at line 425 of file RepoInfo.cc.

◆ rawGpgCheck() [2/2]

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

Definition at line 427 of file RepoInfo.cc.

◆ rawRepoGpgCheck() [2/2]

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

Definition at line 428 of file RepoInfo.cc.

◆ rawPkgGpgCheck() [2/2]

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

Definition at line 429 of file RepoInfo.cc.

◆ cfgGpgCheck()

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

Definition at line 431 of file RepoInfo.cc.

◆ cfgRepoGpgCheck()

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

Definition at line 433 of file RepoInfo.cc.

◆ cfgPkgGpgCheck()

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

Definition at line 435 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 447 of file RepoInfo.cc.

◆ setMirrorlistUrl()

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

Definition at line 450 of file RepoInfo.cc.

◆ setMetalinkUrl()

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

Definition at line 453 of file RepoInfo.cc.

◆ cfgMirrorlistUrl()

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

Config file writing needs to tell them appart.

Definition at line 457 of file RepoInfo.cc.

◆ cfgMetalinkUrl()

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

Config file writing needs to tell them appart.

Definition at line 460 of file RepoInfo.cc.

◆ metadataPath() [1/2]

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

Definition at line 469 of file RepoInfo.cc.

◆ packagesPath() [1/2]

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

Definition at line 472 of file RepoInfo.cc.

◆ usesAutoMetadataPaths()

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

Definition at line 483 of file RepoInfo.cc.

◆ metadataPath() [2/2]

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

Definition at line 486 of file RepoInfo.cc.

◆ systemPackagesPath()

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

Definition at line 493 of file RepoInfo.cc.

◆ packagesPath() [2/2]

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

Definition at line 500 of file RepoInfo.cc.

◆ predownloadPath()

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

Definition at line 505 of file RepoInfo.cc.

◆ clone()

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

clone for RWCOW_pointer

Definition at line 529 of file RepoInfo.cc.

◆ rwcowClone

Impl * rwcowClone ( const Impl * rhs)
friend

Member Data Documentation

◆ defaultPriority

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

Definition at line 119 of file RepoInfo.cc.

◆ noPriority

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

Definition at line 120 of file RepoInfo.cc.

◆ _rawGpgCheck

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

default gpgcheck behavior: Y/N/ZConf

Definition at line 418 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 419 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 420 of file RepoInfo.cc.

◆ _validRepoSignature

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

have signed and valid repo metadata

Definition at line 439 of file RepoInfo.cc.

◆ _type

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

Definition at line 440 of file RepoInfo.cc.

◆ _cfgMirrorlistUrl

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

Definition at line 443 of file RepoInfo.cc.

◆ _cfgMetalinkUrl

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

Definition at line 444 of file RepoInfo.cc.

◆ keeppackages

TriBool zypp::RepoInfo::Impl::keeppackages

Definition at line 464 of file RepoInfo.cc.

◆ path

Pathname zypp::RepoInfo::Impl::path

Definition at line 465 of file RepoInfo.cc.

◆ service

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

Definition at line 466 of file RepoInfo.cc.

◆ targetDistro

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

Definition at line 467 of file RepoInfo.cc.

◆ priority

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

Definition at line 510 of file RepoInfo.cc.

◆ _metadataPath

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

Definition at line 513 of file RepoInfo.cc.

◆ _packagesPath

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

Definition at line 514 of file RepoInfo.cc.

◆ _alternatePackagesPath

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

in case _packagesPath is not writable

Definition at line 515 of file RepoInfo.cc.

◆ _baseUrls

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

baseUrls as configured

Definition at line 517 of file RepoInfo.cc.

◆ _mirrorUrls

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

possible mirrors as fetched via mirrorlist or metalink

Definition at line 519 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 520 of file RepoInfo.cc.

◆ _repoOrigins

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

Definition at line 521 of file RepoInfo.cc.

◆ _keywords

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

Definition at line 523 of file RepoInfo.cc.

◆ _gpgKeyUrls

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

Definition at line 525 of file RepoInfo.cc.


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