libzypp  17.14.0
zypp::parser::RepoFileReader Class Reference

Read repository data from a .repo file. More...

#include <RepoFileReader.h>

Public Types

typedef function< bool(const RepoInfo &)> ProcessRepo
 Callback definition. More...
 

Public Member Functions

 RepoFileReader (const Pathname &repo_file, const ProcessRepo &callback, const ProgressData::ReceiverFnc &progress=ProgressData::ReceiverFnc())
 Constructor. More...
 
 RepoFileReader (const InputStream &is, const ProcessRepo &callback, const ProgressData::ReceiverFnc &progress=ProgressData::ReceiverFnc())
 Constructor. More...
 
 ~RepoFileReader ()
 Dtor. More...
 

Private Attributes

ProcessRepo _callback
 

Friends

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

Related Functions

(Note that these are not member functions.)

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

Detailed Description

Read repository data from a .repo file.

After each repo is read, a RepoInfo is prepared and _callback is called with the object passed in.

The _callback is provided on construction.

RepoFileReader reader(repo_file,
bind( &SomeClass::callbackfunc, &SomeClassInstance, _1, _2 ) );
Note
Multiple baseurls in a repo file are supported using this style:
baseurl=http://server.a/path/to/repo
http://server.b/path/to/repo
http://server.c/path/to/repo
Repeating the baseurl= tag on each line is also accepted, but when the file has to be written, the preferred style is used.

Definition at line 51 of file RepoFileReader.h.

Member Typedef Documentation

◆ ProcessRepo

Callback definition.

First parameter is a RepoInfo object with the resource second parameter is the resource type.

Return false from the callback to get a AbortRequestException to be thrown and the processing to be cancelled.

Definition at line 64 of file RepoFileReader.h.

Constructor & Destructor Documentation

◆ RepoFileReader() [1/2]

zypp::parser::RepoFileReader::RepoFileReader ( const Pathname repo_file,
const ProcessRepo callback,
const ProgressData::ReceiverFnc progress = ProgressData::ReceiverFnc() 
)

Constructor.

Creates the reader and start reading.

Parameters
repo_fileA valid .repo file
callbackCallback that will be called for each repository.
progressOptional progress function.
See also
ProgressData
Exceptions
AbortRequestExceptionIf the callback returns false
ExceptionIf a error occurs at reading / parsing

Definition at line 205 of file RepoFileReader.cc.

◆ RepoFileReader() [2/2]

zypp::parser::RepoFileReader::RepoFileReader ( const InputStream is,
const ProcessRepo callback,
const ProgressData::ReceiverFnc progress = ProgressData::ReceiverFnc() 
)

Constructor.

Creates the reader and start reading.

Parameters
isA valid input stream
callbackCallback that will be called for each repository.
progressOptional progress function.
See also
ProgressData
Exceptions
AbortRequestExceptionIf the callback returns false
ExceptionIf a error occurs at reading / parsing

Definition at line 213 of file RepoFileReader.cc.

◆ ~RepoFileReader()

zypp::parser::RepoFileReader::~RepoFileReader ( )

Dtor.

Definition at line 221 of file RepoFileReader.cc.

Friends And Related Function Documentation

◆ operator<< [1/2]

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

Definition at line 225 of file RepoFileReader.cc.

◆ operator<<() [2/2]

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

Stream output

Definition at line 225 of file RepoFileReader.cc.

Member Data Documentation

◆ _callback

ProcessRepo zypp::parser::RepoFileReader::_callback
private

Definition at line 105 of file RepoFileReader.h.


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